UNPKG

@coral-xyz/soulbound

Version:
1,020 lines 29.8 kB
export type CardinalStakePool = { version: "2.2.1"; name: "cardinal_stake_pool"; instructions: [ { name: "initIdentifier"; accounts: [ { name: "identifier"; isMut: true; isSigner: false; }, { name: "payer"; isMut: true; isSigner: true; }, { name: "systemProgram"; isMut: false; isSigner: false; } ]; args: []; }, { name: "initPool"; accounts: [ { name: "stakePool"; isMut: true; isSigner: false; }, { name: "identifier"; isMut: true; isSigner: false; }, { name: "authority"; isMut: false; isSigner: true; }, { name: "payer"; isMut: true; isSigner: true; }, { name: "systemProgram"; isMut: false; isSigner: false; } ]; args: [ { name: "ix"; type: { defined: "InitPoolIx"; }; } ]; }, { name: "stakeProgrammable"; accounts: [ { name: "stakeEntry"; isMut: true; isSigner: false; }, { name: "rewardEntry"; isMut: true; isSigner: false; }, { name: "rewardDistributor"; isMut: true; isSigner: false; }, { name: "stakePool"; isMut: true; isSigner: false; }, { name: "originalMint"; isMut: false; isSigner: false; }, { name: "user"; isMut: true; isSigner: true; }, { name: "userOriginalMintTokenAccount"; isMut: true; isSigner: false; }, { name: "userOriginalMintTokenRecord"; isMut: true; isSigner: false; }, { name: "mintMetadata"; isMut: true; isSigner: false; }, { name: "mintEdition"; isMut: false; isSigner: false; }, { name: "authorizationRules"; isMut: false; isSigner: false; }, { name: "sysvarInstructions"; isMut: false; isSigner: false; }, { name: "tokenProgram"; isMut: false; isSigner: false; }, { name: "tokenMetadataProgram"; isMut: false; isSigner: false; }, { name: "authorizationRulesProgram"; isMut: false; isSigner: false; }, { name: "rewardDistributorProgram"; isMut: false; isSigner: false; }, { name: "systemProgram"; isMut: false; isSigner: false; } ]; args: [ { name: "amount"; type: "u64"; } ]; }, { name: "unstakeProgrammable"; accounts: [ { name: "stakeEntry"; isMut: true; isSigner: false; }, { name: "stakePool"; isMut: true; isSigner: false; }, { name: "originalMint"; isMut: false; isSigner: false; }, { name: "user"; isMut: true; isSigner: true; }, { name: "userOriginalMintTokenAccount"; isMut: true; isSigner: false; }, { name: "userOriginalMintTokenRecord"; isMut: true; isSigner: false; }, { name: "mintMetadata"; isMut: true; isSigner: false; }, { name: "mintEdition"; isMut: false; isSigner: false; }, { name: "authorizationRules"; isMut: false; isSigner: false; }, { name: "sysvarInstructions"; isMut: false; isSigner: false; }, { name: "tokenProgram"; isMut: false; isSigner: false; }, { name: "tokenMetadataProgram"; isMut: false; isSigner: false; }, { name: "authorizationRulesProgram"; isMut: false; isSigner: false; }, { name: "systemProgram"; isMut: false; isSigner: false; } ]; args: []; }, { name: "updateTotalStakeSeconds"; accounts: [ { name: "stakeEntry"; isMut: true; isSigner: false; }, { name: "lastStaker"; isMut: true; isSigner: true; } ]; args: []; } ]; accounts: [ { name: "groupStakeEntry"; type: { kind: "struct"; fields: [ { name: "bump"; type: "u8"; }, { name: "groupId"; type: "publicKey"; }, { name: "authority"; type: "publicKey"; }, { name: "stakeEntries"; type: { vec: "publicKey"; }; }, { name: "changedAt"; type: "i64"; }, { name: "groupCooldownSeconds"; type: "u32"; }, { name: "groupStakeSeconds"; type: "u32"; }, { name: "groupCooldownStartSeconds"; type: { option: "i64"; }; } ]; }; }, { name: "stakeEntry"; type: { kind: "struct"; fields: [ { name: "bump"; type: "u8"; }, { name: "pool"; type: "publicKey"; }, { name: "amount"; type: "u64"; }, { name: "originalMint"; type: "publicKey"; }, { name: "originalMintClaimed"; type: "bool"; }, { name: "lastStaker"; type: "publicKey"; }, { name: "lastStakedAt"; type: "i64"; }, { name: "totalStakeSeconds"; type: "u128"; }, { name: "stakeMintClaimed"; type: "bool"; }, { name: "kind"; type: "u8"; }, { name: "stakeMint"; type: { option: "publicKey"; }; }, { name: "cooldownStartSeconds"; type: { option: "i64"; }; }, { name: "lastUpdatedAt"; type: { option: "i64"; }; }, { name: "grouped"; type: { option: "bool"; }; } ]; }; }, { name: "stakePool"; type: { kind: "struct"; fields: [ { name: "bump"; type: "u8"; }, { name: "identifier"; type: "u64"; }, { name: "authority"; type: "publicKey"; }, { name: "requiresCreators"; type: { vec: "publicKey"; }; }, { name: "requiresCollections"; type: { vec: "publicKey"; }; }, { name: "requiresAuthorization"; type: "bool"; }, { name: "overlayText"; type: "string"; }, { name: "imageUri"; type: "string"; }, { name: "resetOnStake"; type: "bool"; }, { name: "totalStaked"; type: "u32"; }, { name: "cooldownSeconds"; type: { option: "u32"; }; }, { name: "minStakeSeconds"; type: { option: "u32"; }; }, { name: "endDate"; type: { option: "i64"; }; }, { name: "doubleOrResetEnabled"; type: { option: "bool"; }; } ]; }; }, { name: "stakeBooster"; type: { kind: "struct"; fields: [ { name: "bump"; type: "u8"; }, { name: "stakePool"; type: "publicKey"; }, { name: "identifier"; type: "u64"; }, { name: "paymentAmount"; type: "u64"; }, { name: "paymentMint"; type: "publicKey"; }, { name: "paymentManager"; type: "publicKey"; }, { name: "paymentRecipient"; type: "publicKey"; }, { name: "boostSeconds"; type: "u128"; }, { name: "startTimeSeconds"; type: "i64"; } ]; }; }, { name: "stakeAuthorizationRecord"; type: { kind: "struct"; fields: [ { name: "bump"; type: "u8"; }, { name: "pool"; type: "publicKey"; }, { name: "mint"; type: "publicKey"; } ]; }; }, { name: "identifier"; type: { kind: "struct"; fields: [ { name: "bump"; type: "u8"; }, { name: "count"; type: "u64"; } ]; }; } ]; types: [ { name: "InitGroupEntryIx"; type: { kind: "struct"; fields: [ { name: "groupId"; type: "publicKey"; }, { name: "groupCooldownSeconds"; type: { option: "u32"; }; }, { name: "groupStakeSeconds"; type: { option: "u32"; }; } ]; }; }, { name: "InitPoolIx"; type: { kind: "struct"; fields: [ { name: "overlayText"; type: "string"; }, { name: "imageUri"; type: "string"; }, { name: "requiresCollections"; type: { vec: "publicKey"; }; }, { name: "requiresCreators"; type: { vec: "publicKey"; }; }, { name: "requiresAuthorization"; type: "bool"; }, { name: "authority"; type: "publicKey"; }, { name: "resetOnStake"; type: "bool"; }, { name: "cooldownSeconds"; type: { option: "u32"; }; }, { name: "minStakeSeconds"; type: { option: "u32"; }; }, { name: "endDate"; type: { option: "i64"; }; }, { name: "doubleOrResetEnabled"; type: { option: "bool"; }; } ]; }; }, { name: "InitStakeMintIx"; type: { kind: "struct"; fields: [ { name: "name"; type: "string"; }, { name: "symbol"; type: "string"; } ]; }; }, { name: "ReassignStakeEntryIx"; type: { kind: "struct"; fields: [ { name: "target"; type: "publicKey"; } ]; }; }, { name: "BoostStakeEntryIx"; type: { kind: "struct"; fields: [ { name: "secondsToBoost"; type: "u64"; } ]; }; }, { name: "InitStakeBoosterIx"; type: { kind: "struct"; fields: [ { name: "stakePool"; type: "publicKey"; }, { name: "identifier"; type: "u64"; }, { name: "paymentAmount"; type: "u64"; }, { name: "paymentMint"; type: "publicKey"; }, { name: "paymentManager"; type: "publicKey"; }, { name: "boostSeconds"; type: "u128"; }, { name: "startTimeSeconds"; type: "i64"; } ]; }; }, { name: "UpdateStakeBoosterIx"; type: { kind: "struct"; fields: [ { name: "paymentAmount"; type: "u64"; }, { name: "paymentMint"; type: "publicKey"; }, { name: "paymentManager"; type: "publicKey"; }, { name: "boostSeconds"; type: "u128"; }, { name: "startTimeSeconds"; type: "i64"; } ]; }; }, { name: "UpdatePoolIx"; type: { kind: "struct"; fields: [ { name: "imageUri"; type: { option: "string"; }; }, { name: "overlayText"; type: "string"; }, { name: "requiresCollections"; type: { vec: "publicKey"; }; }, { name: "requiresCreators"; type: { vec: "publicKey"; }; }, { name: "requiresAuthorization"; type: "bool"; }, { name: "authority"; type: "publicKey"; }, { name: "resetOnStake"; type: "bool"; }, { name: "cooldownSeconds"; type: { option: "u32"; }; }, { name: "minStakeSeconds"; type: { option: "u32"; }; }, { name: "endDate"; type: { option: "i64"; }; }, { name: "doubleOrResetEnabled"; type: { option: "bool"; }; } ]; }; }, { name: "StakeEntryKind"; type: { kind: "enum"; variants: [ { name: "Permissionless"; }, { name: "Permissioned"; } ]; }; } ]; errors: [ { code: 6000; name: "InvalidOriginalMint"; msg: "Original mint is invalid"; }, { code: 6001; name: "InvalidTokenManagerMint"; msg: "Token Manager mint is invalid"; }, { code: 6002; name: "InvalidUserOriginalMintTokenAccount"; msg: "Invalid user original mint token account"; }, { code: 6003; name: "InvalidUserMintTokenAccount"; msg: "Invalid user token manager mint account"; }, { code: 6004; name: "InvalidStakeEntryOriginalMintTokenAccount"; msg: "Invalid stake entry original mint token account"; }, { code: 6005; name: "InvalidStakeEntryMintTokenAccount"; msg: "Invalid stake entry token manager mint token account"; }, { code: 6006; name: "InvalidUnstakeUser"; msg: "Invalid unstake user only last staker can unstake"; }, { code: 6007; name: "InvalidStakePool"; msg: "Invalid stake pool"; }, { code: 6008; name: "NoMintMetadata"; msg: "No mint metadata"; }, { code: 6009; name: "MintNotAllowedInPool"; msg: "Mint not allowed in this pool"; }, { code: 6010; name: "InvalidPoolAuthority"; msg: "Invalid stake pool authority"; }, { code: 6011; name: "InvalidStakeType"; msg: "Invalid stake type"; }, { code: 6012; name: "InvalidStakeEntryStakeTokenAccount"; msg: "Invalid stake entry stake token account"; }, { code: 6013; name: "InvalidLastStaker"; msg: "Invalid last staker"; }, { code: 6014; name: "InvalidTokenManagerProgram"; msg: "Invalid token manager program"; }, { code: 6015; name: "InvalidReceiptMint"; msg: "Invalid receipt mint"; }, { code: 6016; name: "StakeEntryAlreadyStaked"; msg: "Stake entry already has tokens staked"; }, { code: 6017; name: "InvalidAuthority"; msg: "Invalid authority"; }, { code: 6018; name: "CannotCloseStakedEntry"; msg: "Cannot close staked entry"; }, { code: 6019; name: "CannotClosePoolWithStakedEntries"; msg: "Cannot close staked entry"; }, { code: 6020; name: "CooldownSecondRemaining"; msg: "Token still has some cooldown seconds remaining"; }, { code: 6021; name: "MinStakeSecondsNotSatisfied"; msg: "Minimum stake seconds not satisfied"; }, { code: 6022; name: "InvalidStakeAuthorizationRecord"; msg: "Invalid stake authorization provided"; }, { code: 6023; name: "InvalidMintMetadata"; msg: "Invalid mint metadata"; }, { code: 6024; name: "StakePoolHasEnded"; msg: "Stake pool has ended"; }, { code: 6025; name: "InvalidMintMetadataOwner"; msg: "Mint metadata is owned by the incorrect program"; }, { code: 6026; name: "StakeMintAlreadyInitialized"; msg: "Stake mint already intialized"; }, { code: 6027; name: "InvalidStakeEntry"; msg: "Invalid stake entry"; }, { code: 6028; name: "CannotUpdateUnstakedEntry"; msg: "Cannot update unstaked entry"; }, { code: 6100; name: "CannotBoostUnstakedToken"; msg: "Cannot boost unstaked token"; }, { code: 6101; name: "CannotBoostMoreThanCurrentTime"; msg: "Cannot boost past current time less than start time"; }, { code: 6102; name: "InvalidBoostPayerTokenAccount"; msg: "Invalid boost payer token account"; }, { code: 6103; name: "InvalidBoostPaymentRecipientTokenAccount"; msg: "Invalid boost payment recipient token account"; }, { code: 6104; name: "InvalidPaymentManager"; msg: "Invalid payment manager"; }, { code: 6105; name: "CannotBoostFungibleToken"; msg: "Cannot boost a fungible token stake entry"; }, { code: 6120; name: "GroupedStakeEntry"; msg: "Grouped stake entry"; }, { code: 6121; name: "UngroupedStakeEntry"; msg: "Ungrouped stake entry"; }, { code: 6122; name: "MinGroupSecondsNotSatisfied"; msg: "Minimum group seconds not satisfied"; }, { code: 6123; name: "ActiveGroupEntry"; msg: "Active group entry"; }, { code: 6124; name: "StakeEntryNotFoundInGroup"; msg: "Stake entry not found in group"; }, { code: 6130; name: "InvalidFundsMint"; msg: "Invalid funds mint"; }, { code: 6131; name: "InvalidMintForTokenAccount"; msg: "Invalid mint for token account"; }, { code: 6132; name: "StakeEntryFundsTokenAccountEmpty"; msg: "Stake entry funds token account is empty"; } ]; }; export declare const IDL: CardinalStakePool; //# sourceMappingURL=cardinalStakePool.d.ts.map