/** * 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_config.json`. */ export type GlamConfig = { "address": "gConFzxKL9USmwTdJoeQJvfKmqhJ2CyUaXTyQ8v9TGX"; "metadata": { "name": "glamConfig"; "version": "1.0.1"; "spec": "0.1.0"; "description": "GLAM config program"; }; "instructions": [ { "name": "close"; "discriminator": [ 98, 165, 201, 177, 108, 65, 206, 96 ]; "accounts": [ { "name": "globalConfig"; "writable": true; }, { "name": "admin"; "writable": true; "signer": true; }, { "name": "systemProgram"; "address": "11111111111111111111111111111111"; } ]; "args": []; }, { "name": "deleteAssetMeta"; "docs": [ "Deletes an asset meta" ]; "discriminator": [ 108, 173, 149, 99, 144, 203, 21, 115 ]; "accounts": [ { "name": "globalConfig"; "writable": true; "pda": { "seeds": [ { "kind": "const"; "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ]; } ]; }; }, { "name": "admin"; "writable": true; "signer": true; }, { "name": "systemProgram"; "address": "11111111111111111111111111111111"; } ]; "args": [ { "name": "asset"; "type": "pubkey"; }, { "name": "oracle"; "type": "pubkey"; } ]; }, { "name": "deprecateAssetMeta"; "docs": [ "Marks an asset meta as deprecated" ]; "discriminator": [ 138, 242, 230, 22, 21, 151, 149, 19 ]; "accounts": [ { "name": "globalConfig"; "writable": true; "pda": { "seeds": [ { "kind": "const"; "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ]; } ]; }; }, { "name": "admin"; "writable": true; "signer": true; }, { "name": "systemProgram"; "address": "11111111111111111111111111111111"; } ]; "args": [ { "name": "asset"; "type": "pubkey"; }, { "name": "oracle"; "type": "pubkey"; } ]; }, { "name": "initialize"; "discriminator": [ 175, 175, 109, 31, 13, 152, 155, 237 ]; "accounts": [ { "name": "globalConfig"; "writable": true; "pda": { "seeds": [ { "kind": "const"; "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ]; } ]; }; }, { "name": "payer"; "writable": true; "signer": true; }, { "name": "systemProgram"; "address": "11111111111111111111111111111111"; } ]; "args": [ { "name": "admin"; "type": "pubkey"; }, { "name": "feeAuthority"; "type": "pubkey"; }, { "name": "referrer"; "type": "pubkey"; }, { "name": "baseFeeBps"; "type": "u16"; }, { "name": "flowFeeBps"; "type": "u16"; } ]; }, { "name": "updateAdmin"; "discriminator": [ 161, 176, 40, 213, 60, 184, 179, 228 ]; "accounts": [ { "name": "globalConfig"; "writable": true; "pda": { "seeds": [ { "kind": "const"; "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ]; } ]; }; }, { "name": "admin"; "writable": true; "signer": true; }, { "name": "systemProgram"; "address": "11111111111111111111111111111111"; } ]; "args": [ { "name": "newAdmin"; "type": "pubkey"; } ]; }, { "name": "updateFeeAuthority"; "discriminator": [ 31, 223, 200, 21, 114, 158, 65, 61 ]; "accounts": [ { "name": "globalConfig"; "writable": true; "pda": { "seeds": [ { "kind": "const"; "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ]; } ]; }; }, { "name": "feeAuthority"; "signer": true; } ]; "args": [ { "name": "feeAuthority"; "type": "pubkey"; } ]; }, { "name": "updateProtocolFees"; "discriminator": [ 158, 219, 253, 143, 54, 45, 113, 182 ]; "accounts": [ { "name": "globalConfig"; "writable": true; "pda": { "seeds": [ { "kind": "const"; "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ]; } ]; }; }, { "name": "feeAuthority"; "signer": true; } ]; "args": [ { "name": "baseFeeBps"; "type": "u16"; }, { "name": "flowFeeBps"; "type": "u16"; } ]; }, { "name": "updateReferrer"; "discriminator": [ 208, 225, 56, 15, 244, 21, 195, 34 ]; "accounts": [ { "name": "globalConfig"; "writable": true; "pda": { "seeds": [ { "kind": "const"; "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ]; } ]; }; }, { "name": "feeAuthority"; "signer": true; } ]; "args": [ { "name": "referrer"; "type": "pubkey"; } ]; }, { "name": "upsertAssetMeta"; "discriminator": [ 29, 40, 115, 194, 215, 146, 222, 212 ]; "accounts": [ { "name": "globalConfig"; "writable": true; "pda": { "seeds": [ { "kind": "const"; "value": [ 103, 108, 111, 98, 97, 108, 45, 99, 111, 110, 102, 105, 103 ]; } ]; }; }, { "name": "admin"; "writable": true; "signer": true; }, { "name": "asset"; }, { "name": "oracle"; }, { "name": "systemProgram"; "address": "11111111111111111111111111111111"; } ]; "args": [ { "name": "assetMeta"; "type": { "defined": { "name": "assetMeta"; }; }; } ]; } ]; "accounts": [ { "name": "globalConfig"; "discriminator": [ 149, 8, 156, 202, 160, 252, 176, 217 ]; } ]; "errors": [ { "code": 6000; "name": "invalidAuthority"; "msg": "Invalid authority"; }, { "code": 6001; "name": "invalidAssetMeta"; "msg": "Invalid asset meta"; }, { "code": 6002; "name": "assetMetaNotFound"; "msg": "Asset meta not found"; }, { "code": 6003; "name": "invalidParameters"; "msg": "Invalid fee parameters or insufficient account space"; }, { "code": 6004; "name": "invalidOracleSource"; "msg": "Invalid oracle source"; }, { "code": 6005; "name": "invalidGlobalConfig"; "msg": "Invalid or corrupted global config account"; }, { "code": 6006; "name": "invalidFeeAuthority"; "msg": "Invalid fee authority"; } ]; "types": [ { "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": "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": "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"; } ]; }; } ]; };