/** * Program IDL in camelCase format in order to be used in JS/TS. * * Note that this is only a type helper and is not the actual IDL. The original * IDL can be found at `target/idl/glam_policies.json`. */ export type GlamPolicies = { "address": "po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY", "metadata": { "name": "glamPolicies", "version": "1.0.1", "spec": "0.1.0", "description": "GLAM policies program" }, "instructions": [ { "name": "closeExtraMetasAccount", "discriminator": [ 67, 72, 24, 239, 222, 207, 240, 177 ], "accounts": [ { "name": "extraMetasAccount", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [ 101, 120, 116, 114, 97, 45, 97, 99, 99, 111, 117, 110, 116, 45, 109, 101, 116, 97, 115 ] }, { "kind": "account", "path": "mint" } ] } }, { "name": "mint" }, { "name": "authority", "writable": true, "signer": true }, { "name": "destination", "writable": true }, { "name": "systemProgram", "address": "11111111111111111111111111111111" } ], "args": [] }, { "name": "closePolicy", "discriminator": [ 55, 42, 248, 229, 222, 138, 26, 252 ], "accounts": [ { "name": "policyAccount", "docs": [ "lamports will be refunded to the owner" ], "writable": true }, { "name": "signer", "writable": true, "signer": true }, { "name": "subject", "writable": true, "relations": [ "policyAccount" ] }, { "name": "systemProgram", "address": "11111111111111111111111111111111" } ], "args": [] }, { "name": "createPolicy", "discriminator": [ 27, 81, 33, 27, 196, 103, 246, 53 ], "accounts": [ { "name": "policyAccount", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [ 97, 99, 99, 111, 117, 110, 116, 45, 112, 111, 108, 105, 99, 121 ] }, { "kind": "account", "path": "subjectTokenAccount" } ] } }, { "name": "authority", "docs": [ "Must be the mint authority or permanent delegate" ], "writable": true, "signer": true }, { "name": "subject" }, { "name": "payer", "writable": true, "signer": true }, { "name": "mint" }, { "name": "subjectTokenAccount" }, { "name": "systemProgram", "address": "11111111111111111111111111111111" } ], "args": [ { "name": "lockedUntil", "type": "u64" }, { "name": "timeUnit", "type": { "defined": { "name": "timeUnit" } } } ] }, { "name": "execute", "discriminator": [ 105, 37, 101, 197, 75, 251, 102, 26 ], "accounts": [ { "name": "srcAccount" }, { "name": "mint" }, { "name": "dstAccount" }, { "name": "srcAccountAuthority" }, { "name": "extraMetasAccount", "pda": { "seeds": [ { "kind": "const", "value": [ 101, 120, 116, 114, 97, 45, 97, 99, 99, 111, 117, 110, 116, 45, 109, 101, 116, 97, 115 ] }, { "kind": "account", "path": "mint" } ] } }, { "name": "srcPolicyAccount" }, { "name": "dstPolicyAccount" } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "initializeExtraMetasAccount", "discriminator": [ 43, 34, 13, 49, 167, 88, 235, 235 ], "accounts": [ { "name": "extraMetasAccount", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [ 101, 120, 116, 114, 97, 45, 97, 99, 99, 111, 117, 110, 116, 45, 109, 101, 116, 97, 115 ] }, { "kind": "account", "path": "mint" } ] } }, { "name": "mint" }, { "name": "authority", "writable": true, "signer": true }, { "name": "payer", "writable": true, "signer": true }, { "name": "systemProgram", "address": "11111111111111111111111111111111" } ], "args": [ { "name": "metas", "type": { "vec": { "defined": { "name": "anchorExtraAccountMeta" } } } } ] } ], "accounts": [ { "name": "policyAccount", "discriminator": [ 218, 201, 183, 164, 156, 127, 81, 175 ] } ], "errors": [ { "code": 6000, "name": "invalidSourcePolicyAccount", "msg": "Invalid source policy account" }, { "code": 6001, "name": "lockUp", "msg": "Policy violation: lock-up has not expired" }, { "code": 6002, "name": "notAuthorized", "msg": "Not authorized" } ], "types": [ { "name": "anchorExtraAccountMeta", "type": { "kind": "struct", "fields": [ { "name": "discriminator", "type": "u8" }, { "name": "addressConfig", "type": { "array": [ "u8", 32 ] } }, { "name": "isSigner", "type": "bool" }, { "name": "isWritable", "type": "bool" } ] } }, { "name": "policyAccount", "type": { "kind": "struct", "fields": [ { "name": "authority", "type": "pubkey" }, { "name": "subject", "type": "pubkey" }, { "name": "mint", "type": "pubkey" }, { "name": "tokenAccount", "type": "pubkey" }, { "name": "lockedUntil", "type": "u64" }, { "name": "timeUnit", "type": { "defined": { "name": "timeUnit" } } } ] } }, { "name": "timeUnit", "type": { "kind": "enum", "variants": [ { "name": "second" }, { "name": "slot" } ] } } ] };