export type CardinalUseInvalidator = { version: "4.6.0"; name: "cardinal_use_invalidator"; instructions: [ { name: "init"; accounts: [ { name: "tokenManager"; isMut: false; isSigner: false; }, { name: "useInvalidator"; isMut: true; isSigner: false; }, { name: "issuer"; isMut: true; isSigner: true; }, { name: "payer"; isMut: true; isSigner: true; }, { name: "systemProgram"; isMut: false; isSigner: false; } ]; args: [ { name: "ix"; type: { defined: "InitIx"; }; } ]; }, { name: "incrementUsages"; accounts: [ { name: "tokenManager"; isMut: false; isSigner: false; }, { name: "useInvalidator"; isMut: true; isSigner: false; }, { name: "recipientTokenAccount"; isMut: false; isSigner: false; }, { name: "user"; isMut: false; isSigner: true; } ]; args: [ { name: "numUsages"; type: "u64"; } ]; }, { name: "extendUsages"; accounts: [ { name: "tokenManager"; isMut: false; isSigner: false; }, { name: "useInvalidator"; isMut: true; isSigner: false; }, { name: "paymentManager"; isMut: true; isSigner: false; }, { name: "paymentTokenAccount"; isMut: true; isSigner: false; }, { name: "feeCollectorTokenAccount"; isMut: true; isSigner: false; }, { name: "payer"; isMut: true; isSigner: true; }, { name: "payerTokenAccount"; isMut: true; isSigner: false; }, { name: "tokenProgram"; isMut: false; isSigner: false; }, { name: "cardinalPaymentManager"; isMut: false; isSigner: false; } ]; args: [ { name: "paymentAmount"; type: "u64"; } ]; }, { name: "invalidate"; accounts: [ { name: "tokenManager"; isMut: true; isSigner: false; }, { name: "useInvalidator"; isMut: true; isSigner: false; }, { name: "invalidator"; isMut: true; isSigner: false; }, { name: "cardinalTokenManager"; isMut: false; isSigner: false; }, { name: "tokenProgram"; isMut: false; isSigner: false; }, { name: "tokenManagerTokenAccount"; isMut: true; isSigner: false; }, { name: "mint"; isMut: true; isSigner: false; }, { name: "recipientTokenAccount"; isMut: true; isSigner: false; }, { name: "rent"; isMut: false; isSigner: false; } ]; args: []; }, { name: "close"; accounts: [ { name: "tokenManager"; isMut: false; isSigner: false; }, { name: "useInvalidator"; isMut: true; isSigner: false; }, { name: "collector"; isMut: true; isSigner: false; }, { name: "closer"; isMut: true; isSigner: true; } ]; args: []; } ]; accounts: [ { name: "useInvalidator"; type: { kind: "struct"; fields: [ { name: "bump"; type: "u8"; }, { name: "usages"; type: "u64"; }, { name: "tokenManager"; type: "publicKey"; }, { name: "paymentManager"; type: "publicKey"; }, { name: "collector"; type: "publicKey"; }, { name: "useAuthority"; type: { option: "publicKey"; }; }, { name: "totalUsages"; type: { option: "u64"; }; }, { name: "extensionPaymentAmount"; type: { option: "u64"; }; }, { name: "extensionPaymentMint"; type: { option: "publicKey"; }; }, { name: "extensionUsages"; type: { option: "u64"; }; }, { name: "maxUsages"; type: { option: "u64"; }; } ]; }; } ]; types: [ { name: "InitIx"; type: { kind: "struct"; fields: [ { name: "collector"; type: "publicKey"; }, { name: "paymentManager"; type: "publicKey"; }, { name: "totalUsages"; type: { option: "u64"; }; }, { name: "maxUsages"; type: { option: "u64"; }; }, { name: "useAuthority"; type: { option: "publicKey"; }; }, { name: "extensionPaymentAmount"; type: { option: "u64"; }; }, { name: "extensionPaymentMint"; type: { option: "publicKey"; }; }, { name: "extensionUsages"; type: { option: "u64"; }; } ]; }; } ]; errors: [ { code: 6000; name: "InvalidPaymentTokenAccount"; msg: "Token account not owned by the use invalidator"; }, { code: 6001; name: "InvalidPayerTokenAccount"; msg: "Token account not owned by the issuer"; }, { code: 6002; name: "InvalidTokenAccount"; msg: "Token account not owned by the issuer"; }, { code: 6003; name: "InvalidUser"; msg: "User is not permitted to use"; }, { code: 6004; name: "InvalidTokenManager"; msg: "Invalid token manager for this use invalidator"; }, { code: 6005; name: "InsufficientUsages"; msg: "Usages at the maximum"; }, { code: 6006; name: "InvalidUseInvalidator"; msg: "Invalid use invalidator"; }, { code: 6007; name: "MaxUsagesReached"; msg: "Max usages reached"; }, { code: 6008; name: "InvalidExtensionAmount"; msg: "Extension must be a multiple of extension payment"; }, { code: 6009; name: "InvalidPaymentManagerTokenAccount"; msg: "Token account incorrect mint"; }, { code: 6010; name: "InvalidCollector"; msg: "Invalid collector"; }, { code: 6011; name: "InvalidPaymentManagerProgram"; msg: "Invalid payment manager program"; }, { code: 6012; name: "InvalidPaymentManager"; msg: "Invalid payment manager"; }, { code: 6013; name: "InvalidPaymentMint"; msg: "Invalid payment mint"; }, { code: 6014; name: "InvalidMint"; msg: "Invalid mint"; }, { code: 6015; name: "InvalidIssuer"; msg: "Invalid issuer"; }, { code: 6016; name: "ProtocolsShutdown"; msg: "Cardinal Protocols are shutting down. Please read latest twitter post for more information"; } ]; }; export declare const IDL: CardinalUseInvalidator; //# sourceMappingURL=cardinal_use_invalidator.d.ts.map