Created
April 14, 2022 12:19
-
-
Save eyevz/ceadc89256e57063041e6b18e23ed390 to your computer and use it in GitHub Desktop.
Jet Protocol governance IDLs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"version": "1.0.0", | |
"name": "jet_auth", | |
"instructions": [ | |
{ | |
"name": "createUserAuth", | |
"accounts": [ | |
{ | |
"name": "user", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "payer", | |
"isMut": true, | |
"isSigner": true | |
}, | |
{ | |
"name": "auth", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "systemProgram", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [], | |
"returns": null | |
}, | |
{ | |
"name": "authenticate", | |
"accounts": [ | |
{ | |
"name": "auth", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "authority", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "authority", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [], | |
"returns": null | |
} | |
], | |
"accounts": [ | |
{ | |
"name": "UserAuthentication", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "owner", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "complete", | |
"type": "bool" | |
}, | |
{ | |
"name": "allowed", | |
"type": "bool" | |
} | |
] | |
} | |
} | |
], | |
"events": [ | |
{ | |
"name": "AuthAccountCreated", | |
"fields": [ | |
{ | |
"name": "user", | |
"type": "publicKey", | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "Authenticated", | |
"fields": [ | |
{ | |
"name": "user", | |
"type": "publicKey", | |
"index": false | |
} | |
] | |
} | |
] | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"version": "1.0.0", | |
"name": "jet_rewards", | |
"constants": [ | |
{ | |
"name": "AWARD", | |
"type": { | |
"defined": "&[u8]" | |
}, | |
"value": "b\"award\"" | |
}, | |
{ | |
"name": "DISTRIBUTION", | |
"type": { | |
"defined": "&[u8]" | |
}, | |
"value": "b\"distribution\"" | |
}, | |
{ | |
"name": "VAULT", | |
"type": { | |
"defined": "&[u8]" | |
}, | |
"value": "b\"vault\"" | |
} | |
], | |
"instructions": [ | |
{ | |
"name": "airdropCreate", | |
"accounts": [ | |
{ | |
"name": "airdrop", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "authority", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "rewardVault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "payer", | |
"isMut": true, | |
"isSigner": true | |
}, | |
{ | |
"name": "tokenMint", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenProgram", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "systemProgram", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "rent", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [ | |
{ | |
"name": "params", | |
"type": { | |
"defined": "AirdropCreateParams" | |
} | |
} | |
], | |
"returns": null | |
}, | |
{ | |
"name": "airdropAddRecipients", | |
"accounts": [ | |
{ | |
"name": "airdrop", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "authority", | |
"isMut": false, | |
"isSigner": true | |
} | |
], | |
"args": [ | |
{ | |
"name": "params", | |
"type": { | |
"defined": "AirdropAddRecipientsParams" | |
} | |
} | |
], | |
"returns": null | |
}, | |
{ | |
"name": "airdropFinalize", | |
"accounts": [ | |
{ | |
"name": "airdrop", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "rewardVault", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "authority", | |
"isMut": false, | |
"isSigner": true | |
} | |
], | |
"args": [], | |
"returns": null | |
}, | |
{ | |
"name": "airdropClose", | |
"accounts": [ | |
{ | |
"name": "airdrop", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "rewardVault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "authority", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "receiver", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenReceiver", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenProgram", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [], | |
"returns": null | |
}, | |
{ | |
"name": "airdropClaim", | |
"accounts": [ | |
{ | |
"name": "airdrop", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "rewardVault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "recipient", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "receiver", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePool", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePoolVault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakeAccount", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "voterWeightRecord", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "maxVoterWeightRecord", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakingProgram", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenProgram", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [], | |
"returns": null | |
}, | |
{ | |
"name": "distributionCreate", | |
"accounts": [ | |
{ | |
"name": "distribution", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "vault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "payerRent", | |
"isMut": true, | |
"isSigner": true | |
}, | |
{ | |
"name": "payerTokenAuthority", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "payerTokenAccount", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenMint", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenProgram", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "systemProgram", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "rent", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [ | |
{ | |
"name": "params", | |
"type": { | |
"defined": "DistributionCreateParams" | |
} | |
} | |
], | |
"returns": null | |
}, | |
{ | |
"name": "distributionRelease", | |
"accounts": [ | |
{ | |
"name": "distribution", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "vault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "targetAccount", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenProgram", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [], | |
"returns": null | |
}, | |
{ | |
"name": "distributionClose", | |
"accounts": [ | |
{ | |
"name": "distribution", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "vault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "receiver", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "authority", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "tokenProgram", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [], | |
"returns": null | |
}, | |
{ | |
"name": "awardCreate", | |
"accounts": [ | |
{ | |
"name": "award", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "vault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenMint", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenSource", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenSourceAuthority", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "payerRent", | |
"isMut": true, | |
"isSigner": true | |
}, | |
{ | |
"name": "tokenProgram", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "systemProgram", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "rent", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [ | |
{ | |
"name": "params", | |
"type": { | |
"defined": "AwardCreateParams" | |
} | |
} | |
], | |
"returns": null | |
}, | |
{ | |
"name": "awardRelease", | |
"accounts": [ | |
{ | |
"name": "award", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "vault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakeAccount", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "voterWeightRecord", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "maxVoterWeightRecord", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePool", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePoolVault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakingProgram", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenProgram", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [], | |
"returns": null | |
}, | |
{ | |
"name": "awardClose", | |
"accounts": [ | |
{ | |
"name": "award", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "vault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "receiver", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "authority", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "tokenProgram", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [], | |
"returns": null | |
}, | |
{ | |
"name": "awardRevoke", | |
"accounts": [ | |
{ | |
"name": "award", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "vault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "receiver", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenReceiver", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "authority", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "tokenProgram", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [], | |
"returns": null | |
} | |
], | |
"accounts": [ | |
{ | |
"name": "Airdrop", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "address", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "rewardVault", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "authority", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "expireAt", | |
"type": "i64" | |
}, | |
{ | |
"name": "stakePool", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "flags", | |
"type": "u64" | |
}, | |
{ | |
"name": "shortDesc", | |
"type": { | |
"array": [ | |
"u8", | |
32 | |
] | |
} | |
}, | |
{ | |
"name": "longDesc", | |
"type": { | |
"array": [ | |
"u8", | |
255 | |
] | |
} | |
}, | |
{ | |
"name": "vaultBump", | |
"type": { | |
"array": [ | |
"u8", | |
1 | |
] | |
} | |
}, | |
{ | |
"name": "targetInfo", | |
"type": { | |
"array": [ | |
"u8", | |
400024 | |
] | |
} | |
} | |
] | |
} | |
}, | |
{ | |
"name": "Award", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "authority", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "seed", | |
"type": { | |
"array": [ | |
"u8", | |
30 | |
] | |
} | |
}, | |
{ | |
"name": "seedLen", | |
"type": "u8" | |
}, | |
{ | |
"name": "bumpSeed", | |
"type": { | |
"array": [ | |
"u8", | |
1 | |
] | |
} | |
}, | |
{ | |
"name": "stakeAccount", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "vault", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "tokenDistribution", | |
"type": { | |
"defined": "TokenDistribution" | |
} | |
} | |
] | |
} | |
}, | |
{ | |
"name": "Distribution", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "address", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "authority", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "vault", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "seed", | |
"type": { | |
"array": [ | |
"u8", | |
30 | |
] | |
} | |
}, | |
{ | |
"name": "seedLen", | |
"type": "u8" | |
}, | |
{ | |
"name": "bumpSeed", | |
"type": { | |
"array": [ | |
"u8", | |
1 | |
] | |
} | |
}, | |
{ | |
"name": "targetAccount", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "tokenDistribution", | |
"type": { | |
"defined": "TokenDistribution" | |
} | |
} | |
] | |
} | |
} | |
], | |
"types": [ | |
{ | |
"name": "AirdropAddRecipientsParams", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "startIndex", | |
"type": "u64" | |
}, | |
{ | |
"name": "recipients", | |
"type": { | |
"vec": { | |
"defined": "AirdropRecipientParam" | |
} | |
} | |
} | |
] | |
} | |
}, | |
{ | |
"name": "AirdropRecipientParam", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "amount", | |
"type": "u64" | |
}, | |
{ | |
"name": "recipient", | |
"type": "publicKey" | |
} | |
] | |
} | |
}, | |
{ | |
"name": "AirdropCreateParams", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "expireAt", | |
"type": "i64" | |
}, | |
{ | |
"name": "stakePool", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "shortDesc", | |
"type": "string" | |
}, | |
{ | |
"name": "longDesc", | |
"type": "string" | |
}, | |
{ | |
"name": "flags", | |
"type": "u64" | |
} | |
] | |
} | |
}, | |
{ | |
"name": "AwardCreateParams", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "seed", | |
"type": "string" | |
}, | |
{ | |
"name": "authority", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "stakeAccount", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "amount", | |
"type": "u64" | |
}, | |
{ | |
"name": "beginAt", | |
"type": "u64" | |
}, | |
{ | |
"name": "endAt", | |
"type": "u64" | |
} | |
] | |
} | |
}, | |
{ | |
"name": "DistributionCreateParams", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "seed", | |
"type": "string" | |
}, | |
{ | |
"name": "authority", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "targetAccount", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "amount", | |
"type": "u64" | |
}, | |
{ | |
"name": "beginAt", | |
"type": "u64" | |
}, | |
{ | |
"name": "endAt", | |
"type": "u64" | |
} | |
] | |
} | |
}, | |
{ | |
"name": "TokenDistribution", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "targetAmount", | |
"type": "u64" | |
}, | |
{ | |
"name": "distributed", | |
"type": "u64" | |
}, | |
{ | |
"name": "beginAt", | |
"type": "u64" | |
}, | |
{ | |
"name": "endAt", | |
"type": "u64" | |
}, | |
{ | |
"name": "kind", | |
"type": { | |
"defined": "DistributionKind" | |
} | |
} | |
] | |
} | |
}, | |
{ | |
"name": "DistributionKind", | |
"type": { | |
"kind": "enum", | |
"variants": [ | |
{ | |
"name": "Linear" | |
} | |
] | |
} | |
} | |
], | |
"events": [ | |
{ | |
"name": "AirdropCreated", | |
"fields": [ | |
{ | |
"name": "airdrop", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "authority", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "tokenMint", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "params", | |
"type": { | |
"defined": "AirdropCreateParams" | |
}, | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "AirdropRecipientsAdded", | |
"fields": [ | |
{ | |
"name": "airdrop", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "rewardAdditional", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "rewardTotal", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "recipientsAdditional", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "recipientsTotal", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "recipients", | |
"type": { | |
"vec": { | |
"defined": "AirdropRecipientParam" | |
} | |
}, | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "AirdropFinalized", | |
"fields": [ | |
{ | |
"name": "airdrop", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "rewardTotal", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "recipientsTotal", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "vaultBalance", | |
"type": "u64", | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "AirdropClaimed", | |
"fields": [ | |
{ | |
"name": "airdrop", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "recipient", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "claimedAmount", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "remainingAmount", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "vaultBalance", | |
"type": "u64", | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "AirdropClosed", | |
"fields": [ | |
{ | |
"name": "airdrop", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "vaultAmount", | |
"type": "u64", | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "AwardCreated", | |
"fields": [ | |
{ | |
"name": "award", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "tokenMint", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "params", | |
"type": { | |
"defined": "AwardCreateParams" | |
}, | |
"index": false | |
}, | |
{ | |
"name": "distributionKind", | |
"type": { | |
"defined": "DistributionKind" | |
}, | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "AwardReleased", | |
"fields": [ | |
{ | |
"name": "award", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "amountReleased", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "totalReleased", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "vaultBalance", | |
"type": "u64", | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "AwardRevoked", | |
"fields": [ | |
{ | |
"name": "award", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "unreleasedAmount", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "totalReleased", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "vaultAmount", | |
"type": "u64", | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "AwardClosed", | |
"fields": [ | |
{ | |
"name": "award", | |
"type": "publicKey", | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "DistributionCreated", | |
"fields": [ | |
{ | |
"name": "distribution", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "authority", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "tokenMint", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "params", | |
"type": { | |
"defined": "DistributionCreateParams" | |
}, | |
"index": false | |
}, | |
{ | |
"name": "distributionKind", | |
"type": { | |
"defined": "DistributionKind" | |
}, | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "DistributionReleased", | |
"fields": [ | |
{ | |
"name": "distribution", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "amountReleased", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "totalDistributed", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "vaultBalance", | |
"type": "u64", | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "DistributionClosed", | |
"fields": [ | |
{ | |
"name": "distribution", | |
"type": "publicKey", | |
"index": false | |
} | |
] | |
} | |
], | |
"errors": [ | |
{ | |
"code": 13000, | |
"name": "RecipientNotFound" | |
}, | |
{ | |
"code": 13001, | |
"name": "AddOutOfOrder" | |
}, | |
{ | |
"code": 13002, | |
"name": "AirdropFinal" | |
}, | |
{ | |
"code": 13003, | |
"name": "AirdropInsufficientRewardBalance" | |
}, | |
{ | |
"code": 13004, | |
"name": "AirdropExpired" | |
}, | |
{ | |
"code": 13005, | |
"name": "AirdropNotFinal" | |
}, | |
{ | |
"code": 13006, | |
"name": "RecipientsNotSorted" | |
}, | |
{ | |
"code": 13007, | |
"name": "DistributionNotEnded" | |
}, | |
{ | |
"code": 13008, | |
"name": "AwardNotFullyVested" | |
} | |
] | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"version": "1.0.0", | |
"name": "jet_staking", | |
"constants": [ | |
{ | |
"name": "COLLATERAL_MINT", | |
"type": { | |
"defined": "&[u8]" | |
}, | |
"value": "b\"collateral-mint\"" | |
}, | |
{ | |
"name": "MAX_VOTE_WEIGHT_RECORD", | |
"type": { | |
"defined": "&[u8]" | |
}, | |
"value": "b\"max-vote-weight-record\"" | |
}, | |
{ | |
"name": "VAULT", | |
"type": { | |
"defined": "&[u8]" | |
}, | |
"value": "b\"vault\"" | |
}, | |
{ | |
"name": "VOTER_WEIGHT_RECORD", | |
"type": { | |
"defined": "&[u8]" | |
}, | |
"value": "b\"voter-weight-record\"" | |
} | |
], | |
"instructions": [ | |
{ | |
"name": "initPool", | |
"accounts": [ | |
{ | |
"name": "payer", | |
"isMut": true, | |
"isSigner": true | |
}, | |
{ | |
"name": "authority", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenMint", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePool", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "maxVoterWeightRecord", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakeCollateralMint", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePoolVault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenProgram", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "systemProgram", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "rent", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [ | |
{ | |
"name": "seed", | |
"type": "string" | |
}, | |
{ | |
"name": "config", | |
"type": { | |
"defined": "PoolConfig" | |
} | |
} | |
], | |
"returns": null | |
}, | |
{ | |
"name": "initStakeAccount", | |
"accounts": [ | |
{ | |
"name": "owner", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "auth", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePool", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakeAccount", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "voterWeightRecord", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "payer", | |
"isMut": true, | |
"isSigner": true | |
}, | |
{ | |
"name": "systemProgram", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [], | |
"returns": null | |
}, | |
{ | |
"name": "addStake", | |
"accounts": [ | |
{ | |
"name": "stakePool", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePoolVault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakeAccount", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "voterWeightRecord", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "maxVoterWeightRecord", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "payer", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "payerTokenAccount", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenProgram", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [ | |
{ | |
"name": "amount", | |
"type": { | |
"option": "u64" | |
} | |
} | |
], | |
"returns": null | |
}, | |
{ | |
"name": "unbondStake", | |
"accounts": [ | |
{ | |
"name": "owner", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "payer", | |
"isMut": true, | |
"isSigner": true | |
}, | |
{ | |
"name": "stakeAccount", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePool", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePoolVault", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "unbondingAccount", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "voterWeightRecord", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "maxVoterWeightRecord", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenOwnerRecord", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "systemProgram", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [ | |
{ | |
"name": "seed", | |
"type": "u32" | |
}, | |
{ | |
"name": "amount", | |
"type": { | |
"option": "u64" | |
} | |
} | |
], | |
"returns": null | |
}, | |
{ | |
"name": "cancelUnbond", | |
"accounts": [ | |
{ | |
"name": "owner", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "receiver", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakeAccount", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "voterWeightRecord", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "maxVoterWeightRecord", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePool", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePoolVault", | |
"isMut": false, | |
"isSigner": false | |
}, | |
{ | |
"name": "unbondingAccount", | |
"isMut": true, | |
"isSigner": false | |
} | |
], | |
"args": [], | |
"returns": null | |
}, | |
{ | |
"name": "withdrawUnbonded", | |
"accounts": [ | |
{ | |
"name": "owner", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "closer", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenReceiver", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakeAccount", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePool", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePoolVault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "unbondingAccount", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenProgram", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [], | |
"returns": null | |
}, | |
{ | |
"name": "withdrawBonded", | |
"accounts": [ | |
{ | |
"name": "authority", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "stakePool", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenReceiver", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakePoolVault", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "tokenProgram", | |
"isMut": false, | |
"isSigner": false | |
} | |
], | |
"args": [ | |
{ | |
"name": "amount", | |
"type": "u64" | |
} | |
], | |
"returns": null | |
}, | |
{ | |
"name": "closeStakeAccount", | |
"accounts": [ | |
{ | |
"name": "owner", | |
"isMut": false, | |
"isSigner": true | |
}, | |
{ | |
"name": "closer", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "stakeAccount", | |
"isMut": true, | |
"isSigner": false | |
}, | |
{ | |
"name": "voterWeightRecord", | |
"isMut": true, | |
"isSigner": false | |
} | |
], | |
"args": [], | |
"returns": null | |
} | |
], | |
"accounts": [ | |
{ | |
"name": "VoterWeightRecord", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "realm", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "governingTokenMint", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "owner", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "voterWeight", | |
"type": "u64" | |
}, | |
{ | |
"name": "voterWeightExpiry", | |
"type": { | |
"option": "u64" | |
} | |
}, | |
{ | |
"name": "weightAction", | |
"type": { | |
"option": { | |
"defined": "VoterWeightAction" | |
} | |
} | |
}, | |
{ | |
"name": "weightActionTarget", | |
"type": { | |
"option": "publicKey" | |
} | |
}, | |
{ | |
"name": "reserved", | |
"type": { | |
"array": [ | |
"u8", | |
8 | |
] | |
} | |
} | |
] | |
} | |
}, | |
{ | |
"name": "MaxVoterWeightRecord", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "realm", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "governingTokenMint", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "maxVoterWeight", | |
"type": "u64" | |
}, | |
{ | |
"name": "maxVoterWeightExpiry", | |
"type": { | |
"option": "u64" | |
} | |
}, | |
{ | |
"name": "reserved", | |
"type": { | |
"array": [ | |
"u8", | |
8 | |
] | |
} | |
} | |
] | |
} | |
}, | |
{ | |
"name": "StakePool", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "authority", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "seed", | |
"type": { | |
"array": [ | |
"u8", | |
30 | |
] | |
} | |
}, | |
{ | |
"name": "seedLen", | |
"type": "u8" | |
}, | |
{ | |
"name": "bumpSeed", | |
"type": { | |
"array": [ | |
"u8", | |
1 | |
] | |
} | |
}, | |
{ | |
"name": "tokenMint", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "stakePoolVault", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "maxVoterWeightRecord", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "governanceRealm", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "stakeCollateralMint", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "unbondPeriod", | |
"type": "i64" | |
}, | |
{ | |
"name": "vaultAmount", | |
"type": "u64" | |
}, | |
{ | |
"name": "bonded", | |
"type": { | |
"defined": "SharedTokenPool" | |
} | |
}, | |
{ | |
"name": "unbonding", | |
"type": { | |
"defined": "SharedTokenPool" | |
} | |
} | |
] | |
} | |
}, | |
{ | |
"name": "StakeAccount", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "owner", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "stakePool", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "voterWeightRecord", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "bondedShares", | |
"type": "u64" | |
}, | |
{ | |
"name": "unbondingShares", | |
"type": "u64" | |
} | |
] | |
} | |
}, | |
{ | |
"name": "UnbondingAccount", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "stakeAccount", | |
"type": "publicKey" | |
}, | |
{ | |
"name": "shares", | |
"type": "u64" | |
}, | |
{ | |
"name": "unbondedAt", | |
"type": "i64" | |
} | |
] | |
} | |
} | |
], | |
"types": [ | |
{ | |
"name": "StakePoolNote", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "vaultAmount", | |
"type": "u64" | |
}, | |
{ | |
"name": "bonded", | |
"type": { | |
"defined": "SharedTokenPool" | |
} | |
}, | |
{ | |
"name": "unbonding", | |
"type": { | |
"defined": "SharedTokenPool" | |
} | |
} | |
] | |
} | |
}, | |
{ | |
"name": "StakeAccountNote", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "bondedShares", | |
"type": "u64" | |
}, | |
{ | |
"name": "unbondingShares", | |
"type": "u64" | |
} | |
] | |
} | |
}, | |
{ | |
"name": "PoolConfig", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "unbondPeriod", | |
"type": "u64" | |
}, | |
{ | |
"name": "governanceRealm", | |
"type": "publicKey" | |
} | |
] | |
} | |
}, | |
{ | |
"name": "SharedTokenPool", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "tokens", | |
"type": "u64" | |
}, | |
{ | |
"name": "shares", | |
"type": "u64" | |
} | |
] | |
} | |
}, | |
{ | |
"name": "FullAmount", | |
"type": { | |
"kind": "struct", | |
"fields": [ | |
{ | |
"name": "tokenAmount", | |
"type": "u64" | |
}, | |
{ | |
"name": "shareAmount", | |
"type": "u64" | |
}, | |
{ | |
"name": "allShares", | |
"type": "u64" | |
}, | |
{ | |
"name": "allTokens", | |
"type": "u64" | |
} | |
] | |
} | |
}, | |
{ | |
"name": "VoterWeightAction", | |
"type": { | |
"kind": "enum", | |
"variants": [ | |
{ | |
"name": "CastVote" | |
}, | |
{ | |
"name": "CommentProposal" | |
}, | |
{ | |
"name": "CreateGovernance" | |
}, | |
{ | |
"name": "CreateProposal" | |
}, | |
{ | |
"name": "SignOffProposal" | |
} | |
] | |
} | |
}, | |
{ | |
"name": "Rounding", | |
"type": { | |
"kind": "enum", | |
"variants": [ | |
{ | |
"name": "Up" | |
}, | |
{ | |
"name": "Down" | |
} | |
] | |
} | |
} | |
], | |
"events": [ | |
{ | |
"name": "StakePoolCreated", | |
"fields": [ | |
{ | |
"name": "stakePool", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "authority", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "seed", | |
"type": "string", | |
"index": false | |
}, | |
{ | |
"name": "tokenMint", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "config", | |
"type": { | |
"defined": "PoolConfig" | |
}, | |
"index": false | |
}, | |
{ | |
"name": "maxVoterWeight", | |
"type": "u64", | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "StakeAccountCreated", | |
"fields": [ | |
{ | |
"name": "stakePool", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "stakeAccount", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "owner", | |
"type": "publicKey", | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "StakeAdded", | |
"fields": [ | |
{ | |
"name": "stakePool", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "stakeAccount", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "owner", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "depositor", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "stakedAmount", | |
"type": { | |
"defined": "FullAmount" | |
}, | |
"index": false | |
}, | |
{ | |
"name": "poolNote", | |
"type": { | |
"defined": "StakePoolNote" | |
}, | |
"index": false | |
}, | |
{ | |
"name": "accountNote", | |
"type": { | |
"defined": "StakeAccountNote" | |
}, | |
"index": false | |
}, | |
{ | |
"name": "voterWeight", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "maxVoterWeight", | |
"type": "u64", | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "StakeUnbonded", | |
"fields": [ | |
{ | |
"name": "stakePool", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "stakeAccount", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "unbondingAccount", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "owner", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "unbondedAmount", | |
"type": { | |
"defined": "FullAmount" | |
}, | |
"index": false | |
}, | |
{ | |
"name": "unbondedAt", | |
"type": "i64", | |
"index": false | |
}, | |
{ | |
"name": "poolNote", | |
"type": { | |
"defined": "StakePoolNote" | |
}, | |
"index": false | |
}, | |
{ | |
"name": "accountNote", | |
"type": { | |
"defined": "StakeAccountNote" | |
}, | |
"index": false | |
}, | |
{ | |
"name": "voterWeight", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "maxVoterWeight", | |
"type": "u64", | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "UnbondCancelled", | |
"fields": [ | |
{ | |
"name": "stakePool", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "stakeAccount", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "unbondingAccount", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "owner", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "cancelledAmount", | |
"type": { | |
"defined": "FullAmount" | |
}, | |
"index": false | |
}, | |
{ | |
"name": "poolNote", | |
"type": { | |
"defined": "StakePoolNote" | |
}, | |
"index": false | |
}, | |
{ | |
"name": "accountNote", | |
"type": { | |
"defined": "StakeAccountNote" | |
}, | |
"index": false | |
}, | |
{ | |
"name": "voterWeight", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "maxVoterWeight", | |
"type": "u64", | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "UnbondedWithdrawn", | |
"fields": [ | |
{ | |
"name": "stakePool", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "stakeAccount", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "owner", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "withdrawnAmount", | |
"type": { | |
"defined": "FullAmount" | |
}, | |
"index": false | |
}, | |
{ | |
"name": "poolNote", | |
"type": { | |
"defined": "StakePoolNote" | |
}, | |
"index": false | |
}, | |
{ | |
"name": "accountNote", | |
"type": { | |
"defined": "StakeAccountNote" | |
}, | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "BondedWithdrawn", | |
"fields": [ | |
{ | |
"name": "stakePool", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "withdrawnAmount", | |
"type": "u64", | |
"index": false | |
}, | |
{ | |
"name": "poolNote", | |
"type": { | |
"defined": "StakePoolNote" | |
}, | |
"index": false | |
} | |
] | |
}, | |
{ | |
"name": "StakeAccountClosed", | |
"fields": [ | |
{ | |
"name": "stakeAccount", | |
"type": "publicKey", | |
"index": false | |
}, | |
{ | |
"name": "owner", | |
"type": "publicKey", | |
"index": false | |
} | |
] | |
} | |
], | |
"errors": [ | |
{ | |
"code": 13100, | |
"name": "InsufficientStake" | |
}, | |
{ | |
"code": 13101, | |
"name": "InvalidTokenOwnerRecord" | |
}, | |
{ | |
"code": 13102, | |
"name": "OutstandingVotes" | |
}, | |
{ | |
"code": 13103, | |
"name": "NotYetUnbonded" | |
}, | |
{ | |
"code": 13104, | |
"name": "StakeRemaining" | |
}, | |
{ | |
"code": 13105, | |
"name": "InvalidAmount" | |
} | |
] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment