/** * 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_mint.json`. */ export type GlamMint = { "address": "GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh", "metadata": { "name": "glamMint", "version": "1.0.3", "spec": "0.1.0", "description": "GLAM mint program" }, "instructions": [ { "name": "burnTokens", "discriminator": [ 76, 15, 51, 254, 229, 215, 121, 66 ], "accounts": [ { "name": "glamState" }, { "name": "glamSigner", "writable": true, "signer": true }, { "name": "glamMint", "writable": true }, { "name": "fromTokenAccount", "writable": true }, { "name": "from" }, { "name": "token2022Program", "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb" } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "cancel", "discriminator": [ 232, 219, 223, 41, 219, 236, 220, 190 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamMint", "writable": true }, { "name": "glamEscrow", "pda": { "seeds": [ { "kind": "const", "value": [ 101, 115, 99, 114, 111, 119 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "requestQueue", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [ 114, 101, 113, 117, 101, 115, 116, 45, 113, 117, 101, 117, 101 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "signer", "writable": true, "signer": true }, { "name": "user" }, { "name": "recoverTokenMint" }, { "name": "userAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "user" }, { "kind": "account", "path": "recoverTokenProgram" }, { "kind": "account", "path": "recoverTokenMint" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "escrowAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "glamEscrow" }, { "kind": "account", "path": "recoverTokenProgram" }, { "kind": "account", "path": "recoverTokenMint" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "systemProgram", "address": "11111111111111111111111111111111" }, { "name": "recoverTokenProgram" }, { "name": "associatedTokenProgram", "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL" } ], "args": [] }, { "name": "claim", "discriminator": [ 62, 198, 214, 193, 213, 159, 108, 210 ], "accounts": [ { "name": "glamState" }, { "name": "glamMint", "writable": true }, { "name": "glamEscrow", "pda": { "seeds": [ { "kind": "const", "value": [ 101, 115, 99, 114, 111, 119 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "requestQueue", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [ 114, 101, 113, 117, 101, 115, 116, 45, 113, 117, 101, 117, 101 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "signer", "writable": true, "signer": true }, { "name": "claimUser" }, { "name": "claimTokenMint" }, { "name": "claimUserAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "claimUser" }, { "kind": "account", "path": "claimTokenProgram" }, { "kind": "account", "path": "claimTokenMint" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "escrowAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "glamEscrow" }, { "kind": "account", "path": "claimTokenProgram" }, { "kind": "account", "path": "claimTokenMint" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "claimUserPolicy", "writable": true, "optional": true }, { "name": "systemProgram", "address": "11111111111111111111111111111111" }, { "name": "claimTokenProgram" }, { "name": "glamPoliciesProgram", "address": "po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY" }, { "name": "associatedTokenProgram", "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL" } ], "args": [] }, { "name": "claimFees", "discriminator": [ 82, 251, 233, 156, 12, 52, 184, 202 ], "accounts": [ { "name": "glamState" }, { "name": "glamVault", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [ 118, 97, 117, 108, 116 ] }, { "kind": "account", "path": "glamState" } ], "program": { "kind": "const", "value": [ 227, 199, 235, 230, 176, 132, 243, 117, 43, 131, 173, 18, 78, 255, 26, 50, 209, 135, 86, 219, 140, 126, 61, 255, 0, 218, 252, 224, 172, 8, 223, 207 ] } } }, { "name": "glamMint", "writable": true }, { "name": "glamEscrow", "pda": { "seeds": [ { "kind": "const", "value": [ 101, 115, 99, 114, 111, 119 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "escrowMintAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "glamEscrow" }, { "kind": "account", "path": "token2022Program" }, { "kind": "account", "path": "glamMint" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "signer", "writable": true, "signer": true }, { "name": "depositAsset" }, { "name": "vaultDepositAta", "docs": [ "To pay out fees" ], "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "glamVault" }, { "kind": "account", "path": "depositTokenProgram" }, { "kind": "account", "path": "depositAsset" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "protocolFeeAuthority", "docs": [ "To receive protocol fee" ] }, { "name": "protocolFeeAuthorityAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "protocolFeeAuthority" }, { "kind": "account", "path": "depositTokenProgram" }, { "kind": "account", "path": "depositAsset" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "managerFeeAuthority", "docs": [ "To receive manager fee" ] }, { "name": "managerFeeAuthorityAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "managerFeeAuthority" }, { "kind": "account", "path": "depositTokenProgram" }, { "kind": "account", "path": "depositAsset" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "glamConfig", "pda": { "seeds": [ { "kind": "const", "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ] } ], "program": { "kind": "const", "value": [ 10, 11, 0, 83, 72, 16, 46, 144, 46, 42, 79, 22, 157, 123, 21, 242, 192, 146, 1, 78, 88, 59, 102, 9, 190, 226, 92, 189, 187, 232, 83, 220 ] } } }, { "name": "glamProtocolProgram", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" }, { "name": "systemProgram", "address": "11111111111111111111111111111111" }, { "name": "associatedTokenProgram", "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL" }, { "name": "depositTokenProgram" }, { "name": "token2022Program", "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb" } ], "args": [] }, { "name": "closeMint", "discriminator": [ 149, 251, 157, 212, 65, 181, 235, 129 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamSigner", "writable": true, "signer": true }, { "name": "glamMint", "writable": true }, { "name": "requestQueue", "writable": true, "optional": true, "pda": { "seeds": [ { "kind": "const", "value": [ 114, 101, 113, 117, 101, 115, 116, 45, 113, 117, 101, 117, 101 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "extraMetasAccount", "writable": true }, { "name": "systemProgram", "address": "11111111111111111111111111111111" }, { "name": "policiesProgram", "address": "po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY" }, { "name": "token2022Program", "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb" }, { "name": "glamProtocol", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" } ], "args": [] }, { "name": "crystallizeFees", "discriminator": [ 78, 0, 111, 26, 7, 12, 41, 249 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamEscrow", "pda": { "seeds": [ { "kind": "const", "value": [ 101, 115, 99, 114, 111, 119 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "glamMint", "writable": true }, { "name": "escrowMintAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "glamEscrow" }, { "kind": "account", "path": "token2022Program" }, { "kind": "account", "path": "glamMint" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "signer", "writable": true, "signer": true }, { "name": "glamProtocolProgram", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" }, { "name": "token2022Program", "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb" } ], "args": [] }, { "name": "emergencyUpdateMint", "discriminator": [ 141, 210, 26, 160, 120, 140, 28, 239 ], "accounts": [ { "name": "glamState" }, { "name": "glamSigner", "writable": true, "signer": true }, { "name": "glamMint" }, { "name": "requestQueue", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [ 114, 101, 113, 117, 101, 115, 116, 45, 113, 117, 101, 117, 101 ] }, { "kind": "account", "path": "glamMint" } ] } } ], "args": [ { "name": "args", "type": { "defined": { "name": "emergencyUpdateMintArgs" } } } ] }, { "name": "forceTransferTokens", "discriminator": [ 185, 34, 78, 211, 192, 13, 160, 37 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamSigner", "writable": true, "signer": true }, { "name": "glamMint", "writable": true }, { "name": "fromTokenAccount", "writable": true }, { "name": "toAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "to" }, { "kind": "account", "path": "token2022Program" }, { "kind": "account", "path": "glamMint" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "from" }, { "name": "to" }, { "name": "toPolicyAccount", "writable": true, "optional": true }, { "name": "systemProgram", "address": "11111111111111111111111111111111" }, { "name": "token2022Program", "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb" }, { "name": "policiesProgram", "address": "po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY" } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "fulfill", "discriminator": [ 143, 2, 52, 206, 174, 164, 247, 72 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamVault", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [ 118, 97, 117, 108, 116 ] }, { "kind": "account", "path": "glamState" } ], "program": { "kind": "const", "value": [ 227, 199, 235, 230, 176, 132, 243, 117, 43, 131, 173, 18, 78, 255, 26, 50, 209, 135, 86, 219, 140, 126, 61, 255, 0, 218, 252, 224, 172, 8, 223, 207 ] } } }, { "name": "glamMint", "writable": true }, { "name": "glamEscrow", "pda": { "seeds": [ { "kind": "const", "value": [ 101, 115, 99, 114, 111, 119 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "requestQueue", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [ 114, 101, 113, 117, 101, 115, 116, 45, 113, 117, 101, 117, 101 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "signer", "writable": true, "signer": true }, { "name": "escrowMintAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "glamEscrow" }, { "kind": "account", "path": "token2022Program" }, { "kind": "account", "path": "glamMint" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "asset" }, { "name": "vaultAssetAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "glamVault" }, { "kind": "account", "path": "depositTokenProgram" }, { "kind": "account", "path": "asset" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "escrowAssetAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "glamEscrow" }, { "kind": "account", "path": "depositTokenProgram" }, { "kind": "account", "path": "asset" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "systemProgram", "address": "11111111111111111111111111111111" }, { "name": "depositTokenProgram" }, { "name": "token2022Program", "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb" }, { "name": "associatedTokenProgram", "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL" }, { "name": "glamProtocolProgram", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" } ], "args": [ { "name": "limit", "type": { "option": "u32" } } ] }, { "name": "initializeMint", "docs": [ "Initialize a new GLAM mint with extensions and metadata.", "", "- `mint_model` - Configuration model containing mint parameters and metadata", "- `created_key` - 8-byte key used in the GLAM state PDA derivation", "- `account_type` - Fund (for tokenized vault mint) or Mint", "- `decimals` - Decimals of new mint" ], "discriminator": [ 209, 42, 195, 4, 129, 85, 209, 44 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "signer", "writable": true, "signer": true }, { "name": "newMint", "writable": true }, { "name": "requestQueue", "writable": true, "optional": true, "pda": { "seeds": [ { "kind": "const", "value": [ 114, 101, 113, 117, 101, 115, 116, 45, 113, 117, 101, 117, 101 ] }, { "kind": "account", "path": "newMint" } ] } }, { "name": "extraMetasAccount", "writable": true }, { "name": "baseAssetMint" }, { "name": "systemProgram", "address": "11111111111111111111111111111111" }, { "name": "token2022Program", "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb" }, { "name": "policiesProgram", "address": "po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY" }, { "name": "glamProtocol", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" } ], "args": [ { "name": "mintModel", "type": { "defined": { "name": "mintModel" } } }, { "name": "createdKey", "type": { "array": [ "u8", 8 ] } }, { "name": "accountType", "type": { "defined": { "name": "accountType" } } }, { "name": "decimals", "type": { "option": "u8" } } ] }, { "name": "mintTokens", "discriminator": [ 59, 132, 24, 246, 122, 39, 8, 243 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamSigner", "writable": true, "signer": true }, { "name": "glamMint", "writable": true }, { "name": "mintTo", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "recipient" }, { "kind": "account", "path": "token2022Program" }, { "kind": "account", "path": "glamMint" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "recipient", "writable": true }, { "name": "policyAccount", "writable": true, "optional": true }, { "name": "systemProgram", "address": "11111111111111111111111111111111" }, { "name": "token2022Program", "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb" }, { "name": "policiesProgram", "address": "po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY" } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "priceDriftUsers", "docs": [ "Extra accounts for pricing N drift users under the same user stats:", "- user_stats x 1", "- drift_user x N", "- markets and oracles used by all drift users (no specific order)", "", "Clients must pre-refresh any stale Drift spot market cumulative interest by", "prepending Drift `update_spot_market_cumulative_interest` instructions for the", "referenced spot markets. Calls will fail with `StaleDriftInterest` if a required", "spot market's cumulative interest is too old." ], "discriminator": [ 12, 5, 143, 51, 101, 81, 200, 150 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamVault", "pda": { "seeds": [ { "kind": "const", "value": [ 118, 97, 117, 108, 116 ] }, { "kind": "account", "path": "glamState" } ], "program": { "kind": "const", "value": [ 227, 199, 235, 230, 176, 132, 243, 117, 43, 131, 173, 18, 78, 255, 26, 50, 209, 135, 86, 219, 140, 126, 61, 255, 0, 218, 252, 224, 172, 8, 223, 207 ] } } }, { "name": "signer", "writable": true, "signer": true }, { "name": "solUsdOracle" }, { "name": "baseAssetOracle" }, { "name": "integrationAuthority", "pda": { "seeds": [ { "kind": "const", "value": [ 105, 110, 116, 101, 103, 114, 97, 116, 105, 111, 110, 45, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "glamConfig", "pda": { "seeds": [ { "kind": "const", "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ] } ], "program": { "kind": "const", "value": [ 10, 11, 0, 83, 72, 16, 46, 144, 46, 42, 79, 22, 157, 123, 21, 242, 192, 146, 1, 78, 88, 59, 102, 9, 190, 226, 92, 189, 187, 232, 83, 220 ] } } }, { "name": "glamProtocol", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" }, { "name": "eventAuthority", "optional": true, "pda": { "seeds": [ { "kind": "const", "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "eventProgram", "optional": true, "address": "GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh" } ], "args": [ { "name": "numUsers", "type": "u8" } ] }, { "name": "priceDriftVaultDepositors", "docs": [ "Extra accounts for pricing N vault depositors:", "- (vault_depositor, drift_vault, drift_user) x N", "- spot_market used by drift users of vaults (no specific order)", "- perp markets used by drift users of vaults (no specific order)", "- oracles of spot markets and perp markets (no specific order)", "", "Clients must pre-refresh any stale Drift spot market cumulative interest by", "prepending Drift `update_spot_market_cumulative_interest` instructions for the", "referenced spot markets. Calls will fail with `StaleDriftInterest` if a required", "spot market's cumulative interest is too old." ], "discriminator": [ 234, 16, 238, 70, 189, 23, 98, 160 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamVault", "pda": { "seeds": [ { "kind": "const", "value": [ 118, 97, 117, 108, 116 ] }, { "kind": "account", "path": "glamState" } ], "program": { "kind": "const", "value": [ 227, 199, 235, 230, 176, 132, 243, 117, 43, 131, 173, 18, 78, 255, 26, 50, 209, 135, 86, 219, 140, 126, 61, 255, 0, 218, 252, 224, 172, 8, 223, 207 ] } } }, { "name": "signer", "writable": true, "signer": true }, { "name": "solUsdOracle" }, { "name": "baseAssetOracle" }, { "name": "integrationAuthority", "pda": { "seeds": [ { "kind": "const", "value": [ 105, 110, 116, 101, 103, 114, 97, 116, 105, 111, 110, 45, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "glamConfig", "pda": { "seeds": [ { "kind": "const", "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ] } ], "program": { "kind": "const", "value": [ 10, 11, 0, 83, 72, 16, 46, 144, 46, 42, 79, 22, 157, 123, 21, 242, 192, 146, 1, 78, 88, 59, 102, 9, 190, 226, 92, 189, 187, 232, 83, 220 ] } } }, { "name": "glamProtocol", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" }, { "name": "eventAuthority", "optional": true, "pda": { "seeds": [ { "kind": "const", "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "eventProgram", "optional": true, "address": "GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh" } ], "args": [ { "name": "numVaultDepositors", "type": "u8" }, { "name": "numSpotMarkets", "type": "u8" }, { "name": "numPerpMarkets", "type": "u8" } ] }, { "name": "priceKaminoObligations", "docs": [ "Prices Kamino obligations. Reserves and obligations must be refreshed in the same slot before calling this ix.", "", "Extra accounts for pricing N kamino obligations:", "- obligations x N" ], "discriminator": [ 166, 110, 234, 179, 240, 179, 69, 246 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamVault", "pda": { "seeds": [ { "kind": "const", "value": [ 118, 97, 117, 108, 116 ] }, { "kind": "account", "path": "glamState" } ], "program": { "kind": "const", "value": [ 227, 199, 235, 230, 176, 132, 243, 117, 43, 131, 173, 18, 78, 255, 26, 50, 209, 135, 86, 219, 140, 126, 61, 255, 0, 218, 252, 224, 172, 8, 223, 207 ] } } }, { "name": "signer", "writable": true, "signer": true }, { "name": "solUsdOracle" }, { "name": "baseAssetOracle" }, { "name": "integrationAuthority", "pda": { "seeds": [ { "kind": "const", "value": [ 105, 110, 116, 101, 103, 114, 97, 116, 105, 111, 110, 45, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "glamConfig", "pda": { "seeds": [ { "kind": "const", "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ] } ], "program": { "kind": "const", "value": [ 10, 11, 0, 83, 72, 16, 46, 144, 46, 42, 79, 22, 157, 123, 21, 242, 192, 146, 1, 78, 88, 59, 102, 9, 190, 226, 92, 189, 187, 232, 83, 220 ] } } }, { "name": "glamProtocol", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" }, { "name": "eventAuthority", "optional": true, "pda": { "seeds": [ { "kind": "const", "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "eventProgram", "optional": true, "address": "GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh" } ], "args": [] }, { "name": "priceKaminoVaultShares", "docs": [ "Prices Kamino vault shares.", "- `num_vaults` Number of kamino vaults to price.", "", "Extra accounts for pricing N kamino vault shares:", "- (kvault_share_ata, kvault_share_mint, kvault_state, kvault_deposit_token_oracle) x N", "- reserve x M", "- M = number of reserves used by all kvaults' allocations", "- reserve pubkeys must follow the same order of reserves used by each allocation" ], "discriminator": [ 112, 92, 238, 224, 145, 105, 38, 249 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamVault", "pda": { "seeds": [ { "kind": "const", "value": [ 118, 97, 117, 108, 116 ] }, { "kind": "account", "path": "glamState" } ], "program": { "kind": "const", "value": [ 227, 199, 235, 230, 176, 132, 243, 117, 43, 131, 173, 18, 78, 255, 26, 50, 209, 135, 86, 219, 140, 126, 61, 255, 0, 218, 252, 224, 172, 8, 223, 207 ] } } }, { "name": "signer", "writable": true, "signer": true }, { "name": "solUsdOracle" }, { "name": "baseAssetOracle" }, { "name": "integrationAuthority", "pda": { "seeds": [ { "kind": "const", "value": [ 105, 110, 116, 101, 103, 114, 97, 116, 105, 111, 110, 45, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "glamConfig", "pda": { "seeds": [ { "kind": "const", "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ] } ], "program": { "kind": "const", "value": [ 10, 11, 0, 83, 72, 16, 46, 144, 46, 42, 79, 22, 157, 123, 21, 242, 192, 146, 1, 78, 88, 59, 102, 9, 190, 226, 92, 189, 187, 232, 83, 220 ] } } }, { "name": "glamProtocol", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" }, { "name": "eventAuthority", "optional": true, "pda": { "seeds": [ { "kind": "const", "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "eventProgram", "optional": true, "address": "GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh" } ], "args": [ { "name": "numVaults", "type": "u8" } ] }, { "name": "priceOrcaWhirlpoolPositions", "docs": [ "Prices Orca Whirlpools positions registered as vault external positions.", "", "Remaining accounts for each position:", "- position", "- position_token_account", "- whirlpool", "- tick_array_lower", "- tick_array_upper", "- token_mint_a", "- token_oracle_a", "- token_mint_b", "- token_oracle_b", "- optional reward_mint, reward_oracle pairs for initialized rewards with nonzero value" ], "discriminator": [ 3, 81, 117, 34, 5, 238, 158, 232 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamVault", "pda": { "seeds": [ { "kind": "const", "value": [ 118, 97, 117, 108, 116 ] }, { "kind": "account", "path": "glamState" } ], "program": { "kind": "const", "value": [ 227, 199, 235, 230, 176, 132, 243, 117, 43, 131, 173, 18, 78, 255, 26, 50, 209, 135, 86, 219, 140, 126, 61, 255, 0, 218, 252, 224, 172, 8, 223, 207 ] } } }, { "name": "signer", "writable": true, "signer": true }, { "name": "solUsdOracle" }, { "name": "baseAssetOracle" }, { "name": "integrationAuthority", "pda": { "seeds": [ { "kind": "const", "value": [ 105, 110, 116, 101, 103, 114, 97, 116, 105, 111, 110, 45, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "glamConfig", "pda": { "seeds": [ { "kind": "const", "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ] } ], "program": { "kind": "const", "value": [ 10, 11, 0, 83, 72, 16, 46, 144, 46, 42, 79, 22, 157, 123, 21, 242, 192, 146, 1, 78, 88, 59, 102, 9, 190, 226, 92, 189, 187, 232, 83, 220 ] } } }, { "name": "glamProtocol", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" }, { "name": "eventAuthority", "optional": true, "pda": { "seeds": [ { "kind": "const", "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "eventProgram", "optional": true, "address": "GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh" } ], "args": [ { "name": "numPositions", "type": "u8" } ] }, { "name": "priceSingleAssetVault", "docs": [ "Prices a single asset vault." ], "discriminator": [ 93, 213, 219, 25, 38, 74, 9, 167 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamVault", "pda": { "seeds": [ { "kind": "const", "value": [ 118, 97, 117, 108, 116 ] }, { "kind": "account", "path": "glamState" } ], "program": { "kind": "const", "value": [ 227, 199, 235, 230, 176, 132, 243, 117, 43, 131, 173, 18, 78, 255, 26, 50, 209, 135, 86, 219, 140, 126, 61, 255, 0, 218, 252, 224, 172, 8, 223, 207 ] } } }, { "name": "signer", "writable": true, "signer": true }, { "name": "baseAssetAta" }, { "name": "integrationAuthority", "pda": { "seeds": [ { "kind": "const", "value": [ 105, 110, 116, 101, 103, 114, 97, 116, 105, 111, 110, 45, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "glamProtocol", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" }, { "name": "eventAuthority", "optional": true, "pda": { "seeds": [ { "kind": "const", "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "eventProgram", "optional": true, "address": "GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh" } ], "args": [] }, { "name": "priceVaultTokens", "docs": [ "Prices vault SOL balance and tokens it holds.", "", "Args:", "- `denom`: Denomination of the price.", "- `agg_indexes`: Indexes of the aggregation oracles for the tokens (must follow the same order of mints in extra accounts). If aggregation oracle is not used for token #`i`, `agg_indexes[i]` should be set to -1.", "", "Extra accounts for pricing N tokens:", "- (ata, mint, oracle) x N", "- optional oracle mapping (only add it if any token uses an agg oracle)" ], "discriminator": [ 54, 42, 16, 199, 20, 183, 50, 137 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamVault", "pda": { "seeds": [ { "kind": "const", "value": [ 118, 97, 117, 108, 116 ] }, { "kind": "account", "path": "glamState" } ], "program": { "kind": "const", "value": [ 227, 199, 235, 230, 176, 132, 243, 117, 43, 131, 173, 18, 78, 255, 26, 50, 209, 135, 86, 219, 140, 126, 61, 255, 0, 218, 252, 224, 172, 8, 223, 207 ] } } }, { "name": "signer", "writable": true, "signer": true }, { "name": "solUsdOracle" }, { "name": "baseAssetOracle" }, { "name": "integrationAuthority", "pda": { "seeds": [ { "kind": "const", "value": [ 105, 110, 116, 101, 103, 114, 97, 116, 105, 111, 110, 45, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "glamConfig", "pda": { "seeds": [ { "kind": "const", "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ] } ], "program": { "kind": "const", "value": [ 10, 11, 0, 83, 72, 16, 46, 144, 46, 42, 79, 22, 157, 123, 21, 242, 192, 146, 1, 78, 88, 59, 102, 9, 190, 226, 92, 189, 187, 232, 83, 220 ] } } }, { "name": "glamProtocol", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" }, { "name": "eventAuthority", "optional": true, "pda": { "seeds": [ { "kind": "const", "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "eventProgram", "optional": true, "address": "GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh" } ], "args": [ { "name": "aggIndexes", "type": { "vec": { "array": [ "i16", 4 ] } } } ] }, { "name": "queuedRedeem", "discriminator": [ 82, 242, 202, 93, 170, 196, 215, 113 ], "accounts": [ { "name": "glamState" }, { "name": "glamMint", "writable": true }, { "name": "glamEscrow", "pda": { "seeds": [ { "kind": "const", "value": [ 101, 115, 99, 114, 111, 119 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "requestQueue", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [ 114, 101, 113, 117, 101, 115, 116, 45, 113, 117, 101, 117, 101 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "signer", "writable": true, "signer": true }, { "name": "signerMintAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "signer" }, { "kind": "account", "path": "token2022Program" }, { "kind": "account", "path": "glamMint" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "escrowMintAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "glamEscrow" }, { "kind": "account", "path": "token2022Program" }, { "kind": "account", "path": "glamMint" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "systemProgram", "address": "11111111111111111111111111111111" }, { "name": "token2022Program", "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb" }, { "name": "associatedTokenProgram", "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL" } ], "args": [ { "name": "amountIn", "type": "u64" } ] }, { "name": "queuedSubscribe", "discriminator": [ 107, 180, 212, 63, 146, 0, 159, 255 ], "accounts": [ { "name": "glamState" }, { "name": "glamMint", "writable": true }, { "name": "glamEscrow", "pda": { "seeds": [ { "kind": "const", "value": [ 101, 115, 99, 114, 111, 119 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "requestQueue", "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [ 114, 101, 113, 117, 101, 115, 116, 45, 113, 117, 101, 117, 101 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "signer", "writable": true, "signer": true }, { "name": "depositAsset" }, { "name": "escrowDepositAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "glamEscrow" }, { "kind": "account", "path": "depositTokenProgram" }, { "kind": "account", "path": "depositAsset" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "signerDepositAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "signer" }, { "kind": "account", "path": "depositTokenProgram" }, { "kind": "account", "path": "depositAsset" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "systemProgram", "address": "11111111111111111111111111111111" }, { "name": "depositTokenProgram" }, { "name": "associatedTokenProgram", "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL" } ], "args": [ { "name": "amountIn", "type": "u64" } ] }, { "name": "setMintPolicy", "discriminator": [ 12, 208, 252, 52, 166, 250, 137, 169 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamSigner", "writable": true, "signer": true }, { "name": "glamProtocolProgram", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" } ], "args": [ { "name": "policy", "type": { "defined": { "name": "mintPolicy" } } } ] }, { "name": "setProtocolFees", "discriminator": [ 49, 143, 189, 18, 56, 206, 158, 226 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamMint" }, { "name": "signer", "writable": true, "signer": true }, { "name": "glamConfig", "pda": { "seeds": [ { "kind": "const", "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ] } ], "program": { "kind": "const", "value": [ 10, 11, 0, 83, 72, 16, 46, 144, 46, 42, 79, 22, 157, 123, 21, 242, 192, 146, 1, 78, 88, 59, 102, 9, 190, 226, 92, 189, 187, 232, 83, 220 ] } } }, { "name": "glamProtocolProgram", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" } ], "args": [ { "name": "baseFeeBps", "type": "u16" }, { "name": "flowFeeBps", "type": "u16" } ] }, { "name": "setTokenAccountsStates", "discriminator": [ 50, 133, 45, 86, 117, 66, 115, 195 ], "accounts": [ { "name": "glamState" }, { "name": "glamSigner", "writable": true, "signer": true }, { "name": "glamMint", "writable": true }, { "name": "token2022Program", "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb" } ], "args": [ { "name": "frozen", "type": "bool" } ] }, { "name": "subscribe", "discriminator": [ 254, 28, 191, 138, 156, 179, 183, 53 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamVault", "pda": { "seeds": [ { "kind": "const", "value": [ 118, 97, 117, 108, 116 ] }, { "kind": "account", "path": "glamState" } ], "program": { "kind": "const", "value": [ 227, 199, 235, 230, 176, 132, 243, 117, 43, 131, 173, 18, 78, 255, 26, 50, 209, 135, 86, 219, 140, 126, 61, 255, 0, 218, 252, 224, 172, 8, 223, 207 ] } } }, { "name": "glamMint", "writable": true }, { "name": "glamEscrow", "pda": { "seeds": [ { "kind": "const", "value": [ 101, 115, 99, 114, 111, 119 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "requestQueue", "pda": { "seeds": [ { "kind": "const", "value": [ 114, 101, 113, 117, 101, 115, 116, 45, 113, 117, 101, 117, 101 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "signer", "writable": true, "signer": true }, { "name": "signerMintAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "signer" }, { "kind": "account", "path": "token2022Program" }, { "kind": "account", "path": "glamMint" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "escrowMintAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "glamEscrow" }, { "kind": "account", "path": "token2022Program" }, { "kind": "account", "path": "glamMint" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "depositAsset" }, { "name": "vaultDepositAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "glamVault" }, { "kind": "account", "path": "depositTokenProgram" }, { "kind": "account", "path": "depositAsset" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "signerDepositAta", "writable": true, "pda": { "seeds": [ { "kind": "account", "path": "signer" }, { "kind": "account", "path": "depositTokenProgram" }, { "kind": "account", "path": "depositAsset" } ], "program": { "kind": "const", "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ] } } }, { "name": "signerPolicy", "writable": true, "optional": true }, { "name": "systemProgram", "address": "11111111111111111111111111111111" }, { "name": "depositTokenProgram" }, { "name": "token2022Program", "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb" }, { "name": "associatedTokenProgram", "address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL" }, { "name": "policiesProgram", "address": "po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY" }, { "name": "glamProtocolProgram", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" } ], "args": [ { "name": "amountIn", "type": "u64" } ] }, { "name": "updateMint", "discriminator": [ 212, 203, 57, 78, 75, 245, 222, 5 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamSigner", "writable": true, "signer": true }, { "name": "glamMint", "writable": true }, { "name": "systemProgram", "address": "11111111111111111111111111111111" }, { "name": "token2022Program", "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb" }, { "name": "glamProtocol", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" } ], "args": [ { "name": "mintModel", "type": { "defined": { "name": "mintModel" } } } ] }, { "name": "updateMintApplyTimelock", "discriminator": [ 223, 241, 80, 24, 120, 25, 82, 134 ], "accounts": [ { "name": "glamState", "writable": true }, { "name": "glamSigner", "writable": true, "signer": true }, { "name": "glamMint", "writable": true }, { "name": "requestQueue", "optional": true, "pda": { "seeds": [ { "kind": "const", "value": [ 114, 101, 113, 117, 101, 115, 116, 45, 113, 117, 101, 117, 101 ] }, { "kind": "account", "path": "glamMint" } ] } }, { "name": "systemProgram", "address": "11111111111111111111111111111111" }, { "name": "token2022Program", "address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb" }, { "name": "glamProtocol", "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz" } ], "args": [] }, { "name": "validateAum", "docs": [ "Validates AUM of the vault and emits AumRecord event." ], "discriminator": [ 101, 15, 233, 89, 134, 123, 224, 99 ], "accounts": [ { "name": "glamState" }, { "name": "signer", "writable": true, "signer": true }, { "name": "eventAuthority", "optional": true, "pda": { "seeds": [ { "kind": "const", "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ] } ] } }, { "name": "eventProgram", "optional": true, "address": "GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh" } ], "args": [] } ], "accounts": [ { "name": "globalConfig", "discriminator": [ 149, 8, 156, 202, 160, 252, 176, 217 ] }, { "name": "requestQueue", "discriminator": [ 172, 124, 172, 253, 233, 63, 70, 234 ] }, { "name": "stateAccount", "discriminator": [ 142, 247, 54, 95, 85, 133, 249, 103 ] } ], "events": [ { "name": "aumRecord", "discriminator": [ 162, 116, 55, 29, 223, 230, 239, 205 ] }, { "name": "pricedProtocolRecord", "discriminator": [ 232, 89, 187, 82, 49, 200, 127, 132 ] } ], "errors": [ { "code": 6000, "name": "invalidAuthority", "msg": "Invalid authority" }, { "code": 6001, "name": "unauthorizedSigner", "msg": "Signer is not authorized" }, { "code": 6002, "name": "actionPaused", "msg": "Requested action is paused" }, { "code": 6003, "name": "invalidAsset", "msg": "Asset not allowed to subscribe" }, { "code": 6004, "name": "maxCapExceeded", "msg": "Max cap exceeded" }, { "code": 6005, "name": "invalidAmount", "msg": "Invalid amount for subscription or redemption" }, { "code": 6006, "name": "newRequestNotAllowed", "msg": "New request is not allowed" }, { "code": 6007, "name": "requestNotClaimable", "msg": "Request is not claimable" }, { "code": 6008, "name": "requestNotCancellable", "msg": "Request is not cancellable" }, { "code": 6009, "name": "requestNotFound", "msg": "Request not found" }, { "code": 6010, "name": "requestQueueNotEmpty", "msg": "Request queue not empty" }, { "code": 6011, "name": "invalidRequestQueueData", "msg": "Invalid request queue data" }, { "code": 6012, "name": "requestQueueFull", "msg": "Request queue full" }, { "code": 6013, "name": "protocolFeesNotCrystallized", "msg": "Protocol fees should be crystallized before updating" }, { "code": 6014, "name": "amountBelowMinimum", "msg": "Amount is below the minimum required" }, { "code": 6015, "name": "managerFeesNotCrystallized", "msg": "Manager fees should be crystallized before updating" }, { "code": 6016, "name": "amountAboveMaximum", "msg": "Amount exceeds maximum threshold" }, { "code": 6017, "name": "insufficientEscrowBalance", "msg": "Insufficient escrow balance for fee burn" }, { "code": 6018, "name": "tokenAclManagesFreezeThaw", "msg": "Token ACL is enabled; freeze/thaw is managed by the Token ACL program" }, { "code": 6019, "name": "invalidMintState", "msg": "Invalid mint state" } ], "types": [ { "name": "accountType", "type": { "kind": "enum", "variants": [ { "name": "vault" }, { "name": "tokenizedVault" }, { "name": "mint" }, { "name": "singleAssetVault" } ] } }, { "name": "accruedFees", "type": { "kind": "struct", "fields": [ { "name": "vaultSubscriptionFee", "type": "u128" }, { "name": "vaultRedemptionFee", "type": "u128" }, { "name": "managerSubscriptionFee", "type": "u128" }, { "name": "managerRedemptionFee", "type": "u128" }, { "name": "managementFee", "type": "u128" }, { "name": "performanceFee", "type": "u128" }, { "name": "protocolBaseFee", "type": "u128" }, { "name": "protocolFlowFee", "type": "u128" } ] } }, { "name": "assetMeta", "type": { "kind": "struct", "fields": [ { "name": "asset", "type": "pubkey" }, { "name": "decimals", "type": "u8" }, { "name": "oracle", "type": "pubkey" }, { "name": "oracleSource", "type": { "defined": { "name": "oracleSource" } } }, { "name": "maxAgeSeconds", "type": "u16" }, { "name": "priority", "type": "i8" }, { "name": "padding", "type": { "array": [ "u8", 3 ] } } ] } }, { "name": "aumRecord", "type": { "kind": "struct", "fields": [ { "name": "baseAssetAmount", "type": "i128" } ] } }, { "name": "createdModel", "type": { "kind": "struct", "fields": [ { "name": "key", "type": { "array": [ "u8", 8 ] } }, { "name": "createdBy", "type": "pubkey" }, { "name": "createdAt", "type": "i64" } ] } }, { "name": "delegateAcl", "type": { "kind": "struct", "fields": [ { "name": "pubkey", "type": "pubkey" }, { "name": "integrationPermissions", "type": { "vec": { "defined": { "name": "integrationPermissions" } } } }, { "name": "expiresAt", "type": "i64" } ] } }, { "name": "emergencyUpdateMintArgs", "type": { "kind": "struct", "fields": [ { "name": "requestType", "type": { "defined": { "name": "requestType" } } }, { "name": "setPaused", "type": "bool" } ] } }, { "name": "engineField", "type": { "kind": "struct", "fields": [ { "name": "name", "type": { "defined": { "name": "engineFieldName" } } }, { "name": "value", "type": { "defined": { "name": "engineFieldValue" } } } ] } }, { "name": "engineFieldName", "type": { "kind": "enum", "variants": [ { "name": "owner" }, { "name": "portfolioManagerName" }, { "name": "name" }, { "name": "uri" }, { "name": "assets" }, { "name": "delegateAcls" }, { "name": "integrationAcls" }, { "name": "timelockDuration" }, { "name": "borrowable" }, { "name": "defaultAccountStateFrozen" }, { "name": "permanentDelegate" }, { "name": "notifyAndSettle" }, { "name": "feeStructure" }, { "name": "feeParams" }, { "name": "claimableFees" }, { "name": "claimedFees" }, { "name": "oracleConfigs" } ] } }, { "name": "engineFieldValue", "type": { "kind": "enum", "variants": [ { "name": "boolean", "fields": [ { "name": "val", "type": "bool" } ] }, { "name": "u8", "fields": [ { "name": "val", "type": "u8" } ] }, { "name": "u32", "fields": [ { "name": "val", "type": "u32" } ] }, { "name": "u64", "fields": [ { "name": "val", "type": "u64" } ] }, { "name": "string", "fields": [ { "name": "val", "type": "string" } ] }, { "name": "pubkey", "fields": [ { "name": "val", "type": "pubkey" } ] }, { "name": "vecPubkey", "fields": [ { "name": "val", "type": { "vec": "pubkey" } } ] }, { "name": "vecU8", "fields": [ { "name": "val", "type": "bytes" } ] }, { "name": "vecU32", "fields": [ { "name": "val", "type": { "vec": "u32" } } ] }, { "name": "vecDelegateAcl", "fields": [ { "name": "val", "type": { "vec": { "defined": { "name": "delegateAcl" } } } } ] }, { "name": "vecIntegrationAcl", "fields": [ { "name": "val", "type": { "vec": { "defined": { "name": "integrationAcl" } } } } ] }, { "name": "feeStructure", "fields": [ { "name": "val", "type": { "defined": { "name": "feeStructure" } } } ] }, { "name": "feeParams", "fields": [ { "name": "val", "type": { "defined": { "name": "feeParams" } } } ] }, { "name": "accruedFees", "fields": [ { "name": "val", "type": { "defined": { "name": "accruedFees" } } } ] }, { "name": "notifyAndSettle", "fields": [ { "name": "val", "type": { "defined": { "name": "notifyAndSettle" } } } ] }, { "name": "oracleConfigs", "fields": [ { "name": "val", "type": { "defined": { "name": "oracleConfigs" } } } ] } ] } }, { "name": "entryExitFees", "type": { "kind": "struct", "fields": [ { "name": "subscriptionFeeBps", "type": "u16" }, { "name": "redemptionFeeBps", "type": "u16" } ] } }, { "name": "feeParams", "type": { "kind": "struct", "fields": [ { "name": "yearInSeconds", "type": "u32" }, { "name": "paHighWaterMark", "type": "i128" }, { "name": "paLastNav", "type": "i128" }, { "name": "lastAum", "type": "i128" }, { "name": "lastPerformanceFeeCrystallized", "type": "i64" }, { "name": "lastManagementFeeCrystallized", "type": "i64" }, { "name": "lastProtocolFeeCrystallized", "type": "i64" } ] } }, { "name": "feeStructure", "type": { "kind": "struct", "fields": [ { "name": "vault", "type": { "defined": { "name": "entryExitFees" } } }, { "name": "manager", "type": { "defined": { "name": "entryExitFees" } } }, { "name": "management", "type": { "defined": { "name": "managementFee" } } }, { "name": "performance", "type": { "defined": { "name": "performanceFee" } } }, { "name": "protocol", "type": { "defined": { "name": "protocolFees" } } } ] } }, { "name": "globalConfig", "type": { "kind": "struct", "fields": [ { "name": "admin", "docs": [ "The authority that can modify the config" ], "type": "pubkey" }, { "name": "feeAuthority", "docs": [ "The authority that can modify fee structure of individual glam state and claim protocol fees" ], "type": "pubkey" }, { "name": "referrer", "docs": [ "Default GLAM referrer" ], "type": "pubkey" }, { "name": "baseFeeBps", "docs": [ "Default protocol base fee applied to all vaults" ], "type": "u16" }, { "name": "flowFeeBps", "docs": [ "Default protocol flow fee applied to all vaults" ], "type": "u16" }, { "name": "assetMetas", "docs": [ "List of assets and their oracle configs supported by the protocol" ], "type": { "vec": { "defined": { "name": "assetMeta" } } } } ] } }, { "name": "hurdleType", "type": { "kind": "enum", "variants": [ { "name": "hard" }, { "name": "soft" } ] } }, { "name": "integrationAcl", "docs": [ "An integration program can have multiple protocols supported.", "Enabled protocols are stored in a bitmask, and each protocol can have its own policy." ], "type": { "kind": "struct", "fields": [ { "name": "integrationProgram", "type": "pubkey" }, { "name": "protocolsBitmask", "type": "u16" }, { "name": "protocolPolicies", "type": { "vec": { "defined": { "name": "protocolPolicy" } } } } ] } }, { "name": "integrationPermissions", "docs": [ "Stores delegate permissions for an integration program." ], "type": { "kind": "struct", "fields": [ { "name": "integrationProgram", "type": "pubkey" }, { "name": "protocolPermissions", "type": { "vec": { "defined": { "name": "protocolPermissions" } } } } ] } }, { "name": "managementFee", "type": { "kind": "struct", "fields": [ { "name": "feeBps", "type": "u16" } ] } }, { "name": "mintModel", "type": { "kind": "struct", "fields": [ { "name": "symbol", "type": { "option": "string" } }, { "name": "name", "type": { "option": { "array": [ "u8", 32 ] } } }, { "name": "uri", "type": { "option": "string" } }, { "name": "yearInSeconds", "type": { "option": "u32" } }, { "name": "permanentDelegate", "type": { "option": "pubkey" } }, { "name": "defaultAccountStateFrozen", "type": { "option": "bool" } }, { "name": "feeStructure", "type": { "option": { "defined": { "name": "feeStructure" } } } }, { "name": "notifyAndSettle", "type": { "option": { "defined": { "name": "notifyAndSettle" } } } }, { "name": "lockupPeriod", "type": { "option": "u32" } }, { "name": "maxCap", "type": { "option": "u64" } }, { "name": "minSubscription", "type": { "option": "u64" } }, { "name": "minRedemption", "type": { "option": "u64" } }, { "name": "allowlist", "type": { "option": { "vec": "pubkey" } } }, { "name": "blocklist", "type": { "option": { "vec": "pubkey" } } } ] } }, { "name": "mintPolicy", "type": { "kind": "struct", "fields": [ { "name": "lockupPeriod", "type": "u32" }, { "name": "maxCap", "type": "u64" }, { "name": "minSubscription", "type": "u64" }, { "name": "minRedemption", "type": "u64" }, { "name": "reserved", "type": "u64" }, { "name": "allowlist", "type": { "option": { "vec": "pubkey" } } }, { "name": "blocklist", "type": { "option": { "vec": "pubkey" } } } ] } }, { "name": "noticePeriodType", "type": { "kind": "enum", "variants": [ { "name": "hard" }, { "name": "soft" } ] } }, { "name": "notifyAndSettle", "type": { "kind": "struct", "fields": [ { "name": "model", "type": { "defined": { "name": "valuationModel" } } }, { "name": "permissionlessFulfillment", "type": "bool" }, { "name": "subscribeNoticePeriodType", "type": { "defined": { "name": "noticePeriodType" } } }, { "name": "subscribeNoticePeriod", "type": "u64" }, { "name": "subscribeSettlementPeriod", "type": "u64" }, { "name": "subscribeCancellationWindow", "type": "u64" }, { "name": "redeemNoticePeriodType", "type": { "defined": { "name": "noticePeriodType" } } }, { "name": "redeemNoticePeriod", "type": "u64" }, { "name": "redeemSettlementPeriod", "type": "u64" }, { "name": "redeemCancellationWindow", "type": "u64" }, { "name": "timeUnit", "type": { "defined": { "name": "timeUnit" } } }, { "name": "padding", "type": { "array": [ "u8", 3 ] } } ] } }, { "name": "oracleConfigs", "docs": [ "Vault-specific oracle configs. If available, these configs are preferred over the global config." ], "type": { "kind": "struct", "fields": [ { "name": "maxAgesSeconds", "type": { "vec": { "array": [ "u16", 2 ] } } }, { "name": "padding", "type": { "array": [ "u8", 12 ] } } ] } }, { "name": "oracleSource", "type": { "kind": "enum", "variants": [ { "name": "pyth" }, { "name": "switchboard" }, { "name": "quoteAsset" }, { "name": "pyth1K" }, { "name": "pyth1M" }, { "name": "pythStableCoin" }, { "name": "prelaunch" }, { "name": "pythPull" }, { "name": "pyth1KPull" }, { "name": "pyth1MPull" }, { "name": "pythStableCoinPull" }, { "name": "switchboardOnDemand" }, { "name": "pythLazer" }, { "name": "pythLazer1K" }, { "name": "pythLazer1M" }, { "name": "pythLazerStableCoin" }, { "name": "notSet" }, { "name": "lstPoolState" }, { "name": "marinadeState" }, { "name": "baseAsset" }, { "name": "chainlinkRwa" }, { "name": "chainlinkX" }, { "name": "kaminoReserve" } ] } }, { "name": "pendingRequest", "type": { "kind": "struct", "fields": [ { "name": "user", "type": "pubkey" }, { "name": "incoming", "type": "u64" }, { "name": "outgoing", "type": "u64" }, { "name": "createdAt", "type": "u64" }, { "name": "fulfilledAt", "type": "u64" }, { "name": "timeUnit", "type": "u8" }, { "name": "requestType", "type": { "defined": { "name": "requestType" } } }, { "name": "reserved", "type": { "array": [ "u8", 6 ] } } ] } }, { "name": "performanceFee", "type": { "kind": "struct", "fields": [ { "name": "feeBps", "type": "u16" }, { "name": "hurdleRateBps", "type": "u16" }, { "name": "hurdleType", "type": { "defined": { "name": "hurdleType" } } } ] } }, { "name": "pricedProtocol", "type": { "kind": "struct", "fields": [ { "name": "rent", "type": "u64" }, { "name": "amount", "type": "i128" }, { "name": "decimals", "type": "u8" }, { "name": "lastUpdatedSlot", "type": "u64" }, { "name": "integrationProgram", "type": "pubkey" }, { "name": "protocolBitflag", "type": "u16" }, { "name": "positions", "type": { "vec": "pubkey" } } ] } }, { "name": "pricedProtocolRecord", "type": { "kind": "struct", "fields": [ { "name": "baseAssetAmount", "type": "i128" } ] } }, { "name": "protocolFees", "type": { "kind": "struct", "fields": [ { "name": "baseFeeBps", "type": "u16" }, { "name": "flowFeeBps", "type": "u16" } ] } }, { "name": "protocolPermissions", "docs": [ "Represents a delegate's permissions for a specific protocol" ], "type": { "kind": "struct", "fields": [ { "name": "protocolBitflag", "type": "u16" }, { "name": "permissionsBitmask", "type": "u64" } ] } }, { "name": "protocolPolicy", "docs": [ "Stores policy data for an integrated protocol.", "Integration programs serialize/deserialize this data." ], "type": { "kind": "struct", "fields": [ { "name": "protocolBitflag", "type": "u16" }, { "name": "data", "type": "bytes" } ] } }, { "name": "requestQueue", "type": { "kind": "struct", "fields": [ { "name": "glamState", "type": "pubkey" }, { "name": "glamMint", "type": "pubkey" }, { "name": "subscriptionPaused", "type": "bool" }, { "name": "redemptionPaused", "type": "bool" }, { "name": "data", "type": { "vec": { "defined": { "name": "pendingRequest" } } } } ] } }, { "name": "requestType", "type": { "kind": "enum", "variants": [ { "name": "subscription" }, { "name": "redemption" } ] } }, { "name": "stateAccount", "type": { "kind": "struct", "fields": [ { "name": "accountType", "type": { "defined": { "name": "accountType" } } }, { "name": "enabled", "type": "bool" }, { "name": "vault", "type": "pubkey" }, { "name": "owner", "type": "pubkey" }, { "name": "portfolioManagerName", "type": { "array": [ "u8", 32 ] } }, { "name": "created", "type": { "defined": { "name": "createdModel" } } }, { "name": "baseAssetMint", "type": "pubkey" }, { "name": "baseAssetDecimals", "type": "u8" }, { "name": "baseAssetTokenProgram", "type": "u8" }, { "name": "name", "type": { "array": [ "u8", 32 ] } }, { "name": "timelockDuration", "type": "u32" }, { "name": "timelockExpiresAt", "type": "u64" }, { "name": "mint", "type": "pubkey" }, { "name": "assets", "type": { "vec": "pubkey" } }, { "name": "integrationAcls", "type": { "vec": { "defined": { "name": "integrationAcl" } } } }, { "name": "delegateAcls", "type": { "vec": { "defined": { "name": "delegateAcl" } } } }, { "name": "externalPositions", "type": { "vec": "pubkey" } }, { "name": "pricedProtocols", "type": { "vec": { "defined": { "name": "pricedProtocol" } } } }, { "name": "params", "type": { "vec": { "vec": { "defined": { "name": "engineField" } } } } } ] } }, { "name": "timeUnit", "type": { "kind": "enum", "variants": [ { "name": "second" }, { "name": "slot" } ] } }, { "name": "valuationModel", "type": { "kind": "enum", "variants": [ { "name": "continuous" }, { "name": "periodic" } ] } } ], "constants": [ { "name": "protoMint", "type": "u16", "value": "1" }, { "name": "protoMintPermBurnTokens", "type": "u64", "value": "2" }, { "name": "protoMintPermCancelRequest", "type": "u64", "value": "128" }, { "name": "protoMintPermClaimFees", "type": "u64", "value": "16" }, { "name": "protoMintPermClaimRequest", "type": "u64", "value": "256" }, { "name": "protoMintPermEmergencyUpdate", "type": "u64", "value": "64" }, { "name": "protoMintPermForceTransferTokens", "type": "u64", "value": "4" }, { "name": "protoMintPermFulfill", "type": "u64", "value": "32" }, { "name": "protoMintPermMintTokens", "type": "u64", "value": "1" }, { "name": "protoMintPermSetTokenAccountState", "type": "u64", "value": "8" }, { "name": "protoMintPermTokenAclApplyList", "type": "u64", "value": "2048" }, { "name": "protoMintPermTokenAclFreezeThaw", "type": "u64", "value": "512" }, { "name": "protoMintPermTokenAclManageList", "type": "u64", "value": "1024" } ] };