Type alias JetControl

JetControl: {
    accounts: [{
        name: "authority";
        type: {
            fields: [{
                name: "seed";
                type: {
                    array: ["u8", 1];
                };
            }];
            kind: "struct";
        };
    }];
    constants: [{
        name: "FEE_DESTINATION";
        type: {
            defined: "&[u8]";
        };
        value: "b\"margin-pool-fee-destination\"";
    }];
    events: [{
        fields: [{
            index: false;
            name: "authority";
            type: "publicKey";
        }, {
            index: false;
            name: "seed";
            type: "u8";
        }];
        name: "AuthorityCreated";
    }, {
        fields: [{
            index: false;
            name: "requester";
            type: "publicKey";
        }, {
            index: false;
            name: "authority";
            type: "publicKey";
        }, {
            index: false;
            name: "liquidatorMetadata";
            type: {
                defined: "LiquidatorMetadata";
            };
        }, {
            index: false;
            name: "metadataAccount";
            type: "publicKey";
        }];
        name: "LiquidatorSet";
    }, {
        fields: [{
            index: false;
            name: "requester";
            type: "publicKey";
        }, {
            index: false;
            name: "authority";
            type: "publicKey";
        }, {
            index: false;
            name: "adapter";
            type: {
                defined: "MarginAdapterMetadata";
            };
        }, {
            index: false;
            name: "metadataAccount";
            type: "publicKey";
        }];
        name: "AdapterRegistered";
    }, {
        fields: [{
            index: false;
            name: "requester";
            type: "publicKey";
        }, {
            index: false;
            name: "authority";
            type: "publicKey";
        }, {
            index: false;
            name: "metadataAccount";
            type: "publicKey";
        }, {
            index: false;
            name: "metadata";
            type: {
                defined: "TokenMetadata";
            };
        }];
        name: "TokenMetadataConfigured";
    }, {
        fields: [{
            index: false;
            name: "requester";
            type: "publicKey";
        }, {
            index: false;
            name: "authority";
            type: "publicKey";
        }, {
            index: false;
            name: "metadataAccount";
            type: "publicKey";
        }, {
            index: false;
            name: "metadata";
            type: {
                defined: "PositionTokenMetadata";
            };
        }];
        name: "PositionTokenMetadataConfigured";
    }];
    instructions: [{
        accounts: [{
            isMut: true;
            isSigner: false;
            name: "authority";
        }, {
            isMut: true;
            isSigner: true;
            name: "payer";
        }, {
            isMut: false;
            isSigner: false;
            name: "systemProgram";
        }];
        args: [];
        name: "createAuthority";
    }, {
        accounts: [{
            isMut: true;
            isSigner: true;
            name: "requester";
        }, {
            isMut: false;
            isSigner: false;
            name: "authority";
        }, {
            isMut: true;
            isSigner: false;
            name: "marginPool";
        }, {
            isMut: true;
            isSigner: false;
            name: "vault";
        }, {
            isMut: true;
            isSigner: false;
            name: "depositNoteMint";
        }, {
            isMut: true;
            isSigner: false;
            name: "loanNoteMint";
        }, {
            isMut: false;
            isSigner: false;
            name: "tokenMint";
        }, {
            isMut: true;
            isSigner: false;
            name: "tokenMetadata";
        }, {
            isMut: true;
            isSigner: false;
            name: "depositNoteMetadata";
        }, {
            isMut: true;
            isSigner: false;
            name: "loanNoteMetadata";
        }, {
            isMut: true;
            isSigner: false;
            name: "feeDestination";
        }, {
            isMut: false;
            isSigner: false;
            name: "marginPoolProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "metadataProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "tokenProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "systemProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "rent";
        }];
        args: [];
        name: "createMarginPool";
    }, {
        accounts: [{
            isMut: false;
            isSigner: true;
            name: "requester";
        }, {
            isMut: false;
            isSigner: false;
            name: "authority";
        }, {
            isMut: false;
            isSigner: false;
            name: "adapter";
        }, {
            isMut: true;
            isSigner: false;
            name: "metadataAccount";
        }, {
            isMut: true;
            isSigner: true;
            name: "payer";
        }, {
            isMut: false;
            isSigner: false;
            name: "metadataProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "systemProgram";
        }];
        args: [];
        name: "registerAdapter";
    }, {
        accounts: [{
            isMut: false;
            isSigner: true;
            name: "requester";
        }, {
            isMut: false;
            isSigner: false;
            name: "authority";
        }, {
            isMut: false;
            isSigner: false;
            name: "tokenMint";
        }, {
            isMut: true;
            isSigner: false;
            name: "marginPool";
        }, {
            isMut: true;
            isSigner: false;
            name: "tokenMetadata";
        }, {
            isMut: true;
            isSigner: false;
            name: "depositMetadata";
        }, {
            isMut: true;
            isSigner: false;
            name: "loanMetadata";
        }, {
            isMut: false;
            isSigner: false;
            name: "pythProduct";
        }, {
            isMut: false;
            isSigner: false;
            name: "pythPrice";
        }, {
            isMut: false;
            isSigner: false;
            name: "marginPoolProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "metadataProgram";
        }];
        args: [{
            name: "metadata";
            type: {
                option: {
                    defined: "TokenMetadataParams";
                };
            };
        }, {
            name: "poolConfig";
            type: {
                option: {
                    defined: "MarginPoolConfig";
                };
            };
        }];
        name: "configureMarginPool";
    }, {
        accounts: [{
            isMut: false;
            isSigner: true;
            name: "requester";
        }, {
            isMut: false;
            isSigner: false;
            name: "authority";
        }, {
            isMut: false;
            isSigner: false;
            name: "liquidator";
        }, {
            isMut: true;
            isSigner: false;
            name: "metadataAccount";
        }, {
            isMut: true;
            isSigner: true;
            name: "payer";
        }, {
            isMut: false;
            isSigner: false;
            name: "metadataProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "systemProgram";
        }];
        args: [{
            name: "isLiquidator";
            type: "bool";
        }];
        name: "setLiquidator";
    }];
    name: "jet_control";
    types: [{
        name: "TokenMetadataParams";
        type: {
            fields: [{
                name: "tokenKind";
                type: {
                    defined: "TokenKind";
                };
            }, {
                name: "collateralWeight";
                type: "u16";
            }, {
                name: "maxLeverage";
                type: "u16";
            }];
            kind: "struct";
        };
    }, {
        name: "MarginPoolParams";
        type: {
            fields: [{
                name: "feeDestination";
                type: "publicKey";
            }];
            kind: "struct";
        };
    }, {
        name: "TokenKind";
        type: {
            kind: "enum";
            variants: [{
                name: "NonCollateral";
            }, {
                name: "Collateral";
            }, {
                name: "Claim";
            }];
        };
    }, {
        name: "MarginPoolConfig";
        type: {
            fields: [{
                name: "flags";
                type: "u64";
            }, {
                name: "utilizationRate1";
                type: "u16";
            }, {
                name: "utilizationRate2";
                type: "u16";
            }, {
                name: "borrowRate0";
                type: "u16";
            }, {
                name: "borrowRate1";
                type: "u16";
            }, {
                name: "borrowRate2";
                type: "u16";
            }, {
                name: "borrowRate3";
                type: "u16";
            }, {
                name: "managementFeeRate";
                type: "u16";
            }, {
                name: "managementFeeCollectThreshold";
                type: "u64";
            }];
            kind: "struct";
        };
    }, {
        name: "LiquidatorMetadata";
        type: {
            fields: [{
                name: "liquidator";
                type: "publicKey";
            }];
            kind: "struct";
        };
    }, {
        name: "MarginAdapterMetadata";
        type: {
            fields: [{
                name: "adapterProgram";
                type: "publicKey";
            }];
            kind: "struct";
        };
    }, {
        name: "TokenMetadata";
        type: {
            fields: [{
                name: "tokenMint";
                type: "publicKey";
            }, {
                name: "pythPrice";
                type: "publicKey";
            }, {
                name: "pythProduct";
                type: "publicKey";
            }];
            kind: "struct";
        };
    }, {
        name: "PositionTokenMetadata";
        type: {
            fields: [{
                name: "positionTokenMint";
                type: "publicKey";
            }, {
                name: "underlyingTokenMint";
                type: "publicKey";
            }, {
                name: "adapterProgram";
                type: "publicKey";
            }, {
                name: "tokenKind";
                type: {
                    defined: "TokenKind";
                };
            }, {
                name: "valueModifer";
                type: "u16";
            }, {
                name: "maxStaleness";
                type: "u64";
            }];
            kind: "struct";
        };
    }];
    version: "0.1.0";
}

