UNPKG

@frakters/nft-lending-v2

Version:

Client library for interacting with nft lenging solana program

615 lines (614 loc) 16.7 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.IDL = void 0; exports.IDL = { version: "0.0.0", name: "gem_bank", instructions: [ { name: "initBank", accounts: [ { name: "bank", isMut: true, isSigner: true, }, { name: "bankManager", isMut: false, isSigner: true, }, { name: "payer", isMut: true, isSigner: true, }, { name: "systemProgram", isMut: false, isSigner: false, }, ], args: [], }, { name: "setBankFlags", accounts: [ { name: "bank", isMut: true, isSigner: false, }, { name: "bankManager", isMut: false, isSigner: true, }, ], args: [ { name: "flags", type: "u32", }, ], }, { name: "initVault", accounts: [ { name: "bank", isMut: true, isSigner: false, }, { name: "vault", isMut: true, isSigner: false, }, { name: "creator", isMut: false, isSigner: true, }, { name: "payer", isMut: true, isSigner: true, }, { name: "systemProgram", isMut: false, isSigner: false, }, ], args: [ { name: "bump", type: "u8", }, { name: "owner", type: "publicKey", }, { name: "name", type: "string", }, ], }, { name: "setVaultLock", accounts: [ { name: "bank", isMut: false, isSigner: false, }, { name: "bankManager", isMut: false, isSigner: true, }, { name: "vault", isMut: true, isSigner: false, }, ], args: [ { name: "vaultLock", type: "bool", }, ], }, { name: "updateVaultOwner", accounts: [ { name: "bank", isMut: false, isSigner: false, }, { name: "vault", isMut: true, isSigner: false, }, { name: "owner", isMut: false, isSigner: true, }, ], args: [ { name: "newOwner", type: "publicKey", }, ], }, { name: "depositGem", accounts: [ { name: "bank", isMut: false, isSigner: false, }, { name: "vault", isMut: true, isSigner: false, }, { name: "owner", isMut: true, isSigner: true, }, { name: "authority", isMut: false, isSigner: false, }, { name: "gemBox", isMut: true, isSigner: false, }, { name: "gemDepositReceipt", isMut: true, isSigner: false, }, { name: "gemSource", isMut: true, isSigner: false, }, { name: "gemMint", isMut: false, isSigner: false, }, { name: "tokenProgram", isMut: false, isSigner: false, }, { name: "systemProgram", isMut: false, isSigner: false, }, { name: "rent", isMut: false, isSigner: false, }, ], args: [ { name: "bumpAuth", type: "u8", }, { name: "bumpGemBox", type: "u8", }, { name: "bumpGdr", type: "u8", }, { name: "amount", type: "u64", }, ], }, { name: "withdrawGem", accounts: [ { name: "bank", isMut: false, isSigner: false, }, { name: "vault", isMut: true, isSigner: false, }, { name: "owner", isMut: true, isSigner: true, }, { name: "authority", isMut: false, isSigner: false, }, { name: "gemBox", isMut: true, isSigner: false, }, { name: "gemDepositReceipt", isMut: true, isSigner: false, }, { name: "gemDestination", isMut: true, isSigner: false, }, { name: "gemMint", isMut: false, isSigner: false, }, { name: "receiver", isMut: true, isSigner: false, }, { name: "tokenProgram", isMut: false, isSigner: false, }, { name: "associatedTokenProgram", isMut: false, isSigner: false, }, { name: "systemProgram", isMut: false, isSigner: false, }, { name: "rent", isMut: false, isSigner: false, }, ], args: [ { name: "bumpAuth", type: "u8", }, { name: "bumpGemBox", type: "u8", }, { name: "bumpGdr", type: "u8", }, { name: "amount", type: "u64", }, ], }, { name: "addToWhitelist", accounts: [ { name: "bank", isMut: true, isSigner: false, }, { name: "bankManager", isMut: false, isSigner: true, }, { name: "addressToWhitelist", isMut: false, isSigner: false, }, { name: "whitelistProof", isMut: true, isSigner: false, }, { name: "payer", isMut: true, isSigner: true, }, { name: "systemProgram", isMut: false, isSigner: false, }, ], args: [ { name: "bump", type: "u8", }, { name: "whitelistType", type: "u8", }, ], }, { name: "removeFromWhitelist", accounts: [ { name: "bank", isMut: true, isSigner: false, }, { name: "bankManager", isMut: true, isSigner: true, }, { name: "addressToRemove", isMut: false, isSigner: false, }, { name: "whitelistProof", isMut: true, isSigner: false, }, ], args: [ { name: "bump", type: "u8", }, ], }, { name: "updateBankManager", accounts: [ { name: "bank", isMut: true, isSigner: false, }, { name: "bankManager", isMut: false, isSigner: true, }, ], args: [ { name: "newManager", type: "publicKey", }, ], }, { name: "recordRarityPoints", accounts: [ { name: "bank", isMut: false, isSigner: false, }, { name: "bankManager", isMut: false, isSigner: true, }, { name: "payer", isMut: true, isSigner: true, }, { name: "systemProgram", isMut: false, isSigner: false, }, ], args: [ { name: "rarityConfigs", type: { vec: { defined: "RarityConfig", }, }, }, ], }, ], accounts: [ { name: "bank", type: { kind: "struct", fields: [ { name: "version", type: "u16", }, { name: "bankManager", type: "publicKey", }, { name: "flags", type: "u32", }, { name: "whitelistedCreators", type: "u32", }, { name: "whitelistedMints", type: "u32", }, { name: "vaultCount", type: "u64", }, ], }, }, { name: "gemDepositReceipt", type: { kind: "struct", fields: [ { name: "vault", type: "publicKey", }, { name: "gemBoxAddress", type: "publicKey", }, { name: "gemMint", type: "publicKey", }, { name: "gemCount", type: "u64", }, ], }, }, { name: "rarity", type: { kind: "struct", fields: [ { name: "points", type: "u16", }, ], }, }, { name: "vault", type: { kind: "struct", fields: [ { name: "bank", type: "publicKey", }, { name: "owner", type: "publicKey", }, { name: "creator", type: "publicKey", }, { name: "authority", type: "publicKey", }, { name: "authoritySeed", type: "publicKey", }, { name: "authorityBumpSeed", type: { array: ["u8", 1], }, }, { name: "locked", type: "bool", }, { name: "name", type: { array: ["u8", 32], }, }, { name: "gemBoxCount", type: "u64", }, { name: "gemCount", type: "u64", }, { name: "rarityPoints", type: "u64", }, ], }, }, { name: "whitelistProof", type: { kind: "struct", fields: [ { name: "whitelistType", type: "u8", }, { name: "whitelistedAddress", type: "publicKey", }, { name: "bank", type: "publicKey", }, ], }, }, ], types: [ { name: "RarityConfig", type: { kind: "struct", fields: [ { name: "mint", type: "publicKey", }, { name: "rarityPoints", type: "u16", }, ], }, }, ], };