UNPKG

zebec-instant-card-sdk

Version:

An sdk for interacting with zebec instant card program in solana.

1,728 lines 58.1 kB
{ "version": "0.1.0", "name": "zebec_card_contract", "instructions": [ { "name": "initCardConfigs", "accounts": [ { "name": "zicOwner", "isMut": true, "isSigner": true }, { "name": "cardPda", "isMut": true, "isSigner": false }, { "name": "usdcToken", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "InitCardConfigParams" } } ] }, { "name": "deposit", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "userAta", "isMut": true, "isSigner": false }, { "name": "tokenMint", "isMut": false, "isSigner": false }, { "name": "userVault", "isMut": true, "isSigner": false }, { "name": "userVaultAta", "isMut": true, "isSigner": false }, { "name": "cardPda", "isMut": true, "isSigner": false }, { "name": "vaultPda", "isMut": true, "isSigner": false }, { "name": "revenueVault", "isMut": true, "isSigner": false }, { "name": "revenueVaultAta", "isMut": true, "isSigner": false }, { "name": "feeMapPda", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "DepositParams" } } ] }, { "name": "buyPrepaidDigitalCard", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "usdcToken", "isMut": false, "isSigner": false }, { "name": "userVault", "isMut": true, "isSigner": false }, { "name": "userVaultAta", "isMut": true, "isSigner": false }, { "name": "buyerPda", "isMut": true, "isSigner": false }, { "name": "cardPda", "isMut": true, "isSigner": false }, { "name": "cardVault", "isMut": true, "isSigner": false }, { "name": "cardVaultAta", "isMut": true, "isSigner": false }, { "name": "revenueVault", "isMut": true, "isSigner": false }, { "name": "commissionVault", "isMut": true, "isSigner": false }, { "name": "revenueVaultAta", "isMut": true, "isSigner": false }, { "name": "commissionVaultAta", "isMut": true, "isSigner": false }, { "name": "vaultPda", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "BuyPrepaidCardParams" } } ] }, { "name": "buyCardDirect", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "usdcToken", "isMut": false, "isSigner": false }, { "name": "userAta", "isMut": true, "isSigner": false }, { "name": "buyerPda", "isMut": true, "isSigner": false }, { "name": "cardPda", "isMut": true, "isSigner": false }, { "name": "cardVault", "isMut": true, "isSigner": false }, { "name": "cardVaultAta", "isMut": true, "isSigner": false }, { "name": "revenueVault", "isMut": true, "isSigner": false }, { "name": "revenueVaultAta", "isMut": true, "isSigner": false }, { "name": "vaultPda", "isMut": true, "isSigner": false }, { "name": "feeMapPda", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "BuyCardDirectParams" } } ] }, { "name": "generateYield", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "userVault", "isMut": true, "isSigner": false }, { "name": "userVaultAta", "isMut": true, "isSigner": false }, { "name": "flexlendUserAccount", "isMut": true, "isSigner": false }, { "name": "flexlendUserAta", "isMut": true, "isSigner": false }, { "name": "vaultPda", "isMut": true, "isSigner": false }, { "name": "reserveAdmin", "isMut": true, "isSigner": false }, { "name": "promotionReserve", "isMut": true, "isSigner": false }, { "name": "tokenMint", "isMut": false, "isSigner": false }, { "name": "flexlendProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "withdrawYield", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "userVault", "isMut": true, "isSigner": false }, { "name": "userVaultAta", "isMut": true, "isSigner": false }, { "name": "flexlendUserAccount", "isMut": true, "isSigner": false }, { "name": "reserveAdmin", "isMut": true, "isSigner": false }, { "name": "promotionReserve", "isMut": true, "isSigner": false }, { "name": "flexlendUserAta", "isMut": true, "isSigner": false }, { "name": "vaultPda", "isMut": true, "isSigner": false }, { "name": "tokenMint", "isMut": false, "isSigner": false }, { "name": "flexlendProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" }, { "name": "withdrawAll", "type": "bool" } ] }, { "name": "withdraw", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "userAta", "isMut": true, "isSigner": false }, { "name": "tokenMint", "isMut": false, "isSigner": false }, { "name": "userVault", "isMut": true, "isSigner": false }, { "name": "userVaultAta", "isMut": true, "isSigner": false }, { "name": "vaultPda", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "setCardConfigs", "accounts": [ { "name": "zicOwner", "isMut": true, "isSigner": true }, { "name": "cardPda", "isMut": true, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "SetCardConfigParams" } } ] }, { "name": "setCustomFees", "accounts": [ { "name": "zicOwner", "isMut": true, "isSigner": true }, { "name": "feeMapPda", "isMut": true, "isSigner": false }, { "name": "cardPda", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "vec": { "defined": "Fees" } } } ] }, { "name": "deleteCustomFees", "accounts": [ { "name": "zicOwner", "isMut": true, "isSigner": true }, { "name": "feeMapPda", "isMut": true, "isSigner": false }, { "name": "cardPda", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "vec": "publicKey" } } ] }, { "name": "initBotConfig", "accounts": [ { "name": "zicOwner", "isMut": true, "isSigner": true }, { "name": "cardBotConfig", "isMut": true, "isSigner": false }, { "name": "cardPda", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "InitBotConfigParams" } } ] }, { "name": "buyCardBot", "accounts": [ { "name": "botAdmin", "isMut": true, "isSigner": true }, { "name": "usdcToken", "isMut": false, "isSigner": false }, { "name": "userCustody", "isMut": true, "isSigner": false }, { "name": "userCustodyAta", "isMut": true, "isSigner": false }, { "name": "cardBotConfig", "isMut": true, "isSigner": false }, { "name": "cardPda", "isMut": true, "isSigner": false }, { "name": "cardVault", "isMut": true, "isSigner": false }, { "name": "cardVaultAta", "isMut": true, "isSigner": false }, { "name": "revenueVault", "isMut": true, "isSigner": false }, { "name": "revenueVaultAta", "isMut": true, "isSigner": false }, { "name": "feeMapPda", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "BuyCardBotParams" } } ] }, { "name": "initBotPda", "accounts": [ { "name": "botAdmin", "isMut": true, "isSigner": true }, { "name": "userCustody", "isMut": true, "isSigner": false }, { "name": "userCustodyAta", "isMut": true, "isSigner": false }, { "name": "cardBotConfig", "isMut": true, "isSigner": false }, { "name": "usdcToken", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "InitBotPdaParams" } } ] }, { "name": "setBotAdmin", "accounts": [ { "name": "zicOwner", "isMut": false, "isSigner": true }, { "name": "cardPda", "isMut": true, "isSigner": false }, { "name": "cardBotConfig", "isMut": true, "isSigner": false } ], "args": [ { "name": "newAdmin", "type": "publicKey" } ] }, { "name": "initOnRampConfig", "accounts": [ { "name": "zicOwner", "isMut": true, "isSigner": true }, { "name": "onRampConfig", "isMut": true, "isSigner": false }, { "name": "cardPda", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "InitOnRampParams" } } ] }, { "name": "initOnRampPda", "accounts": [ { "name": "admin", "isMut": true, "isSigner": true }, { "name": "userCustody", "isMut": true, "isSigner": false }, { "name": "onRampConfig", "isMut": false, "isSigner": false }, { "name": "userCustodyAta", "isMut": true, "isSigner": false }, { "name": "zbcnToken", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "InitOnRampPdaParams" } } ] }, { "name": "setOnRampAdmin", "accounts": [ { "name": "zicOwner", "isMut": false, "isSigner": true }, { "name": "cardPda", "isMut": true, "isSigner": false }, { "name": "onRampConfig", "isMut": true, "isSigner": false } ], "args": [ { "name": "newAdmin", "type": "publicKey" } ] }, { "name": "transferZbcn", "accounts": [ { "name": "admin", "isMut": true, "isSigner": true }, { "name": "from", "isMut": true, "isSigner": false }, { "name": "fromAta", "isMut": true, "isSigner": false }, { "name": "to", "isMut": false, "isSigner": false }, { "name": "toAta", "isMut": true, "isSigner": false }, { "name": "onRampConfig", "isMut": true, "isSigner": false }, { "name": "zbcnToken", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "TransferZbcnParams" } } ] }, { "name": "initProposalConfigs", "accounts": [ { "name": "zicOwner", "isMut": true, "isSigner": true }, { "name": "proposalConfig", "isMut": true, "isSigner": false }, { "name": "cardPda", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "InitProposalConfigParams" } } ] }, { "name": "initProposal", "accounts": [ { "name": "creator", "isMut": true, "isSigner": true }, { "name": "creatorAta", "isMut": true, "isSigner": false }, { "name": "proposalConfig", "isMut": true, "isSigner": false }, { "name": "proposal", "isMut": true, "isSigner": false }, { "name": "proposalVault", "isMut": true, "isSigner": false }, { "name": "proposalVaultAta", "isMut": true, "isSigner": false }, { "name": "zbcnToken", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "InitProposalParams" } } ] }, { "name": "vote", "accounts": [ { "name": "voter", "isMut": true, "isSigner": true }, { "name": "voterAta", "isMut": true, "isSigner": false }, { "name": "voterPda", "isMut": true, "isSigner": false }, { "name": "proposal", "isMut": true, "isSigner": false }, { "name": "proposalVault", "isMut": true, "isSigner": false }, { "name": "proposalVaultAta", "isMut": true, "isSigner": false }, { "name": "proposalConfig", "isMut": true, "isSigner": false }, { "name": "creator", "isMut": false, "isSigner": false }, { "name": "zbcnToken", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "params", "type": { "defined": "VoteParams" } } ] }, { "name": "withdrawVote", "accounts": [ { "name": "voter", "isMut": true, "isSigner": true }, { "name": "creator", "isMut": false, "isSigner": false }, { "name": "proposalConfig", "isMut": true, "isSigner": false }, { "name": "voterAta", "isMut": true, "isSigner": false }, { "name": "voterPda", "isMut": true, "isSigner": false }, { "name": "proposalVault", "isMut": true, "isSigner": false }, { "name": "proposalVaultAta", "isMut": true, "isSigner": false }, { "name": "proposal", "isMut": true, "isSigner": false }, { "name": "zbcnToken", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [] } ], "accounts": [ { "name": "CardBot", "type": { "kind": "struct", "fields": [ { "name": "botAdmin", "type": "publicKey" } ] } }, { "name": "CardCustodyData", "type": { "kind": "struct", "fields": [ { "name": "userId", "type": "string" }, { "name": "totalBoughtPerDay", "type": "u64" }, { "name": "dateTimeInUnix", "type": "u64" } ] } }, { "name": "Card", "type": { "kind": "struct", "fields": [ { "name": "index", "type": "u64" }, { "name": "zicOwner", "type": "publicKey" }, { "name": "nativeFee", "type": "u64" }, { "name": "nonNativeFee", "type": "u64" }, { "name": "revenueFee", "type": "u64" }, { "name": "usdcMint", "type": "publicKey" }, { "name": "revenueVault", "type": "publicKey" }, { "name": "commissionVault", "type": "publicKey" }, { "name": "cardVault", "type": "publicKey" }, { "name": "totalBought", "type": "u64" }, { "name": "dailyCardBuyLimit", "type": "u64" }, { "name": "providerConfig", "type": { "defined": "ProviderConfig" } } ] } }, { "name": "CustomFeeMap", "type": { "kind": "struct", "fields": [ { "name": "feeMap", "type": { "vec": { "defined": "Fees" } } } ] } }, { "name": "OnRamp", "type": { "kind": "struct", "fields": [ { "name": "admin", "type": "publicKey" }, { "name": "zbcnToken", "type": "publicKey" } ] } }, { "name": "OnRampCustody", "type": { "kind": "struct", "fields": [ { "name": "userId", "type": "string" } ] } }, { "name": "PrepaidCardBuyer", "type": { "kind": "struct", "fields": [ { "name": "index", "type": "u64" }, { "name": "buyerAddress", "type": "publicKey" }, { "name": "amount", "type": "u64" }, { "name": "purchaseAt", "type": "i64" } ] } }, { "name": "ProposalConfigs", "type": { "kind": "struct", "fields": [ { "name": "stakingToken", "type": "publicKey" }, { "name": "creatorStakingCap", "type": "u64" }, { "name": "votersStakingCap", "type": "u64" } ] } }, { "name": "Proposal", "type": { "kind": "struct", "fields": [ { "name": "creator", "type": "publicKey" }, { "name": "name", "type": "string" }, { "name": "startTime", "type": "i64" }, { "name": "endTime", "type": "i64" }, { "name": "totalVotes", "type": "u64" } ] } }, { "name": "Vault", "type": { "kind": "struct", "fields": [ { "name": "userAddress", "type": "publicKey" }, { "name": "totalBoughtPerDay", "type": "u64" }, { "name": "dateTimeInUnix", "type": "u64" } ] } }, { "name": "Voter", "type": { "kind": "struct", "fields": [ { "name": "voterAddress", "type": "publicKey" }, { "name": "proposalAddress", "type": "publicKey" }, { "name": "votingAmount", "type": "u64" }, { "name": "voteStatus", "type": "bool" }, { "name": "voterFlag", "type": "bool" }, { "name": "isWithdrawn", "type": "bool" } ] } } ], "types": [ { "name": "BuyCardBotParams", "type": { "kind": "struct", "fields": [ { "name": "userId", "type": "string" }, { "name": "amount", "type": "u64" }, { "name": "cardType", "type": "string" }, { "name": "sourceTokenAddress", "type": "publicKey" } ] } }, { "name": "InitBotConfigParams", "type": { "kind": "struct", "fields": [ { "name": "botAdmin", "type": "publicKey" } ] } }, { "name": "InitBotPdaParams", "type": { "kind": "struct", "fields": [ { "name": "userId", "type": "string" } ] } }, { "name": "InitProposalConfigParams", "type": { "kind": "struct", "fields": [ { "name": "stakingToken", "type": "publicKey" }, { "name": "creatorStakingCap", "type": "u64" }, { "name": "votersStakingCap", "type": "u64" } ] } }, { "name": "InitProposalParams", "type": { "kind": "struct", "fields": [ { "name": "name", "type": "string" }, { "name": "votingStartTime", "type": "i64" }, { "name": "votingEndTime", "type": "i64" } ] } }, { "name": "VoteParams", "type": { "kind": "struct", "fields": [ { "name": "voteStatus", "type": "bool" }, { "name": "votingAmount", "type": "u64" } ] } }, { "name": "InitOnRampParams", "type": { "kind": "struct", "fields": [ { "name": "admin", "type": "publicKey" }, { "name": "zbcnToken", "type": "publicKey" } ] } }, { "name": "InitOnRampPdaParams", "type": { "kind": "struct", "fields": [ { "name": "userId", "type": "string" } ] } }, { "name": "TransferZbcnParams", "type": { "kind": "struct", "fields": [ { "name": "amount", "type": "u64" }, { "name": "userId", "type": "string" } ] } }, { "name": "BuyCardDirectParams", "type": { "kind": "struct", "fields": [ { "name": "index", "type": "u64" }, { "name": "amount", "type": "u64" }, { "name": "cardType", "type": "string" }, { "name": "sourceTokenAddress", "type": "publicKey" } ] } }, { "name": "BuyPrepaidCardParams", "type": { "kind": "struct", "fields": [ { "name": "index", "type": "u64" }, { "name": "amount", "type": "u64" }, { "name": "cardType", "type": "string" } ] } }, { "name": "DepositParams", "type": { "kind": "struct", "fields": [ { "name": "amount", "type": "u64" }, { "name": "sourceTokenAddress", "type": "publicKey" } ] } }, { "name": "InitCardConfigParams", "type": { "kind": "struct", "fields": [ { "name": "nativeFee", "type": "u64" }, { "name": "nonNativeFee", "type": "u64" }, { "name": "revenueFee", "type": "u64" }, { "name": "cardVault", "type": "publicKey" }, { "name": "revenueVault", "type": "publicKey" }, { "name": "commissionVault", "type": "publicKey" }, { "name": "minCardAmount", "type": "u64" }, { "name": "maxCardAmount", "type": "u64" }, { "name": "dailyCardBuyLimit", "type": "u64" }, { "name": "feeTier", "type": { "vec": { "defined": "FeeTier" } } } ] } }, { "name