Type declaration

  • accounts: [{
        name: "authority";
        type: {
            fields: [{
                name: "seed";
                type: {
                    array: ["u8", 1];
                };
            }];
            kind: "struct";
        };
    }]
  • constants: [{
        name: "FEE_DESTINATION";
        type: {
            defined: "&[u8]";
        };
        value: "b\"margin-pool-fee-destination\"";
    }]
  • events: [{
        fields: [{
            index: false;
            name: "authority";
            type: "publicKey";
        }, {
            index: false;
            name: "seed";
            type: "u8";
        }];
        name: "AuthorityCreated";
    }, {
        fields: [{
            index: false;
            name: "requester";
            type: "publicKey";
        }, {
            index: false;
            name: "authority";
            type: "publicKey";
        }, {
            index: false;
            name: "liquidatorMetadata";
            type: {
                defined: "LiquidatorMetadata";
            };
        }, {
            index: false;
            name: "metadataAccount";
            type: "publicKey";
        }];
        name: "LiquidatorSet";
    }, {
        fields: [{
            index: false;
            name: "requester";
            type: "publicKey";
        }, {
            index: false;
            name: "authority";
            type: "publicKey";
        }, {
            index: false;
            name: "adapter";
            type: {
                defined: "MarginAdapterMetadata";
            };
        }, {
            index: false;
            name: "metadataAccount";
            type: "publicKey";
        }];
        name: "AdapterRegistered";
    }, {
        fields: [{
            index: false;
            name: "requester";
            type: "publicKey";
        }, {
            index: false;
            name: "authority";
            type: "publicKey";
        }, {
            index: false;
            name: "metadataAccount";
            type: "publicKey";
        }, {
            index: false;
            name: "metadata";
            type: {
                defined: "TokenMetadata";
            };
        }];
        name: "TokenMetadataConfigured";
    }, {
        fields: [{
            index: false;
            name: "requester";
            type: "publicKey";
        }, {
            index: false;
            name: "authority";
            type: "publicKey";
        }, {
            index: false;
            name: "metadataAccount";
            type: "publicKey";
        }, {
            index: false;
            name: "metadata";
            type: {
                defined: "PositionTokenMetadata";
            };
        }];
        name: "PositionTokenMetadataConfigured";
    }]
  • instructions: [{
        accounts: [{
            isMut: true;
            isSigner: false;
            name: "authority";
        }, {
            isMut: true;
            isSigner: true;
            name: "payer";
        }, {
            isMut: false;
            isSigner: false;
            name: "systemProgram";
        }];
        args: [];
        name: "createAuthority";
    }, {
        accounts: [{
            isMut: true;
            isSigner: true;
            name: "requester";
        }, {
            isMut: false;
            isSigner: false;
            name: "authority";
        }, {
            isMut: true;
            isSigner: false;
            name: "marginPool";
        }, {
            isMut: true;
            isSigner: false;
            name: "vault";
        }, {
            isMut: true;
            isSigner: false;
            name: "depositNoteMint";
        }, {
            isMut: true;
            isSigner: false;
            name: "loanNoteMint";
        }, {
            isMut: false;
            isSigner: false;
            name: "tokenMint";
        }, {
            isMut: true;
            isSigner: false;
            name: "tokenMetadata";
        }, {
            isMut: true;
            isSigner: false;
            name: "depositNoteMetadata";
        }, {
            isMut: true;
            isSigner: false;
            name: "loanNoteMetadata";
        }, {
            isMut: true;
            isSigner: false;
            name: "feeDestination";
        }, {
            isMut: false;
            isSigner: false;
            name: "marginPoolProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "metadataProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "tokenProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "systemProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "rent";
        }];
        args: [];
        name: "createMarginPool";
    }, {
        accounts: [{
            isMut: false;
            isSigner: true;
            name: "requester";
        }, {
            isMut: false;
            isSigner: false;
            name: "authority";
        }, {
            isMut: false;
            isSigner: false;
            name: "adapter";
        }, {
            isMut: true;
            isSigner: false;
            name: "metadataAccount";
        }, {
            isMut: true;
            isSigner: true;
            name: "payer";
        }, {
            isMut: false;
            isSigner: false;
            name: "metadataProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "systemProgram";
        }];
        args: [];
        name: "registerAdapter";
    }, {
        accounts: [{
            isMut: false;
            isSigner: true;
            name: "requester";
        }, {
            isMut: false;
            isSigner: false;
            name: "authority";
        }, {
            isMut: false;
            isSigner: false;
            name: "tokenMint";
        }, {
            isMut: true;
            isSigner: false;
            name: "marginPool";
        }, {
            isMut: true;
            isSigner: false;
            name: "tokenMetadata";
        }, {
            isMut: true;
            isSigner: false;
            name: "depositMetadata";
        }, {
            isMut: true;
            isSigner: false;
            name: "loanMetadata";
        }, {
            isMut: false;
            isSigner: false;
            name: "pythProduct";
        }, {
            isMut: false;
            isSigner: false;
            name: "pythPrice";
        }, {
            isMut: false;
            isSigner: false;
            name: "marginPoolProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "metadataProgram";
        }];
        args: [{
            name: "metadata";
            type: {
                option: {
                    defined: "TokenMetadataParams";
                };
            };
        }, {
            name: "poolConfig";
            type: {
                option: {
                    defined: "MarginPoolConfig";
                };
            };
        }];
        name: "configureMarginPool";
    }, {
        accounts: [{
            isMut: false;
            isSigner: true;
            name: "requester";
        }, {
            isMut: false;
            isSigner: false;
            name: "authority";
        }, {
            isMut: false;
            isSigner: false;
            name: "liquidator";
        }, {
            isMut: true;
            isSigner: false;
            name: "metadataAccount";
        }, {
            isMut: true;
            isSigner: true;
            name: "payer";
        }, {
            isMut: false;
            isSigner: false;
            name: "metadataProgram";
        }, {
            isMut: false;
            isSigner: false;
            name: "systemProgram";
        }];
        args: [{
            name: "isLiquidator";
            type: "bool";
        }];
        name: "setLiquidator";
    }]
  • name: "jet_control"
  • types: [{
        name: "TokenMetadataParams";
        type: {
            fields: [{
                name: "tokenKind";
                type: {
                    defined: "TokenKind";
                };
            }, {
                name: "collateralWeight";
                type: "u16";
            }, {
                name: "maxLeverage";
                type: "u16";
            }];
            kind: "struct";
        };
    }, {
        name: "MarginPoolParams";
        type: {
            fields: [{
                name: "feeDestination";
                type: "publicKey";
            }];
            kind: "struct";
        };
    }, {
        name: "TokenKind";
        type: {
            kind: "enum";
            variants: [{
                name: "NonCollateral";
            }, {
                name: "Collateral";
            }, {
                name: "Claim";
            }];
        };
    }, {
        name: "MarginPoolConfig";
        type: {
            fields: [{
                name: "flags";
                type: "u64";
            }, {
                name: "utilizationRate1";
                type: "u16";
            }, {
                name: "utilizationRate2";
                type: "u16";
            }, {
                name: "borrowRate0";
                type: "u16";
            }, {
                name: "borrowRate1";
                type: "u16";
            }, {
                name: "borrowRate2";
                type: "u16";
            }, {
                name: "borrowRate3";
                type: "u16";
            }, {
                name: "managementFeeRate";
                type: "u16";
            }, {
                name: "managementFeeCollectThreshold";
                type: "u64";
            }];
            kind: "struct";
        };
    }, {
        name: "LiquidatorMetadata";
        type: {
            fields: [{
                name: "liquidator";
                type: "publicKey";
            }];
            kind: "struct";
        };
    }, {
        name: "MarginAdapterMetadata";
        type: {
            fields: [{
                name: "adapterProgram";
                type: "publicKey";
            }];
            kind: "struct";
        };
    }, {
        name: "TokenMetadata";
        type: {
            fields: [{
                name: "tokenMint";
                type: "publicKey";
            }, {
                name: "pythPrice";
                type: "publicKey";
            }, {
                name: "pythProduct";
                type: "publicKey";
            }];
            kind: "struct";
        };
    }, {
        name: "PositionTokenMetadata";
        type: {
            fields: [{
                name: "positionTokenMint";
                type: "publicKey";
            }, {
                name: "underlyingTokenMint";
                type: "publicKey";
            }, {
                name: "adapterProgram";
                type: "publicKey";
            }, {
                name: "tokenKind";
                type: {
                    defined: "TokenKind";
                };
            }, {
                name: "valueModifer";
                type: "u16";
            }, {
                name: "maxStaleness";
                type: "u64";
            }];
            kind: "struct";
        };
    }]
  • version: "0.1.0"

Generated using TypeDoc