UNPKG

@frakt-protocol/frakt-sdk

Version:

Frakt SDK for interacting with frakt.xyz protocols

1,544 lines (1,543 loc) 44.9 kB
{ "version": "0.1.0", "name": "community_pools_anchor", "instructions": [ { "name": "initPool", "accounts": [ { "name": "communityPool", "isMut": true, "isSigner": true }, { "name": "authority", "isMut": true, "isSigner": true }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "fractionMint", "isMut": true, "isSigner": true }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "communityPoolsAuthority", "isMut": true, "isSigner": false } ], "args": [ { "name": "bumpPoolsAuth", "type": "u8" } ] }, { "name": "addToWhitelist", "accounts": [ { "name": "authority", "isMut": true, "isSigner": true }, { "name": "poolWhitelist", "isMut": true, "isSigner": true }, { "name": "communityPool", "isMut": true, "isSigner": false }, { "name": "whitelistedAddress", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "isCreator", "type": "bool" } ] }, { "name": "activatePool", "accounts": [ { "name": "communityPool", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": true, "isSigner": true }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "depositNft", "accounts": [ { "name": "safetyDepositBox", "isMut": true, "isSigner": true }, { "name": "nftUserTokenAccount", "isMut": true, "isSigner": false }, { "name": "nftMint", "isMut": false, "isSigner": false }, { "name": "storeNftTokenAccount", "isMut": true, "isSigner": true }, { "name": "communityPool", "isMut": true, "isSigner": false }, { "name": "communityPoolsAuthority", "isMut": true, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": true }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "fractionMint", "isMut": true, "isSigner": false }, { "name": "userFractionsTokenAccount", "isMut": true, "isSigner": false }, { "name": "poolWhitelist", "isMut": true, "isSigner": false }, { "name": "metadataInfo", "isMut": false, "isSigner": false }, { "name": "tokenMintInput", "isMut": true, "isSigner": false }, { "name": "fusionVaultOwnerPda", "isMut": true, "isSigner": false }, { "name": "vaultTokenAccountOutput", "isMut": true, "isSigner": false }, { "name": "mainRouterLp", "isMut": true, "isSigner": false }, { "name": "configOutputLp", "isMut": true, "isSigner": false }, { "name": "mainRouterIs", "isMut": true, "isSigner": false }, { "name": "configOutputIs", "isMut": true, "isSigner": false }, { "name": "fusionId", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false }, { "name": "feeConfig", "isMut": true, "isSigner": false }, { "name": "admin", "isMut": true, "isSigner": false }, { "name": "adminTokenAccount", "isMut": true, "isSigner": false } ], "args": [ { "name": "bumpPoolsAuth", "type": "u8" }, { "name": "bumpTopupAuth", "type": "u8" } ] }, { "name": "getLotteryTicket", "accounts": [ { "name": "lotteryTicket", "isMut": true, "isSigner": true }, { "name": "communityPool", "isMut": true, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": true }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "fractionMint", "isMut": true, "isSigner": false }, { "name": "userFractionsTokenAccount", "isMut": true, "isSigner": false }, { "name": "tokenMintInput", "isMut": true, "isSigner": false }, { "name": "fusionVaultOwnerPda", "isMut": true, "isSigner": false }, { "name": "vaultTokenAccountOutput", "isMut": true, "isSigner": false }, { "name": "mainRouterLp", "isMut": true, "isSigner": false }, { "name": "configOutputLp", "isMut": true, "isSigner": false }, { "name": "mainRouterIs", "isMut": true, "isSigner": false }, { "name": "configOutputIs", "isMut": true, "isSigner": false }, { "name": "fusionId", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false }, { "name": "feeConfig", "isMut": true, "isSigner": false }, { "name": "admin", "isMut": true, "isSigner": false }, { "name": "adminTokenAccount", "isMut": true, "isSigner": false } ], "args": [ { "name": "bumpTopupAuth", "type": "u8" } ] }, { "name": "revealLotteryTicket", "accounts": [ { "name": "lotteryTicket", "isMut": true, "isSigner": false }, { "name": "safetyDepositBox", "isMut": true, "isSigner": false }, { "name": "communityPool", "isMut": true, "isSigner": false }, { "name": "admin", "isMut": true, "isSigner": true } ], "args": [] }, { "name": "withdrawNftByTicket", "accounts": [ { "name": "lotteryTicket", "isMut": true, "isSigner": false }, { "name": "safetyDepositBox", "isMut": true, "isSigner": false }, { "name": "nftUserTokenAccount", "isMut": true, "isSigner": false }, { "name": "nftMint", "isMut": false, "isSigner": false }, { "name": "storeNftTokenAccount", "isMut": true, "isSigner": false }, { "name": "communityPool", "isMut": true, "isSigner": false }, { "name": "communityPoolsAuthority", "isMut": true, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": true }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "bumpPoolsAuth", "type": "u8" } ] }, { "name": "withdrawNftByAdmin", "accounts": [ { "name": "lotteryTicket", "isMut": true, "isSigner": false }, { "name": "safetyDepositBox", "isMut": true, "isSigner": false }, { "name": "nftUserTokenAccount", "isMut": true, "isSigner": false }, { "name": "nftMint", "isMut": false, "isSigner": false }, { "name": "storeNftTokenAccount", "isMut": true, "isSigner": false }, { "name": "communityPool", "isMut": true, "isSigner": false }, { "name": "communityPoolsAuthority", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "admin", "isMut": true, "isSigner": true } ], "args": [ { "name": "bumpPoolsAuth", "type": "u8" } ] }, { "name": "initializeLeaderboard", "accounts": [ { "name": "admin", "isMut": true, "isSigner": true }, { "name": "communityPool", "isMut": true, "isSigner": false }, { "name": "fractionMint", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "leaderboardAccount", "isMut": true, "isSigner": false } ], "args": [ { "name": "depositReward", "type": "u64" }, { "name": "withdrawReward", "type": "u64" } ] }, { "name": "updateLeaderboard", "accounts": [ { "name": "admin", "isMut": true, "isSigner": true }, { "name": "communityPool", "isMut": true, "isSigner": false }, { "name": "fractionMint", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "leaderboardAccount", "isMut": false, "isSigner": false } ], "args": [ { "name": "bumpLeaderboard", "type": "u8" }, { "name": "depositReward", "type": "u64" }, { "name": "withdrawReward", "type": "u64" } ] }, { "name": "initializeFee", "accounts": [ { "name": "admin", "isMut": true, "isSigner": true }, { "name": "communityPool", "isMut": false, "isSigner": false }, { "name": "config", "isMut": true, "isSigner": true }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "depositFeeAdmin", "type": "u32" }, { "name": "depositFeeLpool", "type": "u32" }, { "name": "depositFeeIstaking", "type": "u32" }, { "name": "getLotteryFeeAdmin", "type": "u32" }, { "name": "getLotteryFeeLpool", "type": "u32" }, { "name": "getLotteryFeeIstaking", "type": "u32" } ] }, { "name": "updateFee", "accounts": [ { "name": "admin", "isMut": true, "isSigner": true }, { "name": "config", "isMut": true, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "depositFeeAdmin", "type": "u32" }, { "name": "depositFeeLpool", "type": "u32" }, { "name": "depositFeeIstaking", "type": "u32" }, { "name": "getLotteryFeeAdmin", "type": "u32" }, { "name": "getLotteryFeeLpool", "type": "u32" }, { "name": "getLotteryFeeIstaking", "type": "u32" } ] }, { "name": "addScore", "accounts": [ { "name": "user", "isMut": true, "isSigner": false }, { "name": "programAuthority", "isMut": false, "isSigner": true }, { "name": "boardEntry", "isMut": true, "isSigner": false }, { "name": "permission", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "bumpPermission", "type": "u8" }, { "name": "bumpBoard", "type": "u8" }, { "name": "programPubkey", "type": "publicKey" }, { "name": "toAdd", "type": "u64" } ] }, { "name": "harvestScore", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "tokenMint", "isMut": true, "isSigner": false }, { "name": "userTokenAccount", "isMut": true, "isSigner": false }, { "name": "vaultOwnerPda", "isMut": true, "isSigner": false }, { "name": "vaultTokenAccount", "isMut": true, "isSigner": false }, { "name": "config", "isMut": false, "isSigner": false }, { "name": "boardEntry", "isMut": true, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "bumpBoard", "type": "u8" }, { "name": "bumpAuth", "type": "u8" }, { "name": "bumpConfig", "type": "u8" } ] }, { "name": "initializeBoardEntry", "accounts": [ { "name": "user", "isMut": true, "isSigner": true }, { "name": "nftMint", "isMut": true, "isSigner": false }, { "name": "boardEntry", "isMut": true, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "totalScore", "type": "u64" }, { "name": "message", "type": "string" } ] }, { "name": "initializePermission", "accounts": [ { "name": "admin", "isMut": true, "isSigner": true }, { "name": "programPubkey", "isMut": false, "isSigner": false }, { "name": "permission", "isMut": true, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "expiration", "type": "u64" }, { "name": "add", "type": "bool" }, { "name": "harvest", "type": "bool" } ] }, { "name": "intializeConfig", "accounts": [ { "name": "admin", "isMut": true, "isSigner": true }, { "name": "tokenMint", "isMut": true, "isSigner": false }, { "name": "vaultOwnerPda", "isMut": true, "isSigner": false }, { "name": "vaultTokenAccount", "isMut": true, "isSigner": false }, { "name": "config", "isMut": true, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "bumpAuth", "type": "u8" } ] }, { "name": "topupConfig", "accounts": [ { "name": "admin", "isMut": true, "isSigner": true }, { "name": "tokenMint", "isMut": true, "isSigner": false }, { "name": "adminTokenAccount", "isMut": true, "isSigner": false }, { "name": "vaultOwnerPda", "isMut": true, "isSigner": false }, { "name": "vaultTokenAccount", "isMut": true, "isSigner": false }, { "name": "config", "isMut": true, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "associatedTokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "bumpAuth", "type": "u8" }, { "name": "bumpConfig", "type": "u8" }, { "name": "topupAmount", "type": "u64" } ] }, { "name": "updateConnection", "accounts": [ { "name": "communityPool", "isMut": true, "isSigner": false }, { "name": "admin", "isMut": true, "isSigner": true }, { "name": "fractionMint", "isMut": true, "isSigner": false }, { "name": "router", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "emergencyWithdrawByAdmin", "accounts": [ { "name": "safetyDepositBox", "isMut": true, "isSigner": false }, { "name": "nftUserTokenAccount", "isMut": true, "isSigner": false }, { "name": "nftMint", "isMut": false, "isSigner": false }, { "name": "storeNftTokenAccount", "isMut": true, "isSigner": false }, { "name": "communityPool", "isMut": true, "isSigner": false }, { "name": "communityPoolsAuthority", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "admin", "isMut": true, "isSigner": true } ], "args": [ { "name": "bumpPoolsAuth", "type": "u8" } ] }, { "name": "removeFromWhitelistByAdmin", "accounts": [ { "name": "admin", "isMut": true, "isSigner": true }, { "name": "poolWhitelist", "isMut": true, "isSigner": false }, { "name": "whitelistedAddress", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] } ], "accounts": [ { "name": "BoardEntry", "type": { "kind": "struct", "fields": [ { "name": "entryholder", "type": "publicKey" }, { "name": "totalScore", "type": "u64" }, { "name": "scoreToHarvest", "type": "u64" }, { "name": "nftMint", "type": "publicKey" }, { "name": "message", "type": "string" } ] } }, { "name": "CommunityPool", "type": { "kind": "struct", "fields": [ { "name": "tokenProgram", "type": "publicKey" }, { "name": "fractionMint", "type": "publicKey" }, { "name": "authority", "type": "publicKey" }, { "name": "fractionsSupply", "type": "u64" }, { "name": "createdAt", "type": "u64" }, { "name": "tokenTypeCount", "type": "u64" }, { "name": "state", "type": { "defined": "VaultState" } } ] } }, { "name": "FeeConfig", "type": { "kind": "struct", "fields": [ { "name": "communityPool", "type": "publicKey" }, { "name": "depositFeeAdmin", "type": "u64" }, { "name": "depositFeeLpool", "type": "u64" }, { "name": "depositFeeIstaking", "type": "u64" }, { "name": "getLotteryFeeAdmin", "type": "u64" }, { "name": "getLotteryFeeLpool", "type": "u64" }, { "name": "getLotteryFeeIstaking", "type": "u64" } ] } }, { "name": "PoolConfig", "type": { "kind": "struct", "fields": [ { "name": "vaultOwnerPda", "type": "publicKey" }, { "name": "tokenMint", "type": "publicKey" }, { "name": "vaultTokenAccount", "type": "publicKey" }, { "name": "poolVaultBalance", "type": "u64" } ] } }, { "name": "LeaderboardRewardAccount", "type": { "kind": "struct", "fields": [ { "name": "communityPool", "type": "publicKey" }, { "name": "depositReward", "type": "u64" }, { "name": "withdrawReward", "type": "u64" } ] } }, { "name": "LotteryTicket", "type": { "kind": "struct", "fields": [ { "name": "communityPool", "type": "publicKey" }, { "name": "ticketHolder", "type": "publicKey" }, { "name": "winningSafetyBox", "type": "publicKey" }, { "name": "lotteryTicketState", "type": { "defined": "LotteryTicketState" } } ] } }, { "name": "Permission", "type": { "kind": "struct", "fields": [ { "name": "programPubkey", "type": "publicKey" }, { "name": "expiration", "type": "u64" }, { "name": "canAddScore", "type": "bool" }, { "name": "canHarvestScore", "type": "bool" } ] } }, { "name": "PoolWhitelist", "type": { "kind": "struct", "fields": [ { "name": "communityPool", "type": "publicKey" }, { "name": "whitelistedAddress", "type": "publicKey" }, { "name": "whitelistType", "type": { "defined": "WhitelistType" } } ] } }, { "name": "SafetyDepositBox", "type": { "kind": "struct", "fields": [ { "name": "communityPool", "type": "publicKey" }, { "name": "nftMint", "type": "publicKey" }, { "name": "storeNftTokenAccount", "type": "publicKey" }, { "name": "safetyBoxState", "type": { "defined": "SafetyBoxState" } } ] } } ], "types": [ { "name": "VaultState", "type": { "kind": "enum", "variants": [ { "name": "Inactive" }, { "name": "Active" }, { "name": "Deactivated" } ] } }, { "name": "LotteryTicketState", "type": { "kind": "enum", "variants": [ { "name": "ToBeRevealed" }, { "name": "Revealed" }, { "name": "Used" } ] } }, { "name": "WhitelistType", "type": { "kind": "enum", "variants": [ { "name": "CreatorWhitelist" }, { "name": "SingleNFTWhitelist" } ] } }, { "name": "SafetyBoxState", "type": { "kind": "enum", "variants": [ { "name": "Locked" }, { "name": "Empty" }, { "name": "ToBeWithdrawn" } ] } } ], "errors": [ { "code": 6000, "name": "CommunityPoolAuthorityDoesntMatch", "msg": "Community pool authority doesn't match actual authority" }, { "code": 6001, "name": "PoolIsAlreadyActivated", "msg": "Pool is already activated" }, { "code": 6002, "name": "NotWhitelisted", "msg": "Nft or creator is not whitelisted" }, { "code": 6003, "name": "WrongMetadata", "msg": "Wrong metadata" }, { "code": 6004, "name": "InvalidAuthority", "msg": "Invalid Authority" }, { "code": 6005, "name": "InvalidBoardEntry", "msg": "Invalid BoardEntry" } ] }