Files
khadhroony-bot3/idls/stable.JUPUSDecMzAVgztLe6eGhwUBj1Pn3j9WAXwmtHmfbRr.swap_jupiter_stable.V0_1_0.from_solscan.json
2026-07-30 10:27:06 +02:00

2585 lines
76 KiB
JSON

{
"address": "JUPUSDecMzAVgztLe6eGhwUBj1Pn3j9WAXwmtHmfbRr",
"metadata": {
"name": "jup_stable",
"version": "0.1.0",
"spec": "0.1.0",
"description": "Created with Anchor"
},
"instructions": [
{
"name": "create_benefactor",
"discriminator": [
184,
241,
45,
0,
53,
40,
201,
54
],
"accounts": [
{
"name": "operator_authority",
"signer": true,
"relations": [
"operator"
]
},
{
"name": "operator"
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "benefactor_authority"
},
{
"name": "benefactor",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
98,
101,
110,
101,
102,
97,
99,
116,
111,
114
]
},
{
"kind": "account",
"path": "benefactor_authority"
}
]
}
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
}
],
"args": [
{
"name": "mint_fee_rate",
"type": "u16"
},
{
"name": "redeem_fee_rate",
"type": "u16"
}
]
},
{
"name": "create_operator",
"discriminator": [
145,
40,
238,
75,
181,
252,
59,
11
],
"accounts": [
{
"name": "operator_authority",
"signer": true,
"relations": [
"operator"
]
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "operator"
},
{
"name": "new_operator_authority"
},
{
"name": "new_operator",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
111,
112,
101,
114,
97,
116,
111,
114
]
},
{
"kind": "account",
"path": "new_operator_authority"
}
]
}
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
}
],
"args": [
{
"name": "role",
"type": {
"defined": {
"name": "OperatorRole"
}
}
}
]
},
{
"name": "create_vault",
"discriminator": [
29,
237,
247,
208,
193,
82,
54,
135
],
"accounts": [
{
"name": "operator_authority",
"signer": true,
"relations": [
"operator"
]
},
{
"name": "operator"
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "mint"
},
{
"name": "config"
},
{
"name": "authority",
"relations": [
"config"
]
},
{
"name": "vault",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
118,
97,
117,
108,
116
]
},
{
"kind": "account",
"path": "mint"
}
]
}
},
{
"name": "token_account",
"writable": true,
"pda": {
"seeds": [
{
"kind": "account",
"path": "authority"
},
{
"kind": "account",
"path": "token_program"
},
{
"kind": "account",
"path": "mint"
}
],
"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": "token_program"
},
{
"name": "associated_token_program",
"address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
}
],
"args": []
},
{
"name": "delete_benefactor",
"discriminator": [
216,
227,
84,
147,
79,
177,
152,
147
],
"accounts": [
{
"name": "operator_authority",
"writable": true,
"signer": true,
"relations": [
"operator"
]
},
{
"name": "operator"
},
{
"name": "receiver",
"writable": true
},
{
"name": "benefactor",
"writable": true
}
],
"args": []
},
{
"name": "delete_operator",
"discriminator": [
208,
84,
168,
116,
138,
201,
98,
16
],
"accounts": [
{
"name": "operator_authority",
"signer": true,
"relations": [
"operator"
]
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "operator"
},
{
"name": "deleted_operator",
"writable": true
}
],
"args": []
},
{
"name": "init",
"discriminator": [
220,
59,
207,
236,
108,
250,
47,
100
],
"accounts": [
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "upgrade_authority",
"signer": true
},
{
"name": "operator",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
111,
112,
101,
114,
97,
116,
111,
114
]
},
{
"kind": "account",
"path": "upgrade_authority"
}
]
}
},
{
"name": "config",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
99,
111,
110,
102,
105,
103
]
}
]
}
},
{
"name": "authority",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "mint",
"writable": true,
"signer": true
},
{
"name": "metadata",
"writable": true
},
{
"name": "program_data"
},
{
"name": "program",
"address": "JUPUSDecMzAVgztLe6eGhwUBj1Pn3j9WAXwmtHmfbRr"
},
{
"name": "metadata_program",
"address": "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"
},
{
"name": "token_program"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "rent",
"address": "SysvarRent111111111111111111111111111111111"
}
],
"args": [
{
"name": "decimals",
"type": "u8"
},
{
"name": "name",
"type": "string"
},
{
"name": "symbol",
"type": "string"
},
{
"name": "uri",
"type": "string"
}
]
},
{
"name": "manage_benefactor",
"discriminator": [
22,
231,
128,
62,
115,
219,
149,
14
],
"accounts": [
{
"name": "operator_authority",
"writable": true,
"signer": true,
"relations": [
"operator"
]
},
{
"name": "operator"
},
{
"name": "benefactor",
"writable": true
}
],
"args": [
{
"name": "action",
"type": {
"defined": {
"name": "BenefactorManagementAction"
}
}
}
]
},
{
"name": "manage_config",
"discriminator": [
119,
51,
144,
55,
24,
242,
232,
231
],
"accounts": [
{
"name": "operator_authority",
"writable": true,
"signer": true,
"relations": [
"operator"
]
},
{
"name": "operator"
},
{
"name": "config",
"writable": true
}
],
"args": [
{
"name": "action",
"type": {
"defined": {
"name": "ConfigManagementAction"
}
}
}
]
},
{
"name": "manage_operator",
"discriminator": [
82,
172,
106,
235,
147,
246,
96,
85
],
"accounts": [
{
"name": "operator_authority",
"signer": true,
"relations": [
"operator"
]
},
{
"name": "operator"
},
{
"name": "managed_operator",
"writable": true
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
}
],
"args": [
{
"name": "action",
"type": {
"defined": {
"name": "OperatorManagementAction"
}
}
}
]
},
{
"name": "manage_vault",
"discriminator": [
165,
7,
106,
242,
73,
193,
195,
128
],
"accounts": [
{
"name": "operator_authority",
"signer": true,
"relations": [
"operator"
]
},
{
"name": "operator"
},
{
"name": "vault",
"writable": true
}
],
"args": [
{
"name": "action",
"type": {
"defined": {
"name": "VaultManagementAction"
}
}
}
]
},
{
"name": "mint",
"discriminator": [
51,
57,
225,
47,
182,
146,
137,
166
],
"accounts": [
{
"name": "user",
"writable": true,
"signer": true
},
{
"name": "user_collateral_token_account",
"writable": true
},
{
"name": "user_lp_token_account",
"writable": true
},
{
"name": "config",
"writable": true
},
{
"name": "authority"
},
{
"name": "lp_mint",
"writable": true
},
{
"name": "vault",
"writable": true
},
{
"name": "vault_mint"
},
{
"name": "custodian"
},
{
"name": "custodian_token_account",
"writable": true,
"pda": {
"seeds": [
{
"kind": "account",
"path": "custodian"
},
{
"kind": "account",
"path": "vault_token_program"
},
{
"kind": "account",
"path": "vault_mint"
}
],
"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": "benefactor",
"writable": true
},
{
"name": "lp_token_program"
},
{
"name": "vault_token_program"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "amount",
"type": "u64"
},
{
"name": "min_amount_out",
"type": "u64"
}
]
},
{
"name": "redeem",
"discriminator": [
184,
12,
86,
149,
70,
196,
97,
225
],
"accounts": [
{
"name": "user",
"writable": true,
"signer": true
},
{
"name": "user_lp_token_account",
"writable": true
},
{
"name": "user_collateral_token_account",
"writable": true
},
{
"name": "config",
"writable": true
},
{
"name": "authority"
},
{
"name": "lp_mint",
"writable": true
},
{
"name": "vault",
"writable": true
},
{
"name": "vault_token_account",
"writable": true
},
{
"name": "vault_mint"
},
{
"name": "benefactor",
"writable": true
},
{
"name": "lp_token_program"
},
{
"name": "vault_token_program"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "amount",
"type": "u64"
},
{
"name": "min_amount_out",
"type": "u64"
}
]
},
{
"name": "withdraw",
"discriminator": [
183,
18,
70,
156,
148,
109,
161,
34
],
"accounts": [
{
"name": "operator_authority",
"signer": true,
"relations": [
"operator"
]
},
{
"name": "operator"
},
{
"name": "custodian"
},
{
"name": "custodian_token_account",
"writable": true,
"pda": {
"seeds": [
{
"kind": "account",
"path": "custodian"
},
{
"kind": "account",
"path": "token_program"
},
{
"kind": "account",
"path": "vault_mint"
}
],
"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": "config"
},
{
"name": "authority"
},
{
"name": "vault",
"writable": true
},
{
"name": "vault_token_account",
"writable": true
},
{
"name": "vault_mint"
},
{
"name": "token_program"
}
],
"args": [
{
"name": "amount",
"type": "u64"
}
]
}
],
"accounts": [
{
"name": "Benefactor",
"discriminator": [
98,
159,
41,
233,
19,
232,
104,
12
]
},
{
"name": "Config",
"discriminator": [
155,
12,
170,
224,
30,
250,
204,
130
]
},
{
"name": "Operator",
"discriminator": [
219,
31,
188,
145,
69,
139,
204,
117
]
},
{
"name": "Vault",
"discriminator": [
211,
8,
232,
43,
2,
152,
117,
119
]
}
],
"events": [
{
"name": "MintV0Event",
"discriminator": [
217,
98,
231,
213,
105,
77,
68,
88
]
},
{
"name": "MintV1Event",
"discriminator": [
63,
113,
88,
48,
163,
187,
48,
83
]
},
{
"name": "RedeemV0Event",
"discriminator": [
50,
202,
68,
30,
122,
77,
84,
153
]
},
{
"name": "RedeemV1Event",
"discriminator": [
67,
51,
207,
92,
219,
144,
44,
2
]
}
],
"errors": [
{
"code": 6000,
"name": "SomeError",
"msg": ""
},
{
"code": 6001,
"name": "AdminArrayFull",
"msg": "Admin Array Full"
},
{
"code": 6002,
"name": "NotAuthorized",
"msg": "Not Authorized"
},
{
"code": 6003,
"name": "BadInput",
"msg": "Bad Input"
},
{
"code": 6004,
"name": "BenefactorDisabled",
"msg": "Benefactor Disabled"
},
{
"code": 6005,
"name": "BenefactorActive",
"msg": "Benefactor Active"
},
{
"code": 6006,
"name": "VaultNotActive",
"msg": "Vault Not Active"
},
{
"code": 6007,
"name": "InsufficientAmount",
"msg": "Insufficient Amount"
},
{
"code": 6008,
"name": "InvalidFeeRate",
"msg": "Invalid Fee Rate"
},
{
"code": 6009,
"name": "MintLimitExceeded",
"msg": "Mint Limit Exceeded"
},
{
"code": 6010,
"name": "RedeemLimitExceeded",
"msg": "Redeem Limit Exceeded"
},
{
"code": 6011,
"name": "SlippageToleranceExceeded",
"msg": "Slippage Tolerance Exceeded"
},
{
"code": 6012,
"name": "MathOverflow",
"msg": "Math Overflow"
},
{
"code": 6013,
"name": "InvalidLPMint",
"msg": "Invalid LP Mint"
},
{
"code": 6014,
"name": "InvalidVaultMint",
"msg": "Invalid Vault Mint"
},
{
"code": 6015,
"name": "InvalidAuthority",
"msg": "Invalid Authority"
},
{
"code": 6016,
"name": "InvalidVaultTokenAccount",
"msg": "Invalid Vault Token Account"
},
{
"code": 6017,
"name": "InvalidTokenProgram",
"msg": "Invalid Token Program"
},
{
"code": 6018,
"name": "InvalidVaultFeeTokenAccount",
"msg": "Invalid Vault Fee Token Account"
},
{
"code": 6019,
"name": "BadOracle",
"msg": "Bad Oracle"
},
{
"code": 6020,
"name": "NoValidPrice",
"msg": "No Valid Price"
},
{
"code": 6021,
"name": "InvalidBenefactor",
"msg": "Invalid Benefactor"
},
{
"code": 6022,
"name": "InvalidCustodian",
"msg": "Invalid Custodian"
},
{
"code": 6023,
"name": "InvalidPeriodLimit",
"msg": "Invalid Rate Limit Window"
},
{
"code": 6024,
"name": "MissingOracleAccounts",
"msg": "Missing Oracle Accounts"
},
{
"code": 6025,
"name": "NoOraclesFound",
"msg": "No Oracles Found"
},
{
"code": 6026,
"name": "ZeroAmount",
"msg": "Zero Amount"
},
{
"code": 6027,
"name": "ProtocolPaused",
"msg": "Protocol Paused"
},
{
"code": 6028,
"name": "OperatorDisabled",
"msg": "Operator Disabled"
},
{
"code": 6029,
"name": "VaultDisabled",
"msg": "Vault Disabled"
},
{
"code": 6030,
"name": "VaultEnabled",
"msg": "Vault Enabled"
},
{
"code": 6031,
"name": "VaultIsDry",
"msg": "Vault Is Dry"
},
{
"code": 6032,
"name": "InvalidPegPriceUSD",
"msg": "Invalid Peg Price USD"
},
{
"code": 6033,
"name": "NoValidOracle",
"msg": "No Valid Oracle"
},
{
"code": 6034,
"name": "PriceConfidenceTooWide",
"msg": "Price Confidence Too Wide"
},
{
"code": 6035,
"name": "OperatorCannotDeleteItself",
"msg": "Operator Cannot Delete Itself"
}
],
"types": [
{
"name": "Benefactor",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "authority",
"type": "pubkey"
},
{
"name": "status",
"type": {
"defined": {
"name": "BenefactorStatus"
}
}
},
{
"name": "_padding0",
"type": {
"array": [
"u8",
7
]
}
},
{
"name": "mint_fee_rate",
"type": "u16"
},
{
"name": "redeem_fee_rate",
"type": "u16"
},
{
"name": "_padding1",
"type": {
"array": [
"u8",
4
]
}
},
{
"name": "period_limits",
"type": {
"array": [
{
"defined": {
"name": "PeriodLimit"
}
},
4
]
}
},
{
"name": "total_minted",
"type": {
"array": [
"u8",
16
]
}
},
{
"name": "total_redeemed",
"type": {
"array": [
"u8",
16
]
}
},
{
"name": "fee_overrides",
"type": {
"array": [
{
"defined": {
"name": "FeeOverride"
}
},
4
]
}
},
{
"name": "reserved",
"type": {
"array": [
"u8",
96
]
}
}
]
}
},
{
"name": "BenefactorManagementAction",
"type": {
"kind": "enum",
"variants": [
{
"name": "Disable"
},
{
"name": "SetStatus",
"fields": [
{
"name": "status",
"type": {
"defined": {
"name": "BenefactorStatus"
}
}
}
]
},
{
"name": "UpdateFeeRates",
"fields": [
{
"name": "mint_fee_rate",
"type": "u16"
},
{
"name": "redeem_fee_rate",
"type": "u16"
}
]
},
{
"name": "UpdatePeriodLimit",
"fields": [
{
"name": "index",
"type": "u8"
},
{
"name": "duration_seconds",
"type": "u64"
},
{
"name": "max_mint_amount",
"type": "u64"
},
{
"name": "max_redeem_amount",
"type": "u64"
}
]
},
{
"name": "ResetPeriodLimit",
"fields": [
{
"name": "index",
"type": "u8"
}
]
},
{
"name": "UpdateFeeOverride",
"fields": [
{
"name": "index",
"type": "u8"
},
{
"name": "mint",
"type": "pubkey"
},
{
"name": "mint_fee_rate",
"type": "u16"
},
{
"name": "redeem_fee_rate",
"type": "u16"
}
]
},
{
"name": "DeleteFeeOverride",
"fields": [
{
"name": "index",
"type": "u8"
}
]
}
]
}
},
{
"name": "BenefactorStatus",
"repr": {
"kind": "rust"
},
"type": {
"kind": "enum",
"variants": [
{
"name": "Active"
},
{
"name": "Disabled"
}
]
}
},
{
"name": "Config",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "mint",
"type": "pubkey"
},
{
"name": "authority",
"type": "pubkey"
},
{
"name": "token_program",
"type": "pubkey"
},
{
"name": "period_limits",
"type": {
"array": [
{
"defined": {
"name": "PeriodLimit"
}
},
4
]
}
},
{
"name": "peg_price_usd",
"type": "u64"
},
{
"name": "decimals",
"type": "u8"
},
{
"name": "is_mint_redeem_enabled",
"type": "u8"
},
{
"name": "authority_bump",
"type": "u8"
},
{
"name": "config_bump",
"type": "u8"
},
{
"name": "_padding",
"type": {
"array": [
"u8",
4
]
}
},
{
"name": "reserved",
"type": {
"array": [
"u8",
192
]
}
}
]
}
},
{
"name": "ConfigManagementAction",
"type": {
"kind": "enum",
"variants": [
{
"name": "Pause"
},
{
"name": "UpdatePauseFlag",
"fields": [
{
"name": "is_mint_redeem_enabled",
"type": "bool"
}
]
},
{
"name": "UpdatePeriodLimit",
"fields": [
{
"name": "index",
"type": "u8"
},
{
"name": "duration_seconds",
"type": "u64"
},
{
"name": "max_mint_amount",
"type": "u64"
},
{
"name": "max_redeem_amount",
"type": "u64"
}
]
},
{
"name": "ResetPeriodLimit",
"fields": [
{
"name": "index",
"type": "u8"
}
]
},
{
"name": "SetPegPriceUSD",
"fields": [
{
"name": "peg_price_usd",
"type": "u64"
}
]
}
]
}
},
{
"name": "DovesOracle",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "account",
"type": "pubkey"
},
{
"name": "reserved1",
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "reserved2",
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "reserved3",
"type": {
"array": [
"u8",
24
]
}
}
]
}
},
{
"name": "EmptyOracle",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "reserved",
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "reserved1",
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "reserved2",
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "reserved3",
"type": {
"array": [
"u8",
24
]
}
}
]
}
},
{
"name": "FeeOverride",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "mint",
"type": "pubkey"
},
{
"name": "mint_fee_rate",
"type": "u16"
},
{
"name": "redeem_fee_rate",
"type": "u16"
},
{
"name": "_padding",
"type": {
"array": [
"u8",
4
]
}
}
]
}
},
{
"name": "MintV0Event",
"type": {
"kind": "struct",
"fields": [
{
"name": "amount",
"type": "u64"
},
{
"name": "net_amount",
"type": "u64"
},
{
"name": "oracle_price",
"type": "u64"
},
{
"name": "one_to_one_amount",
"type": "u64"
},
{
"name": "oracle_amount",
"type": "u64"
},
{
"name": "mint_amount",
"type": "u64"
}
]
}
},
{
"name": "MintV1Event",
"type": {
"kind": "struct",
"fields": [
{
"name": "amount",
"type": "u64"
},
{
"name": "net_amount",
"type": "u64"
},
{
"name": "oracle_price",
"type": "u64"
},
{
"name": "one_to_one_amount",
"type": "u64"
},
{
"name": "oracle_amount",
"type": "u64"
},
{
"name": "mint_amount",
"type": "u64"
},
{
"name": "collateral",
"type": "pubkey"
},
{
"name": "benefactor",
"type": "pubkey"
}
]
}
},
{
"name": "Operator",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "operator_authority",
"type": "pubkey"
},
{
"name": "role",
"type": "u64"
},
{
"name": "status",
"type": {
"defined": {
"name": "OperatorStatus"
}
}
},
{
"name": "_padding0",
"type": {
"array": [
"u8",
7
]
}
},
{
"name": "reserved",
"type": {
"array": [
"u8",
128
]
}
}
]
}
},
{
"name": "OperatorManagementAction",
"type": {
"kind": "enum",
"variants": [
{
"name": "SetStatus",
"fields": [
{
"name": "status",
"type": {
"defined": {
"name": "OperatorStatus"
}
}
}
]
},
{
"name": "SetRole",
"fields": [
{
"name": "role",
"type": {
"defined": {
"name": "OperatorRole"
}
}
}
]
},
{
"name": "ClearRole",
"fields": [
{
"name": "role",
"type": {
"defined": {
"name": "OperatorRole"
}
}
}
]
}
]
}
},
{
"name": "OperatorRole",
"type": {
"kind": "enum",
"variants": [
{
"name": "Admin"
},
{
"name": "PeriodManager"
},
{
"name": "GlobalDisabler"
},
{
"name": "VaultManager"
},
{
"name": "VaultDisabler"
},
{
"name": "BenefactorManager"
},
{
"name": "BenefactorDisabler"
},
{
"name": "PegManager"
},
{
"name": "CollateralManager"
}
]
}
},
{
"name": "OperatorStatus",
"repr": {
"kind": "rust"
},
"type": {
"kind": "enum",
"variants": [
{
"name": "Enabled"
},
{
"name": "Disabled"
}
]
}
},
{
"name": "OracleConfig",
"type": {
"kind": "enum",
"variants": [
{
"name": "None"
},
{
"name": "Pyth",
"fields": [
{
"array": [
"u8",
32
]
},
"pubkey"
]
},
{
"name": "SwitchboardOnDemand",
"fields": [
"pubkey"
]
},
{
"name": "Doves",
"fields": [
"pubkey"
]
}
]
}
},
{
"name": "OracleType",
"repr": {
"kind": "c"
},
"type": {
"kind": "enum",
"variants": [
{
"name": "Empty",
"fields": [
{
"defined": {
"name": "EmptyOracle"
}
}
]
},
{
"name": "Pyth",
"fields": [
{
"defined": {
"name": "PythV2Oracle"
}
}
]
},
{
"name": "Doves",
"fields": [
{
"defined": {
"name": "DovesOracle"
}
}
]
},
{
"name": "SwitchboardOnDemand",
"fields": [
{
"defined": {
"name": "SwitchboardOnDemandOracle"
}
}
]
}
]
}
},
{
"name": "PeriodLimit",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "duration_seconds",
"docs": [
"Window duration in seconds (0 = disabled)"
],
"type": "u64"
},
{
"name": "max_mint_amount",
"docs": [
"Maximum mint amount in this window"
],
"type": "u64"
},
{
"name": "max_redeem_amount",
"docs": [
"Maximum redeem amount in this window"
],
"type": "u64"
},
{
"name": "minted_amount",
"docs": [
"Amount minted in current window"
],
"type": "u64"
},
{
"name": "redeemed_amount",
"docs": [
"Amount redeemed in current window"
],
"type": "u64"
},
{
"name": "window_start",
"docs": [
"Window start timestamp"
],
"type": "i64"
}
]
}
},
{
"name": "PythV2Oracle",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "feed_id",
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "account",
"type": "pubkey"
},
{
"name": "reserved1",
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "reserved2",
"type": {
"array": [
"u8",
24
]
}
}
]
}
},
{
"name": "RedeemV0Event",
"type": {
"kind": "struct",
"fields": [
{
"name": "amount",
"type": "u64"
},
{
"name": "net_amount",
"type": "u64"
},
{
"name": "oracle_price",
"type": "u64"
},
{
"name": "one_to_one_amount",
"type": "u64"
},
{
"name": "oracle_amount",
"type": "u64"
},
{
"name": "redeem_amount",
"type": "u64"
}
]
}
},
{
"name": "RedeemV1Event",
"type": {
"kind": "struct",
"fields": [
{
"name": "amount",
"type": "u64"
},
{
"name": "net_amount",
"type": "u64"
},
{
"name": "oracle_price",
"type": "u64"
},
{
"name": "one_to_one_amount",
"type": "u64"
},
{
"name": "oracle_amount",
"type": "u64"
},
{
"name": "redeem_amount",
"type": "u64"
},
{
"name": "collateral",
"type": "pubkey"
},
{
"name": "benefactor",
"type": "pubkey"
}
]
}
},
{
"name": "SwitchboardOnDemandOracle",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "account",
"type": "pubkey"
},
{
"name": "reserved",
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "reserved1",
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "reserved2",
"type": {
"array": [
"u8",
24
]
}
}
]
}
},
{
"name": "Vault",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "mint",
"type": "pubkey"
},
{
"name": "custodian",
"type": "pubkey"
},
{
"name": "token_account",
"type": "pubkey"
},
{
"name": "token_program",
"type": "pubkey"
},
{
"name": "stalesness_threshold",
"type": "u64"
},
{
"name": "min_oracle_price_usd",
"type": "u64"
},
{
"name": "max_oracle_price_usd",
"type": "u64"
},
{
"name": "status",
"type": {
"defined": {
"name": "VaultStatus"
}
}
},
{
"name": "_padding1",
"type": {
"array": [
"u8",
7
]
}
},
{
"name": "bump",
"type": "u8"
},
{
"name": "decimals",
"type": "u8"
},
{
"name": "_padding2",
"type": {
"array": [
"u8",
6
]
}
},
{
"name": "oracles",
"type": {
"array": [
{
"defined": {
"name": "OracleType"
}
},
5
]
}
},
{
"name": "_padding3",
"type": {
"array": [
"u8",
3
]
}
},
{
"name": "period_limits",
"type": {
"array": [
{
"defined": {
"name": "PeriodLimit"
}
},
4
]
}
},
{
"name": "reserved1",
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "total_minted",
"type": {
"array": [
"u8",
16
]
}
},
{
"name": "total_redeemed",
"type": {
"array": [
"u8",
16
]
}
},
{
"name": "reserved",
"type": {
"array": [
"u8",
256
]
}
}
]
}
},
{
"name": "VaultManagementAction",
"type": {
"kind": "enum",
"variants": [
{
"name": "Disable"
},
{
"name": "SetStatus",
"fields": [
{
"name": "status",
"type": {
"defined": {
"name": "VaultStatus"
}
}
}
]
},
{
"name": "UpdateOracle",
"fields": [
{
"name": "index",
"type": "u8"
},
{
"name": "oracle",
"type": {
"defined": {
"name": "OracleConfig"
}
}
}
]
},
{
"name": "UpdatePeriodLimit",
"fields": [
{
"name": "index",
"type": "u8"
},
{
"name": "duration_seconds",
"type": "u64"
},
{
"name": "max_mint_amount",
"type": "u64"
},
{
"name": "max_redeem_amount",
"type": "u64"
}
]
},
{
"name": "ResetPeriodLimit",
"fields": [
{
"name": "index",
"type": "u8"
}
]
},
{
"name": "SetCustodian",
"fields": [
{
"name": "new_custodian",
"type": "pubkey"
}
]
},
{
"name": "SetStalesnessThreshold",
"fields": [
{
"name": "stalesness_threshold",
"type": "u64"
}
]
},
{
"name": "SetMinOraclePrice",
"fields": [
{
"name": "min_oracle_price_usd",
"type": "u64"
}
]
},
{
"name": "SetMaxOraclePrice",
"fields": [
{
"name": "max_oracle_price_usd",
"type": "u64"
}
]
}
]
}
},
{
"name": "VaultStatus",
"repr": {
"kind": "rust"
},
"type": {
"kind": "enum",
"variants": [
{
"name": "Enabled"
},
{
"name": "Disabled"
}
]
}
}
]
}