4502 lines
149 KiB
JSON
4502 lines
149 KiB
JSON
{
|
|
"address": "GAMMA7meSFWaBXF25oSUgmGRwaW6sCMFLmBNiMSdbHVT",
|
|
"metadata": {
|
|
"name": "gamma",
|
|
"version": "0.2.0",
|
|
"spec": "0.1.0",
|
|
"description": "Created with Anchor"
|
|
},
|
|
"instructions": [
|
|
{
|
|
"name": "add_or_update_actor",
|
|
"discriminator": [
|
|
113,
|
|
136,
|
|
228,
|
|
230,
|
|
107,
|
|
185,
|
|
128,
|
|
227
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "owner",
|
|
"docs": [
|
|
"Only admin(multisig) can add or update actor"
|
|
],
|
|
"writable": true,
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "system_program",
|
|
"address": "11111111111111111111111111111111"
|
|
},
|
|
{
|
|
"name": "actor",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
97,
|
|
99,
|
|
116,
|
|
111,
|
|
114
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "authority"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "authority",
|
|
"docs": [
|
|
"Account for which the actor is being created.",
|
|
"This is the account that will be able to update the pool."
|
|
]
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "is_admin",
|
|
"type": "bool"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "add_partner",
|
|
"docs": [
|
|
"Admin-permissioned instruction to add a new partner to a pool",
|
|
"",
|
|
"* `ctx` - The context of accounts",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
180,
|
|
111,
|
|
45,
|
|
157,
|
|
241,
|
|
187,
|
|
234,
|
|
88
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "authority",
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "amm_config"
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"writable": true,
|
|
"relations": [
|
|
"partner"
|
|
]
|
|
},
|
|
{
|
|
"name": "pool_partners",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
112,
|
|
97,
|
|
114,
|
|
116,
|
|
110,
|
|
101,
|
|
114,
|
|
95,
|
|
105,
|
|
110,
|
|
102,
|
|
111,
|
|
115
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "partner"
|
|
}
|
|
],
|
|
"args": []
|
|
},
|
|
{
|
|
"name": "calculate_rewards",
|
|
"docs": [
|
|
"Calculate rewards for the user",
|
|
"",
|
|
"* `ctx` - The context of accounts",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
199,
|
|
115,
|
|
201,
|
|
124,
|
|
71,
|
|
81,
|
|
143,
|
|
252
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "signer",
|
|
"writable": true,
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "user",
|
|
"docs": [
|
|
"User for which we are calculating rewards"
|
|
]
|
|
},
|
|
{
|
|
"name": "pool_state"
|
|
},
|
|
{
|
|
"name": "reward_info",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
114,
|
|
101,
|
|
119,
|
|
97,
|
|
114,
|
|
100,
|
|
95,
|
|
105,
|
|
110,
|
|
102,
|
|
111,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "reward_info.start_at",
|
|
"account": "RewardInfo"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "reward_info.mint",
|
|
"account": "RewardInfo"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "user_reward_info",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
117,
|
|
115,
|
|
101,
|
|
114,
|
|
95,
|
|
114,
|
|
101,
|
|
119,
|
|
97,
|
|
114,
|
|
100,
|
|
95,
|
|
105,
|
|
110,
|
|
102,
|
|
111,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "reward_info"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "user"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "user_pool_liquidity",
|
|
"docs": [
|
|
"User pool liquidity account"
|
|
],
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
117,
|
|
115,
|
|
101,
|
|
114,
|
|
45,
|
|
112,
|
|
111,
|
|
111,
|
|
108,
|
|
45,
|
|
108,
|
|
105,
|
|
113,
|
|
117,
|
|
105,
|
|
100,
|
|
105,
|
|
116,
|
|
121
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "user"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "system_program",
|
|
"address": "11111111111111111111111111111111"
|
|
}
|
|
],
|
|
"args": []
|
|
},
|
|
{
|
|
"name": "claim_partner_fees",
|
|
"docs": [
|
|
"Claim fees for a particular partner",
|
|
"",
|
|
"* `ctx` - The context of accounts",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
114,
|
|
71,
|
|
103,
|
|
57,
|
|
160,
|
|
205,
|
|
242,
|
|
185
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "partner"
|
|
},
|
|
{
|
|
"name": "authority",
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116,
|
|
95,
|
|
97,
|
|
110,
|
|
100,
|
|
95,
|
|
108,
|
|
112,
|
|
95,
|
|
109,
|
|
105,
|
|
110,
|
|
116,
|
|
95,
|
|
97,
|
|
117,
|
|
116,
|
|
104,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "pool_state"
|
|
},
|
|
{
|
|
"name": "token_0_vault",
|
|
"docs": [
|
|
"The address that holds pool tokens for token_0"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_1_vault",
|
|
"docs": [
|
|
"The address that holds pool tokens for token_1"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "vault_0_mint",
|
|
"docs": [
|
|
"The mint of token_0 vault"
|
|
]
|
|
},
|
|
{
|
|
"name": "vault_1_mint",
|
|
"docs": [
|
|
"The mint of token_1 vault"
|
|
]
|
|
},
|
|
{
|
|
"name": "pool_partners",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
112,
|
|
97,
|
|
114,
|
|
116,
|
|
110,
|
|
101,
|
|
114,
|
|
95,
|
|
105,
|
|
110,
|
|
102,
|
|
111,
|
|
115
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "token_0_token_account",
|
|
"writable": true,
|
|
"relations": [
|
|
"partner"
|
|
]
|
|
},
|
|
{
|
|
"name": "token_1_token_account",
|
|
"writable": true,
|
|
"relations": [
|
|
"partner"
|
|
]
|
|
},
|
|
{
|
|
"name": "token_program",
|
|
"docs": [
|
|
"The SPL program to perform token transfers"
|
|
],
|
|
"address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
|
|
},
|
|
{
|
|
"name": "token_program_2022",
|
|
"docs": [
|
|
"The SPL program 2022 to perform token transfers"
|
|
],
|
|
"address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
|
|
}
|
|
],
|
|
"args": []
|
|
},
|
|
{
|
|
"name": "claim_rewards",
|
|
"docs": [
|
|
"Claim rewards for the user",
|
|
"Transfers the amount of tokens calculated for the user to their reward token account",
|
|
"",
|
|
"# Arguments",
|
|
"",
|
|
"* `ctx` - The context of accounts",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
4,
|
|
144,
|
|
132,
|
|
71,
|
|
116,
|
|
23,
|
|
151,
|
|
80
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "user",
|
|
"writable": true,
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "authority",
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116,
|
|
95,
|
|
97,
|
|
110,
|
|
100,
|
|
95,
|
|
108,
|
|
112,
|
|
95,
|
|
109,
|
|
105,
|
|
110,
|
|
116,
|
|
95,
|
|
97,
|
|
117,
|
|
116,
|
|
104,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "pool_state"
|
|
},
|
|
{
|
|
"name": "reward_info",
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
114,
|
|
101,
|
|
119,
|
|
97,
|
|
114,
|
|
100,
|
|
95,
|
|
105,
|
|
110,
|
|
102,
|
|
111,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "reward_info.start_at",
|
|
"account": "RewardInfo"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "reward_info.mint",
|
|
"account": "RewardInfo"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "reward_vault",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
114,
|
|
101,
|
|
119,
|
|
97,
|
|
114,
|
|
100,
|
|
95,
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "reward_info"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "user_token_account",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "user_reward_info",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
117,
|
|
115,
|
|
101,
|
|
114,
|
|
95,
|
|
114,
|
|
101,
|
|
119,
|
|
97,
|
|
114,
|
|
100,
|
|
95,
|
|
105,
|
|
110,
|
|
102,
|
|
111,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "reward_info"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "user"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "reward_mint",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_program",
|
|
"docs": [
|
|
"token Program"
|
|
],
|
|
"address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
|
|
},
|
|
{
|
|
"name": "token_program_2022",
|
|
"docs": [
|
|
"Token program 2022"
|
|
],
|
|
"address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
|
|
},
|
|
{
|
|
"name": "system_program",
|
|
"address": "11111111111111111111111111111111"
|
|
}
|
|
],
|
|
"args": []
|
|
},
|
|
{
|
|
"name": "collect_fund_fee",
|
|
"docs": [
|
|
"Collect the fund fee accrued to the pool",
|
|
"",
|
|
"# Arguments",
|
|
"",
|
|
"* `ctx` - The context of accounts",
|
|
"* `amount_0_requested` - The maximum amount of token_0 to send, can be 0 to collect fees in only token_1",
|
|
"* `amount_1_requested` - The maximum amount of token_1 to send, can be 0 to collect fees in only token_0",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
167,
|
|
138,
|
|
78,
|
|
149,
|
|
223,
|
|
194,
|
|
6,
|
|
126
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "owner",
|
|
"docs": [
|
|
"Only admin or fund_owner can collect fee now"
|
|
],
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "authority",
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116,
|
|
95,
|
|
97,
|
|
110,
|
|
100,
|
|
95,
|
|
108,
|
|
112,
|
|
95,
|
|
109,
|
|
105,
|
|
110,
|
|
116,
|
|
95,
|
|
97,
|
|
117,
|
|
116,
|
|
104,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"docs": [
|
|
"Pool state stores accumulated protocol fee amount"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "amm_config",
|
|
"docs": [
|
|
"Amm config account stores fund_owner"
|
|
]
|
|
},
|
|
{
|
|
"name": "token_0_vault",
|
|
"docs": [
|
|
"The address that holds pool tokens for token_0"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_1_vault",
|
|
"docs": [
|
|
"The address that holds pool tokens for token_1"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "vault_0_mint",
|
|
"docs": [
|
|
"The mint of token_0 vault"
|
|
]
|
|
},
|
|
{
|
|
"name": "vault_1_mint",
|
|
"docs": [
|
|
"The mint of token_1 vault"
|
|
]
|
|
},
|
|
{
|
|
"name": "recipient_token_0_account",
|
|
"docs": [
|
|
"The address that receives the collected token_0 fund fees"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "recipient_token_1_account",
|
|
"docs": [
|
|
"The address that receives the collected token_1 fund fees"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_program",
|
|
"docs": [
|
|
"The SPL program to perform token transfers"
|
|
],
|
|
"address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
|
|
},
|
|
{
|
|
"name": "token_program_2022",
|
|
"docs": [
|
|
"The SPL program 2022 to perform token transfers"
|
|
],
|
|
"address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "amount_0_requested",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "amount_1_requested",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "collect_protocol_fee",
|
|
"docs": [
|
|
"Collect the protocol fee accrued to the pool",
|
|
"",
|
|
"# Arguments",
|
|
"",
|
|
"* `ctx` - The context of accounts",
|
|
"* `amount_0_requested` - The maximum amount of token_0 to send, can be 0 to collect fees in only token_1",
|
|
"* `amount_1_requested` - The maximum amount of token_1 to send, can be 0 to collect fees in only token_0",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
136,
|
|
136,
|
|
252,
|
|
221,
|
|
194,
|
|
66,
|
|
126,
|
|
89
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "owner",
|
|
"docs": [
|
|
"Only admin or owner can collect fee now"
|
|
],
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "authority",
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116,
|
|
95,
|
|
97,
|
|
110,
|
|
100,
|
|
95,
|
|
108,
|
|
112,
|
|
95,
|
|
109,
|
|
105,
|
|
110,
|
|
116,
|
|
95,
|
|
97,
|
|
117,
|
|
116,
|
|
104,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"docs": [
|
|
"Pool state stores accumulated protocol fee amount"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "amm_config",
|
|
"docs": [
|
|
"Amm config account stores owner"
|
|
]
|
|
},
|
|
{
|
|
"name": "token_0_vault",
|
|
"docs": [
|
|
"The address that holds pool tokens for token_0"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_1_vault",
|
|
"docs": [
|
|
"The address that holds pool tokens for token_1"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "vault_0_mint",
|
|
"docs": [
|
|
"The mint of token_0 vault"
|
|
]
|
|
},
|
|
{
|
|
"name": "vault_1_mint",
|
|
"docs": [
|
|
"The mint of token_1 vault"
|
|
]
|
|
},
|
|
{
|
|
"name": "recipient_token_0_account",
|
|
"docs": [
|
|
"The address that receives the collected token_0 protocol fees"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "recipient_token_1_account",
|
|
"docs": [
|
|
"The address that receives the collected token_1 protocol fees"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_program",
|
|
"docs": [
|
|
"The SPL program to perform token transfers"
|
|
],
|
|
"address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
|
|
},
|
|
{
|
|
"name": "token_program_2022",
|
|
"docs": [
|
|
"The SPL program 2022 to perform token transfers"
|
|
],
|
|
"address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "amount_0_requested",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "amount_1_requested",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "create_amm_config",
|
|
"docs": [
|
|
"The configuation of AMM protocol, include trade fee and protocol fee",
|
|
"# Arguments",
|
|
"",
|
|
"* `ctx`- The accounts needed by instruction.",
|
|
"* `index` - The index of amm config, there may be multiple config.",
|
|
"* `trade_fee_rate` - Trade fee rate, can be changed.",
|
|
"* `protocol_fee_rate` - The rate of protocol fee within tarde fee.",
|
|
"* `fund_fee_rate` - The rate of fund fee within tarde fee.",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
137,
|
|
52,
|
|
237,
|
|
212,
|
|
215,
|
|
117,
|
|
108,
|
|
104
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "owner",
|
|
"docs": [
|
|
"Address to be set as protocol owner."
|
|
],
|
|
"writable": true,
|
|
"signer": true,
|
|
"address": "9QcHinaHcJFdzSHeiF1yGchcuQk3qPFNV13q6dZJbAny"
|
|
},
|
|
{
|
|
"name": "amm_config",
|
|
"docs": [
|
|
"Initialize AmmConfig state account to store protocol owner address and fee rates"
|
|
],
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
97,
|
|
109,
|
|
109,
|
|
95,
|
|
99,
|
|
111,
|
|
110,
|
|
102,
|
|
105,
|
|
103
|
|
]
|
|
},
|
|
{
|
|
"kind": "arg",
|
|
"path": "index"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "system_program",
|
|
"address": "11111111111111111111111111111111"
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "index",
|
|
"type": "u16"
|
|
},
|
|
{
|
|
"name": "trade_fee_rate",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "protocol_fee_rate",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "fund_fee_rate",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "create_pool_fee",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "max_open_time",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "create_rewards",
|
|
"docs": [
|
|
"Create rewards for the pool",
|
|
"Initializes a new reward info account and a reward vault account",
|
|
"Transfers the rewards to the reward vault",
|
|
"",
|
|
"# Arguments",
|
|
"",
|
|
"* `ctx` - The context of accounts",
|
|
"* `start_time` - The start time of the reward",
|
|
"* `end_time` - The end time of the reward",
|
|
"* `reward_amount` - The amount of the reward",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
124,
|
|
251,
|
|
145,
|
|
232,
|
|
5,
|
|
173,
|
|
159,
|
|
223
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "reward_provider",
|
|
"writable": true,
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "authority",
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116,
|
|
95,
|
|
97,
|
|
110,
|
|
100,
|
|
95,
|
|
108,
|
|
112,
|
|
95,
|
|
109,
|
|
105,
|
|
110,
|
|
116,
|
|
95,
|
|
97,
|
|
117,
|
|
116,
|
|
104,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "pool_state"
|
|
},
|
|
{
|
|
"name": "reward_info",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
114,
|
|
101,
|
|
119,
|
|
97,
|
|
114,
|
|
100,
|
|
95,
|
|
105,
|
|
110,
|
|
102,
|
|
111,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
},
|
|
{
|
|
"kind": "arg",
|
|
"path": "start_time"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "reward_mint"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "reward_providers_token_account",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "reward_vault",
|
|
"docs": [
|
|
"For reward to deposit into."
|
|
],
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
114,
|
|
101,
|
|
119,
|
|
97,
|
|
114,
|
|
100,
|
|
95,
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "reward_info"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "reward_mint",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_program",
|
|
"docs": [
|
|
"token Program"
|
|
],
|
|
"address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
|
|
},
|
|
{
|
|
"name": "token_program_2022",
|
|
"docs": [
|
|
"Token program 2022"
|
|
],
|
|
"address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
|
|
},
|
|
{
|
|
"name": "system_program",
|
|
"address": "11111111111111111111111111111111"
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "start_time",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "end_time",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "reward_amount",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "create_swap_referral",
|
|
"docs": [
|
|
"Initialize swap referrals for an existing AMM config",
|
|
"# Arguments",
|
|
"",
|
|
"* `ctx` - The accounts needed by the instruction, including those used by cpi to the referral program",
|
|
"* `name` - The project name, passed to the referral program. Must be less than 50 chars in length",
|
|
"* `default_share_bps` - Percentage share of fees to referrers. Must be less than 10_000"
|
|
],
|
|
"discriminator": [
|
|
67,
|
|
131,
|
|
93,
|
|
236,
|
|
56,
|
|
6,
|
|
40,
|
|
77
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "admin",
|
|
"docs": [
|
|
"Admin signer for this operation"
|
|
],
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "owner",
|
|
"address": "9QcHinaHcJFdzSHeiF1yGchcuQk3qPFNV13q6dZJbAny"
|
|
},
|
|
{
|
|
"name": "payer",
|
|
"writable": true,
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "amm_config",
|
|
"docs": [
|
|
"The config acts as the base for its referral project"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "project",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "system_program",
|
|
"address": "11111111111111111111111111111111"
|
|
},
|
|
{
|
|
"name": "referral_program",
|
|
"address": "REFER4ZgmyYx9c6He5XfaTMiGfdLwRnkV4RPp9t9iF3"
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "name",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "default_share_bps",
|
|
"type": "u16"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "deposit",
|
|
"docs": [
|
|
"Creates a pool for the given token pair and the initial price",
|
|
"",
|
|
"# Arguments",
|
|
"",
|
|
"* `ctx`- The context of accounts",
|
|
"* `lp_token_amount` - Pool token amount to transfer. token_a and token_b amount are set by the current exchange rate and size of the pool",
|
|
"* `maximum_token_0_amount` - Maximum token 0 amount to deposit, prevents excessive slippage",
|
|
"* `maximum_token_1_amount` - Maximum token 1 amount to deposit, prevents excessive slippage",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
242,
|
|
35,
|
|
198,
|
|
137,
|
|
82,
|
|
225,
|
|
242,
|
|
182
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "owner",
|
|
"docs": [
|
|
"Owner of the liquidity provided"
|
|
],
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "authority",
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116,
|
|
95,
|
|
97,
|
|
110,
|
|
100,
|
|
95,
|
|
108,
|
|
112,
|
|
95,
|
|
109,
|
|
105,
|
|
110,
|
|
116,
|
|
95,
|
|
97,
|
|
117,
|
|
116,
|
|
104,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"docs": [
|
|
"Pool state the owner is depositing into"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "user_pool_liquidity",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
117,
|
|
115,
|
|
101,
|
|
114,
|
|
45,
|
|
112,
|
|
111,
|
|
111,
|
|
108,
|
|
45,
|
|
108,
|
|
105,
|
|
113,
|
|
117,
|
|
105,
|
|
100,
|
|
105,
|
|
116,
|
|
121
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "owner"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "token_0_account",
|
|
"docs": [
|
|
"The payer's token account to deposit token_0"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_1_account",
|
|
"docs": [
|
|
"The payer's token account to deposit token_1"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_0_vault",
|
|
"docs": [
|
|
"Pool vault for token_0 to deposit into",
|
|
"The address that holds pool tokens for token_0"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_1_vault",
|
|
"docs": [
|
|
"Pool vault for token_1 to deposit into",
|
|
"The address that holds pool tokens for token_1"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_program",
|
|
"docs": [
|
|
"token Program"
|
|
],
|
|
"address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
|
|
},
|
|
{
|
|
"name": "token_program_2022",
|
|
"docs": [
|
|
"Token program 2022"
|
|
],
|
|
"address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
|
|
},
|
|
{
|
|
"name": "vault_0_mint",
|
|
"docs": [
|
|
"The mint of token_0 vault"
|
|
]
|
|
},
|
|
{
|
|
"name": "vault_1_mint",
|
|
"docs": [
|
|
"The mint of token_1 vault"
|
|
]
|
|
},
|
|
{
|
|
"name": "pool_partners",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
112,
|
|
97,
|
|
114,
|
|
116,
|
|
110,
|
|
101,
|
|
114,
|
|
95,
|
|
105,
|
|
110,
|
|
102,
|
|
111,
|
|
115
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "lp_token_amount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "maximum_token_0_amount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "maximum_token_1_amount",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "init_user_pool_liquidity",
|
|
"discriminator": [
|
|
227,
|
|
221,
|
|
200,
|
|
212,
|
|
36,
|
|
107,
|
|
149,
|
|
36
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "user",
|
|
"writable": true,
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "pool_state"
|
|
},
|
|
{
|
|
"name": "user_pool_liquidity",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
117,
|
|
115,
|
|
101,
|
|
114,
|
|
45,
|
|
112,
|
|
111,
|
|
111,
|
|
108,
|
|
45,
|
|
108,
|
|
105,
|
|
113,
|
|
117,
|
|
105,
|
|
100,
|
|
105,
|
|
116,
|
|
121
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "user"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "pool_partners",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
112,
|
|
97,
|
|
114,
|
|
116,
|
|
110,
|
|
101,
|
|
114,
|
|
95,
|
|
105,
|
|
110,
|
|
102,
|
|
111,
|
|
115
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "system_program",
|
|
"docs": [
|
|
"To create a new program account"
|
|
],
|
|
"address": "11111111111111111111111111111111"
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "partner",
|
|
"type": {
|
|
"option": "pubkey"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "initialize",
|
|
"docs": [
|
|
"Creates a pool for the given token pair and the initial price",
|
|
"",
|
|
"# Arguments",
|
|
"",
|
|
"* `ctx`- The context of accounts",
|
|
"* `init_amount_0` - the initial amount_0 to deposit",
|
|
"* `init_amount_1` - the initial amount_1 to deposit",
|
|
"* `open_time` - the timestamp allowed for swap",
|
|
"* `max_trade_fee_rate` - The maximum trade fee that can be charged on swaps",
|
|
"* `volatility_factor` - The volatility factor of the pool to determine the trade fee",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
175,
|
|
175,
|
|
109,
|
|
31,
|
|
13,
|
|
152,
|
|
155,
|
|
237
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "creator",
|
|
"docs": [
|
|
"Address paying to create the pool. It can be anyone."
|
|
],
|
|
"writable": true,
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "amm_config",
|
|
"docs": [
|
|
"Which amm config the pool belongs to"
|
|
]
|
|
},
|
|
{
|
|
"name": "authority",
|
|
"docs": [
|
|
"sign transactions on behalf of the pool",
|
|
"for vault and lp_mint"
|
|
],
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116,
|
|
95,
|
|
97,
|
|
110,
|
|
100,
|
|
95,
|
|
108,
|
|
112,
|
|
95,
|
|
109,
|
|
105,
|
|
110,
|
|
116,
|
|
95,
|
|
97,
|
|
117,
|
|
116,
|
|
104,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"docs": [
|
|
"Initialize an account to store the pool state"
|
|
],
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
112,
|
|
111,
|
|
111,
|
|
108
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "amm_config"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "token_0_mint"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "token_1_mint"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "user_pool_liquidity",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
117,
|
|
115,
|
|
101,
|
|
114,
|
|
45,
|
|
112,
|
|
111,
|
|
111,
|
|
108,
|
|
45,
|
|
108,
|
|
105,
|
|
113,
|
|
117,
|
|
105,
|
|
100,
|
|
105,
|
|
116,
|
|
121
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "creator"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "token_0_mint",
|
|
"docs": [
|
|
"Token_0 mint, the key must smaller than token_1 mint."
|
|
]
|
|
},
|
|
{
|
|
"name": "token_1_mint",
|
|
"docs": [
|
|
"Token_1 mint, the key must greater than token_0 mint."
|
|
]
|
|
},
|
|
{
|
|
"name": "creator_token_0",
|
|
"docs": [
|
|
"creator token 0 account"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "creator_token_1",
|
|
"docs": [
|
|
"creator token 1 account"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_0_vault",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
112,
|
|
111,
|
|
111,
|
|
108,
|
|
95,
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "token_0_mint"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "token_1_vault",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
112,
|
|
111,
|
|
111,
|
|
108,
|
|
95,
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "token_1_mint"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "create_pool_fee",
|
|
"docs": [
|
|
"create pool fee account"
|
|
],
|
|
"writable": true,
|
|
"address": "8PhehuioLjhJ35A5eavazJSwoXcA4J7WwzgoWDBDFSuY"
|
|
},
|
|
{
|
|
"name": "observation_state",
|
|
"docs": [
|
|
"an account to store oracle observations"
|
|
],
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
111,
|
|
98,
|
|
115,
|
|
101,
|
|
114,
|
|
118,
|
|
97,
|
|
116,
|
|
105,
|
|
111,
|
|
110
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "token_program",
|
|
"docs": [
|
|
"Program to create mint account and mint tokens"
|
|
],
|
|
"address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
|
|
},
|
|
{
|
|
"name": "token_0_program",
|
|
"docs": [
|
|
"Spl token program or token program 2022"
|
|
]
|
|
},
|
|
{
|
|
"name": "token_1_program",
|
|
"docs": [
|
|
"Spl token program or token program 2022"
|
|
]
|
|
},
|
|
{
|
|
"name": "associated_token_program",
|
|
"docs": [
|
|
"Program to create an ATA for receiving position NFT"
|
|
],
|
|
"address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
|
|
},
|
|
{
|
|
"name": "system_program",
|
|
"docs": [
|
|
"To create a new program account"
|
|
],
|
|
"address": "11111111111111111111111111111111"
|
|
},
|
|
{
|
|
"name": "rent",
|
|
"docs": [
|
|
"Sysvar for program account"
|
|
],
|
|
"address": "SysvarRent111111111111111111111111111111111"
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "init_amount_0",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "init_amount_1",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "open_time",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "max_trade_fee_rate",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "volatility_factor",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "initialize_partner",
|
|
"docs": [
|
|
"Creates a new `Partner` account associated with a certain pool",
|
|
"",
|
|
"* `ctx` - The context of accounts",
|
|
"* `name` - The name associated with the partner",
|
|
"* `token_0_token_account` - Token account for receiving token0 tokens",
|
|
"* `token_1_token_account` - Token account for receiving token1 tokens",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
165,
|
|
62,
|
|
179,
|
|
112,
|
|
129,
|
|
50,
|
|
173,
|
|
144
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "payer",
|
|
"writable": true,
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "authority",
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "pool_state"
|
|
},
|
|
{
|
|
"name": "pool_partners",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
112,
|
|
97,
|
|
114,
|
|
116,
|
|
110,
|
|
101,
|
|
114,
|
|
95,
|
|
105,
|
|
110,
|
|
102,
|
|
111,
|
|
115
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "partner",
|
|
"writable": true,
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "system_program",
|
|
"address": "11111111111111111111111111111111"
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "name",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "token_0_token_account",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "token_1_token_account",
|
|
"type": "pubkey"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "initialize_pool_partners",
|
|
"docs": [
|
|
"Initializes a new `PoolPartnerInfos` account unique to a particular pool",
|
|
"",
|
|
"* `ctx` - The context of accounts",
|
|
"* `partner_share_rate` - A fraction representing the partner's share of protocol fees",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
99,
|
|
11,
|
|
108,
|
|
186,
|
|
1,
|
|
126,
|
|
209,
|
|
251
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "payer",
|
|
"writable": true,
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "pool_state"
|
|
},
|
|
{
|
|
"name": "pool_partners",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
112,
|
|
97,
|
|
114,
|
|
116,
|
|
110,
|
|
101,
|
|
114,
|
|
95,
|
|
105,
|
|
110,
|
|
102,
|
|
111,
|
|
115
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "system_program",
|
|
"address": "11111111111111111111111111111111"
|
|
}
|
|
],
|
|
"args": []
|
|
},
|
|
{
|
|
"name": "oracle_based_swap_base_input",
|
|
"docs": [
|
|
"Swap the tokens in the pool base input amount, using oracle price and Curve calculator combined.",
|
|
"",
|
|
"# Arguments",
|
|
"",
|
|
"* `ctx`- The context of accounts",
|
|
"* `amount_in` - input amount to transfer, output to DESTINATION is based on the exchange rate",
|
|
"* `minimum_amount_out` - Minimum amount of output token, prevents excessive slippage",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
239,
|
|
82,
|
|
192,
|
|
187,
|
|
160,
|
|
26,
|
|
223,
|
|
223
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "payer",
|
|
"docs": [
|
|
"The user performing the swap"
|
|
],
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "authority",
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116,
|
|
95,
|
|
97,
|
|
110,
|
|
100,
|
|
95,
|
|
108,
|
|
112,
|
|
95,
|
|
109,
|
|
105,
|
|
110,
|
|
116,
|
|
95,
|
|
97,
|
|
117,
|
|
116,
|
|
104,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "amm_config",
|
|
"docs": [
|
|
"The factory state to read protocol fees"
|
|
]
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"docs": [
|
|
"The program account of the pool in which the swap will be performed"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "input_token_account",
|
|
"docs": [
|
|
"The user token account for input token"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "output_token_account",
|
|
"docs": [
|
|
"The user token account for output token"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "input_vault",
|
|
"docs": [
|
|
"The vault token account for input token"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "output_vault",
|
|
"docs": [
|
|
"The vault token account for output token"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "input_token_program",
|
|
"docs": [
|
|
"SPL program for input token transfers"
|
|
]
|
|
},
|
|
{
|
|
"name": "output_token_program",
|
|
"docs": [
|
|
"SPL program for output token transfers"
|
|
]
|
|
},
|
|
{
|
|
"name": "input_token_mint",
|
|
"docs": [
|
|
"The mint of input token"
|
|
]
|
|
},
|
|
{
|
|
"name": "output_token_mint",
|
|
"docs": [
|
|
"The mint of output token"
|
|
]
|
|
},
|
|
{
|
|
"name": "observation_state",
|
|
"docs": [
|
|
"The program account for the most recent oracle observation"
|
|
],
|
|
"writable": true
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "amount_in",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "minimum_amount_out",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "pool_config_update",
|
|
"discriminator": [
|
|
196,
|
|
212,
|
|
99,
|
|
63,
|
|
59,
|
|
117,
|
|
248,
|
|
223
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "authority",
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "amm_config"
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "h1",
|
|
"type": "u128"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "pool_config_update_v2",
|
|
"discriminator": [
|
|
228,
|
|
161,
|
|
199,
|
|
222,
|
|
53,
|
|
172,
|
|
121,
|
|
238
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "authority",
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "amm_config"
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "h1",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "price_fetched_at",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "pool_config_update_v3",
|
|
"discriminator": [
|
|
123,
|
|
135,
|
|
23,
|
|
15,
|
|
174,
|
|
100,
|
|
120,
|
|
152
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "authority",
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "amm_config"
|
|
},
|
|
{
|
|
"name": "observation_state",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "actor",
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
97,
|
|
99,
|
|
116,
|
|
111,
|
|
114
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "authority"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "h1",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "h2",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "price_fetched_at",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "min_trade_rate_at_oracle_price",
|
|
"type": {
|
|
"option": "u32"
|
|
}
|
|
},
|
|
{
|
|
"name": "oracle_price_delay_fee_rate_per_second",
|
|
"type": {
|
|
"option": "u32"
|
|
}
|
|
},
|
|
{
|
|
"name": "max_oracle_price_delay_fee",
|
|
"type": {
|
|
"option": "u32"
|
|
}
|
|
},
|
|
{
|
|
"name": "drift_factor",
|
|
"type": {
|
|
"option": "u32"
|
|
}
|
|
},
|
|
{
|
|
"name": "max_drift_factor",
|
|
"type": {
|
|
"option": "u32"
|
|
}
|
|
},
|
|
{
|
|
"name": "volatility_factor",
|
|
"type": {
|
|
"option": "u64"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "rebalance_kamino",
|
|
"docs": [
|
|
"Migrate from Meteora Dlmm to Gamma"
|
|
],
|
|
"discriminator": [
|
|
153,
|
|
94,
|
|
34,
|
|
16,
|
|
92,
|
|
181,
|
|
147,
|
|
215
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "signer",
|
|
"writable": true,
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "gamma_authority",
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116,
|
|
95,
|
|
97,
|
|
110,
|
|
100,
|
|
95,
|
|
108,
|
|
112,
|
|
95,
|
|
109,
|
|
105,
|
|
110,
|
|
116,
|
|
95,
|
|
97,
|
|
117,
|
|
116,
|
|
104,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"docs": [
|
|
"The program account of the pool in which the swap will be performed"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_vault",
|
|
"docs": [
|
|
"The vault token account for token 0"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_mint",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "kamino_reserve",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "kamino_lending_market",
|
|
"writable": true,
|
|
"address": "7u3HeHxYDLhnCoErrtycNokbQYbWGzLs6JSDqGAv5PfF"
|
|
},
|
|
{
|
|
"name": "lending_market_authority"
|
|
},
|
|
{
|
|
"name": "reserve_liquidity_supply",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "reserve_collateral_mint",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "gamma_pool_destination_collateral",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
112,
|
|
111,
|
|
111,
|
|
108,
|
|
95,
|
|
107,
|
|
97,
|
|
109,
|
|
105,
|
|
110,
|
|
111,
|
|
95,
|
|
100,
|
|
101,
|
|
112,
|
|
111,
|
|
115,
|
|
105,
|
|
116,
|
|
115
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "token_mint"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "instruction_sysvar_account",
|
|
"address": "Sysvar1nstructions1111111111111111111111111"
|
|
},
|
|
{
|
|
"name": "liquidity_token_program"
|
|
},
|
|
{
|
|
"name": "collateral_token_program",
|
|
"address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
|
|
},
|
|
{
|
|
"name": "kamino_program",
|
|
"address": "KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"
|
|
},
|
|
{
|
|
"name": "token_program",
|
|
"address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
|
|
},
|
|
{
|
|
"name": "token_program_2022",
|
|
"address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
|
|
},
|
|
{
|
|
"name": "system_program",
|
|
"address": "11111111111111111111111111111111"
|
|
}
|
|
],
|
|
"args": []
|
|
},
|
|
{
|
|
"name": "swap_base_input",
|
|
"docs": [
|
|
"Swap the tokens in the pool base input amount",
|
|
"",
|
|
"# Arguments",
|
|
"",
|
|
"* `ctx`- The context of accounts",
|
|
"* `amount_in` - input amount to transfer, output to DESTINATION is based on the exchange rate",
|
|
"* `minimum_amount_out` - Minimum amount of output token, prevents excessive slippage",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
143,
|
|
190,
|
|
90,
|
|
218,
|
|
196,
|
|
30,
|
|
51,
|
|
222
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "payer",
|
|
"docs": [
|
|
"The user performing the swap"
|
|
],
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "authority",
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116,
|
|
95,
|
|
97,
|
|
110,
|
|
100,
|
|
95,
|
|
108,
|
|
112,
|
|
95,
|
|
109,
|
|
105,
|
|
110,
|
|
116,
|
|
95,
|
|
97,
|
|
117,
|
|
116,
|
|
104,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "amm_config",
|
|
"docs": [
|
|
"The factory state to read protocol fees"
|
|
]
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"docs": [
|
|
"The program account of the pool in which the swap will be performed"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "input_token_account",
|
|
"docs": [
|
|
"The user token account for input token"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "output_token_account",
|
|
"docs": [
|
|
"The user token account for output token"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "input_vault",
|
|
"docs": [
|
|
"The vault token account for input token"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "output_vault",
|
|
"docs": [
|
|
"The vault token account for output token"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "input_token_program",
|
|
"docs": [
|
|
"SPL program for input token transfers"
|
|
]
|
|
},
|
|
{
|
|
"name": "output_token_program",
|
|
"docs": [
|
|
"SPL program for output token transfers"
|
|
]
|
|
},
|
|
{
|
|
"name": "input_token_mint",
|
|
"docs": [
|
|
"The mint of input token"
|
|
]
|
|
},
|
|
{
|
|
"name": "output_token_mint",
|
|
"docs": [
|
|
"The mint of output token"
|
|
]
|
|
},
|
|
{
|
|
"name": "observation_state",
|
|
"docs": [
|
|
"The program account for the most recent oracle observation"
|
|
],
|
|
"writable": true
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "amount_in",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "minimum_amount_out",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "swap_base_output",
|
|
"docs": [
|
|
"Swap the tokens in the pool base output amount",
|
|
"",
|
|
"# Arguments",
|
|
"",
|
|
"* `ctx`- The context of accounts",
|
|
"* `max_amount_in` - input amount prevents excessive slippage",
|
|
"* `amount_out` - amount of output token",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
55,
|
|
217,
|
|
98,
|
|
86,
|
|
163,
|
|
74,
|
|
180,
|
|
173
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "payer",
|
|
"docs": [
|
|
"The user performing the swap"
|
|
],
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "authority",
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116,
|
|
95,
|
|
97,
|
|
110,
|
|
100,
|
|
95,
|
|
108,
|
|
112,
|
|
95,
|
|
109,
|
|
105,
|
|
110,
|
|
116,
|
|
95,
|
|
97,
|
|
117,
|
|
116,
|
|
104,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "amm_config",
|
|
"docs": [
|
|
"The factory state to read protocol fees"
|
|
]
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"docs": [
|
|
"The program account of the pool in which the swap will be performed"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "input_token_account",
|
|
"docs": [
|
|
"The user token account for input token"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "output_token_account",
|
|
"docs": [
|
|
"The user token account for output token"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "input_vault",
|
|
"docs": [
|
|
"The vault token account for input token"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "output_vault",
|
|
"docs": [
|
|
"The vault token account for output token"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "input_token_program",
|
|
"docs": [
|
|
"SPL program for input token transfers"
|
|
]
|
|
},
|
|
{
|
|
"name": "output_token_program",
|
|
"docs": [
|
|
"SPL program for output token transfers"
|
|
]
|
|
},
|
|
{
|
|
"name": "input_token_mint",
|
|
"docs": [
|
|
"The mint of input token"
|
|
]
|
|
},
|
|
{
|
|
"name": "output_token_mint",
|
|
"docs": [
|
|
"The mint of output token"
|
|
]
|
|
},
|
|
{
|
|
"name": "observation_state",
|
|
"docs": [
|
|
"The program account for the most recent oracle observation"
|
|
],
|
|
"writable": true
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "_max_amount_in",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "_amount_out",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "update_amm_config",
|
|
"docs": [
|
|
"Updates the owner of the amm config",
|
|
"Must be called by the current owner or admin",
|
|
"",
|
|
"# Arguments",
|
|
"",
|
|
"* `ctx`- The context of accounts",
|
|
"* `trade_fee_rate`- The new trade fee rate of amm config, be set when `param` is 0",
|
|
"* `protocol_fee_rate`- The new protocol fee rate of amm config, be set when `param` is 1",
|
|
"* `fund_fee_rate`- The new fund fee rate of amm config, be set when `param` is 2",
|
|
"* `new_owner`- The config's new owner, be set when `param` is 3",
|
|
"* `new_fund_owner`- The config's new fund owner, be set when `param` is 4",
|
|
"* `param`- The vaule can be 0 | 1 | 2 | 3 | 4, otherwise will report a error",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
49,
|
|
60,
|
|
174,
|
|
136,
|
|
154,
|
|
28,
|
|
116,
|
|
200
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "owner",
|
|
"docs": [
|
|
"The amm config owner or admin"
|
|
],
|
|
"signer": true,
|
|
"address": "9QcHinaHcJFdzSHeiF1yGchcuQk3qPFNV13q6dZJbAny"
|
|
},
|
|
{
|
|
"name": "amm_config",
|
|
"docs": [
|
|
"The amm config account to update"
|
|
],
|
|
"writable": true
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "param",
|
|
"type": "u16"
|
|
},
|
|
{
|
|
"name": "value",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "update_partner",
|
|
"docs": [
|
|
"Authority-permissioned instruction to update certain fields in a pool, e.g token-accounts",
|
|
"",
|
|
"* `ctx` - The context of accounts",
|
|
"* `token_account_0` - (optional) update for the token_0_token_account field",
|
|
"* `token_account_1` - (optional) update for the token_1_token_account field",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
19,
|
|
112,
|
|
236,
|
|
81,
|
|
127,
|
|
55,
|
|
21,
|
|
196
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "authority",
|
|
"signer": true,
|
|
"relations": [
|
|
"partner"
|
|
]
|
|
},
|
|
{
|
|
"name": "partner",
|
|
"writable": true
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "token_account_0",
|
|
"type": {
|
|
"option": "pubkey"
|
|
}
|
|
},
|
|
{
|
|
"name": "token_account_1",
|
|
"type": {
|
|
"option": "pubkey"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "update_partner_fees",
|
|
"docs": [
|
|
"Updates claimable fee amounts for all `PartnerInfo`s in a `PoolPartnerInfos` account",
|
|
"",
|
|
"* `ctx` - The context of accounts",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
154,
|
|
142,
|
|
122,
|
|
49,
|
|
239,
|
|
161,
|
|
232,
|
|
29
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "pool_state",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "pool_partners",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
112,
|
|
97,
|
|
114,
|
|
116,
|
|
110,
|
|
101,
|
|
114,
|
|
95,
|
|
105,
|
|
110,
|
|
102,
|
|
111,
|
|
115
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"args": []
|
|
},
|
|
{
|
|
"name": "update_pool",
|
|
"docs": [
|
|
"Update pool status for given vaule",
|
|
"",
|
|
"# Arguments",
|
|
"",
|
|
"* `ctx`- The context of accounts",
|
|
"* `param`- The param of pool status",
|
|
"* `status` - The value",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
239,
|
|
214,
|
|
170,
|
|
78,
|
|
36,
|
|
35,
|
|
30,
|
|
34
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "authority",
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "actor",
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
97,
|
|
99,
|
|
116,
|
|
111,
|
|
114
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "authority"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "param",
|
|
"type": "u32"
|
|
},
|
|
{
|
|
"name": "value",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "withdraw",
|
|
"docs": [
|
|
"Withdraw lp for token0 ande token1",
|
|
"",
|
|
"# Arguments",
|
|
"",
|
|
"* `ctx`- The context of accounts",
|
|
"* `lp_token_amount` - Amount of pool tokens to burn. User receives an output of token a and b based on the percentage of the pool tokens that are returned.",
|
|
"* `minimum_token_0_amount` - Minimum amount of token 0 to receive, prevents excessive slippage",
|
|
"* `minimum_token_1_amount` - Minimum amount of token 1 to receive, prevents excessive slippage",
|
|
""
|
|
],
|
|
"discriminator": [
|
|
183,
|
|
18,
|
|
70,
|
|
156,
|
|
148,
|
|
109,
|
|
161,
|
|
34
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "owner",
|
|
"docs": [
|
|
"Owner of the liquidity provided"
|
|
],
|
|
"signer": true
|
|
},
|
|
{
|
|
"name": "authority",
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
118,
|
|
97,
|
|
117,
|
|
108,
|
|
116,
|
|
95,
|
|
97,
|
|
110,
|
|
100,
|
|
95,
|
|
108,
|
|
112,
|
|
95,
|
|
109,
|
|
105,
|
|
110,
|
|
116,
|
|
95,
|
|
97,
|
|
117,
|
|
116,
|
|
104,
|
|
95,
|
|
115,
|
|
101,
|
|
101,
|
|
100
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"docs": [
|
|
"Pool state account"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "user_pool_liquidity",
|
|
"docs": [
|
|
"User pool liquidity account"
|
|
],
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
117,
|
|
115,
|
|
101,
|
|
114,
|
|
45,
|
|
112,
|
|
111,
|
|
111,
|
|
108,
|
|
45,
|
|
108,
|
|
105,
|
|
113,
|
|
117,
|
|
105,
|
|
100,
|
|
105,
|
|
116,
|
|
121
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "owner"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "token_0_account",
|
|
"docs": [
|
|
"The owner's token account for receive token_0"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_1_account",
|
|
"docs": [
|
|
"The owner's token account for receive token_1"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_0_vault",
|
|
"docs": [
|
|
"The address that holds pool tokens for token_0"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_1_vault",
|
|
"docs": [
|
|
"The address that holds pool tokens for token_1"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "token_program",
|
|
"docs": [
|
|
"token Program"
|
|
],
|
|
"address": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"
|
|
},
|
|
{
|
|
"name": "token_program_2022",
|
|
"docs": [
|
|
"Token program 2022"
|
|
],
|
|
"address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
|
|
},
|
|
{
|
|
"name": "vault_0_mint",
|
|
"docs": [
|
|
"The mint of token_0 vault"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "vault_1_mint",
|
|
"docs": [
|
|
"The mint of token_1 vault"
|
|
],
|
|
"writable": true
|
|
},
|
|
{
|
|
"name": "pool_partners",
|
|
"writable": true,
|
|
"pda": {
|
|
"seeds": [
|
|
{
|
|
"kind": "const",
|
|
"value": [
|
|
112,
|
|
97,
|
|
114,
|
|
116,
|
|
110,
|
|
101,
|
|
114,
|
|
95,
|
|
105,
|
|
110,
|
|
102,
|
|
111,
|
|
115
|
|
]
|
|
},
|
|
{
|
|
"kind": "account",
|
|
"path": "pool_state"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "memo_program",
|
|
"docs": [
|
|
"memo program"
|
|
],
|
|
"address": "MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"
|
|
},
|
|
{
|
|
"name": "kamino_program",
|
|
"address": "KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"
|
|
},
|
|
{
|
|
"name": "instruction_sysvar_account",
|
|
"address": "Sysvar1nstructions1111111111111111111111111"
|
|
}
|
|
],
|
|
"args": [
|
|
{
|
|
"name": "lp_token_amount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "minimum_token_0_amount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "minimum_token_1_amount",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"accounts": [
|
|
{
|
|
"name": "Actor",
|
|
"discriminator": [
|
|
46,
|
|
77,
|
|
47,
|
|
204,
|
|
204,
|
|
54,
|
|
34,
|
|
88
|
|
]
|
|
},
|
|
{
|
|
"name": "AmmConfig",
|
|
"discriminator": [
|
|
218,
|
|
244,
|
|
33,
|
|
104,
|
|
203,
|
|
203,
|
|
43,
|
|
111
|
|
]
|
|
},
|
|
{
|
|
"name": "ObservationState",
|
|
"discriminator": [
|
|
122,
|
|
174,
|
|
197,
|
|
53,
|
|
129,
|
|
9,
|
|
165,
|
|
132
|
|
]
|
|
},
|
|
{
|
|
"name": "Partner",
|
|
"discriminator": [
|
|
122,
|
|
43,
|
|
246,
|
|
239,
|
|
141,
|
|
56,
|
|
243,
|
|
182
|
|
]
|
|
},
|
|
{
|
|
"name": "PoolPartnerInfos",
|
|
"discriminator": [
|
|
130,
|
|
98,
|
|
226,
|
|
231,
|
|
158,
|
|
49,
|
|
44,
|
|
231
|
|
]
|
|
},
|
|
{
|
|
"name": "PoolState",
|
|
"discriminator": [
|
|
247,
|
|
237,
|
|
227,
|
|
245,
|
|
215,
|
|
195,
|
|
222,
|
|
70
|
|
]
|
|
},
|
|
{
|
|
"name": "RewardInfo",
|
|
"discriminator": [
|
|
39,
|
|
7,
|
|
129,
|
|
22,
|
|
241,
|
|
96,
|
|
83,
|
|
133
|
|
]
|
|
},
|
|
{
|
|
"name": "UserPoolLiquidity",
|
|
"discriminator": [
|
|
0,
|
|
141,
|
|
89,
|
|
29,
|
|
236,
|
|
6,
|
|
14,
|
|
15
|
|
]
|
|
},
|
|
{
|
|
"name": "UserRewardInfo",
|
|
"discriminator": [
|
|
110,
|
|
57,
|
|
251,
|
|
139,
|
|
250,
|
|
236,
|
|
213,
|
|
178
|
|
]
|
|
}
|
|
],
|
|
"types": [
|
|
{
|
|
"name": "Actor",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "authority",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "is_admin",
|
|
"type": "bool"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "AmmConfig",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "bump",
|
|
"type": "u8"
|
|
},
|
|
{
|
|
"name": "disable_create_pool",
|
|
"type": "bool"
|
|
},
|
|
{
|
|
"name": "index",
|
|
"docs": [
|
|
"Config index"
|
|
],
|
|
"type": "u16"
|
|
},
|
|
{
|
|
"name": "trade_fee_rate",
|
|
"docs": [
|
|
"The trade fee, denominated in hundredths of bip (10^-6)"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "protocol_fee_rate",
|
|
"docs": [
|
|
"The protocol fee"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "fund_fee_rate",
|
|
"docs": [
|
|
"The fund fee, denominated in hundredths of bip (10^-6)"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "create_pool_fee",
|
|
"docs": [
|
|
"Fee for creating a new pool"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "protocol_owner",
|
|
"docs": [
|
|
"Address of the protocol fee owner"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "fund_owner",
|
|
"docs": [
|
|
"Address of the fund fee owner"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "referral_project",
|
|
"docs": [
|
|
"Address of the referral project"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "max_open_time",
|
|
"docs": [
|
|
"Max open time for a pool in seconds"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "secondary_admin",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "padding",
|
|
"docs": [
|
|
"padding"
|
|
],
|
|
"type": {
|
|
"array": [
|
|
"u64",
|
|
7
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "LpChangeEvent",
|
|
"docs": [
|
|
"Emitted when deposit or withdraw"
|
|
],
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "pool_id",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "lp_amount_before",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "token_0_vault_before",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "token_1_vault_before",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "token_0_amount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "token_1_amount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "token_0_transfer_fee",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "token_1_transfer_fee",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "change_type",
|
|
"type": "u8"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "MigrationEvent",
|
|
"docs": [
|
|
"Emitted when migration"
|
|
],
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "from_pool",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "to_pool",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "token_0_amount_withdrawn",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "token_1_amount_withdrawn",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "lp_tokens_migrated",
|
|
"type": "u128"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "Observation",
|
|
"docs": [
|
|
"The element of observations in ObservationState"
|
|
],
|
|
"serialization": "bytemuckunsafe",
|
|
"repr": {
|
|
"kind": "rust",
|
|
"packed": true
|
|
},
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "block_timestamp",
|
|
"docs": [
|
|
"The block timestamp of the observation"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "cumulative_token_0_price_x32",
|
|
"docs": [
|
|
"The cumulative of token0 price during the duration time, Q32.32, the remaining 64 bit for overflow"
|
|
],
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "cumulative_token_1_price_x32",
|
|
"docs": [
|
|
"The cumulative of token1 price during the duration time, Q32.32, the remaining 64 bit for overflow"
|
|
],
|
|
"type": "u128"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "ObservationState",
|
|
"serialization": "bytemuckunsafe",
|
|
"repr": {
|
|
"kind": "rust",
|
|
"packed": true
|
|
},
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "initialized",
|
|
"docs": [
|
|
"Whether the ObservationState is enabled"
|
|
],
|
|
"type": "bool"
|
|
},
|
|
{
|
|
"name": "observation_index",
|
|
"docs": [
|
|
"The most recently updated index of the observations array"
|
|
],
|
|
"type": "u16"
|
|
},
|
|
{
|
|
"name": "pool_id",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "observations",
|
|
"docs": [
|
|
"observation array"
|
|
],
|
|
"type": {
|
|
"array": [
|
|
{
|
|
"defined": {
|
|
"name": "Observation"
|
|
}
|
|
},
|
|
100
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "padding",
|
|
"docs": [
|
|
"padding"
|
|
],
|
|
"type": {
|
|
"array": [
|
|
"u64",
|
|
4
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "Partner",
|
|
"docs": [
|
|
"Account storing information for a protocol participating in the Gamma partner program"
|
|
],
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "name",
|
|
"docs": [
|
|
"Protocol name"
|
|
],
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "authority",
|
|
"docs": [
|
|
"The authority for this account"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"docs": [
|
|
"The pool which this partner account belongs to"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "token_0_token_account",
|
|
"docs": [
|
|
"The token-account that receives token0 tokens"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "token_1_token_account",
|
|
"docs": [
|
|
"The token-account that receives token1 tokens"
|
|
],
|
|
"type": "pubkey"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "PartnerInfo",
|
|
"serialization": "bytemuckunsafe",
|
|
"repr": {
|
|
"kind": "rust",
|
|
"packed": true
|
|
},
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "partner",
|
|
"docs": [
|
|
"The address of the partner account."
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "lp_token_linked_with_partner",
|
|
"docs": [
|
|
"This stores the LP tokens that are linked with the partner, i.e owned by customers of the partner."
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "total_claimed_fee_amount_token_0",
|
|
"docs": [
|
|
"The total fee-amount token0 claimed by the partner"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "total_claimed_fee_amount_token_1",
|
|
"docs": [
|
|
"The total fee-amount token1 claimed by the partner"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "total_earned_fee_amount_token_0",
|
|
"docs": [
|
|
"The total fee-amount token0 calculated for the partner"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "total_earned_fee_amount_token_1",
|
|
"docs": [
|
|
"The total fee-amount token1 calculated for the partner"
|
|
],
|
|
"type": "u64"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "PoolPartnerInfos",
|
|
"docs": [
|
|
"PDA storing all the information for valid pool partners"
|
|
],
|
|
"serialization": "bytemuckunsafe",
|
|
"repr": {
|
|
"kind": "rust",
|
|
"packed": true
|
|
},
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "last_observed_fee_amount_token_0",
|
|
"docs": [
|
|
"The observed fee-amount token0 as at the last infos update"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "last_observed_fee_amount_token_1",
|
|
"docs": [
|
|
"The observed fee-amount token1 as at the last infos update"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "infos",
|
|
"docs": [
|
|
"Partner infos"
|
|
],
|
|
"type": {
|
|
"array": [
|
|
{
|
|
"defined": {
|
|
"name": "PartnerInfo"
|
|
}
|
|
},
|
|
5
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "PoolState",
|
|
"serialization": "bytemuckunsafe",
|
|
"repr": {
|
|
"kind": "rust",
|
|
"packed": true
|
|
},
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "amm_config",
|
|
"docs": [
|
|
"To which AmmConfig the pool belongs to"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "pool_creator",
|
|
"docs": [
|
|
"Pool Creator"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "token_0_vault",
|
|
"docs": [
|
|
"Vault to store Token A of the pool"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "token_1_vault",
|
|
"docs": [
|
|
"Vault to store Token B of the pool"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "h1",
|
|
"docs": [
|
|
"Scaled to 9 decimal places.",
|
|
"This means `token1/token0`"
|
|
],
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "h2",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "h3",
|
|
"type": "u32"
|
|
},
|
|
{
|
|
"name": "h4",
|
|
"type": "u32"
|
|
},
|
|
{
|
|
"name": "token_0_mint",
|
|
"docs": [
|
|
"Mint info of Token A"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "token_1_mint",
|
|
"docs": [
|
|
"Mint info of Token B"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "token_0_program",
|
|
"docs": [
|
|
"token_0 program"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "token_1_program",
|
|
"docs": [
|
|
"token_1_program"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "observation_key",
|
|
"docs": [
|
|
"Observation account to store the oracle data"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "auth_bump",
|
|
"type": "u8"
|
|
},
|
|
{
|
|
"name": "status",
|
|
"docs": [
|
|
"Bitwise represenation of the state of the pool",
|
|
"Bit0: 1 - Disable Deposit(value will be 1), 0 - Deposit can be done(normal)",
|
|
"Bit1: 1 - Disable Withdraw(value will be 2), 0 - Withdraw can be done(normal)",
|
|
"Bit2: 1 - Disable Swap(value will be 4), 0 - Swap can be done(normal)"
|
|
],
|
|
"type": "u8"
|
|
},
|
|
{
|
|
"name": "_padding2",
|
|
"docs": [
|
|
"lp_mint decimals"
|
|
],
|
|
"type": "u8"
|
|
},
|
|
{
|
|
"name": "mint_0_decimals",
|
|
"docs": [
|
|
"mint0 and mint1 decimals"
|
|
],
|
|
"type": "u8"
|
|
},
|
|
{
|
|
"name": "mint_1_decimals",
|
|
"type": "u8"
|
|
},
|
|
{
|
|
"name": "lp_supply",
|
|
"docs": [
|
|
"True circulating supply of lp_mint tokens without burns and lock-ups"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "protocol_fees_token_0",
|
|
"docs": [
|
|
"The amount of token_0 and token_1 owed to Liquidity Provider"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "protocol_fees_token_1",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "fund_fees_token_0",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "fund_fees_token_1",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "open_time",
|
|
"docs": [
|
|
"The timestamp allowed for swap in the pool"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "recent_epoch",
|
|
"docs": [
|
|
"recent epoch"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "cumulative_trade_fees_token_0",
|
|
"docs": [
|
|
"Trade fees of token_0 after every swap"
|
|
],
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "cumulative_trade_fees_token_1",
|
|
"docs": [
|
|
"Trade fees of token_1 after every swap"
|
|
],
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "cumulative_volume_token_0",
|
|
"docs": [
|
|
"Cummulative volume of token_0"
|
|
],
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "cumulative_volume_token_1",
|
|
"docs": [
|
|
"Cummulative volume of token_1"
|
|
],
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "latest_dynamic_fee_rate",
|
|
"docs": [
|
|
"latest dynamic fee rate"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "max_trade_fee_rate",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "volatility_factor",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "token_0_vault_amount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "token_1_vault_amount",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "max_shared_token0",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "max_shared_token1",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "h16",
|
|
"type": "u32"
|
|
},
|
|
{
|
|
"name": "h15",
|
|
"type": "u32"
|
|
},
|
|
{
|
|
"name": "h14",
|
|
"type": "u32"
|
|
},
|
|
{
|
|
"name": "h13",
|
|
"type": "u32"
|
|
},
|
|
{
|
|
"name": "h12",
|
|
"type": "u32"
|
|
},
|
|
{
|
|
"name": "h10",
|
|
"type": "u32"
|
|
},
|
|
{
|
|
"name": "_padding3",
|
|
"type": {
|
|
"array": [
|
|
"u8",
|
|
8
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "token_0_amount_in_kamino",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "token_1_amount_in_kamino",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "withdrawn_kamino_profit_token_0",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "withdrawn_kamino_profit_token_1",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "partner_share_rate",
|
|
"docs": [
|
|
"Fraction of protocol tokens shared with partners. Denominator is 1_000_000"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "partner_protocol_fees_token_0",
|
|
"docs": [
|
|
"amount of protocol fees owed to referral partners(token0)"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "partner_protocol_fees_token_1",
|
|
"docs": [
|
|
"amount of protocol fees owed to referral partners(token1)"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "min_swap_at_spot_price",
|
|
"docs": [
|
|
"We later in future want to allow any LP to come and create a Pool of sol-usdc, where they can configure all the params.",
|
|
"They also might want to define a max and min price for swaps, until which they want to allow swaps.",
|
|
"This can be thought of similar to the ranges in CLMM.",
|
|
"{token1/token0} with 9 Decimals"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "max_swap_at_spot_price",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "h20",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "padding",
|
|
"docs": [
|
|
"padding"
|
|
],
|
|
"type": {
|
|
"array": [
|
|
"u64",
|
|
1
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "RewardInfo",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "pool",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "start_at",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "end_rewards_at",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "mint",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "total_to_disburse",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "rewarded_by",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "amount_disbursed",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "SwapEvent",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "pool_id",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "input_vault_before",
|
|
"docs": [
|
|
"pool vault - trade_fees"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "output_vault_before",
|
|
"docs": [
|
|
"pool_vault - trade_fees"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "input_amount",
|
|
"docs": [
|
|
"calculate result without transfer fees"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "output_amount",
|
|
"docs": [
|
|
"calculate result without transfer fees"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "input_mint",
|
|
"docs": [
|
|
"input mint for the swap"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "output_mint",
|
|
"docs": [
|
|
"output mint for the swap"
|
|
],
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "input_transfer_fee",
|
|
"docs": [
|
|
"transfer fees on input token using token extensions"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "output_transfer_fee",
|
|
"docs": [
|
|
"transfer fees on output token using token extensions"
|
|
],
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "base_input",
|
|
"type": "bool"
|
|
},
|
|
{
|
|
"name": "dynamic_fee",
|
|
"docs": [
|
|
"dynamic_fees after this swap"
|
|
],
|
|
"type": "u128"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "UserPoolLiquidity",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "user",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "token_0_deposited",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "token_1_deposited",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "token_0_withdrawn",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "token_1_withdrawn",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "lp_tokens_owned",
|
|
"type": "u128"
|
|
},
|
|
{
|
|
"name": "_p1",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "_p2",
|
|
"type": "u8"
|
|
},
|
|
{
|
|
"name": "first_investment_at",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "partner",
|
|
"type": {
|
|
"option": "pubkey"
|
|
}
|
|
},
|
|
{
|
|
"name": "padding",
|
|
"type": {
|
|
"array": [
|
|
"u8",
|
|
15
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "UserRewardInfo",
|
|
"type": {
|
|
"kind": "struct",
|
|
"fields": [
|
|
{
|
|
"name": "user",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "reward_info",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "pool_state",
|
|
"type": "pubkey"
|
|
},
|
|
{
|
|
"name": "total_claimed",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "total_rewards",
|
|
"type": "u64"
|
|
},
|
|
{
|
|
"name": "rewards_last_calculated_at",
|
|
"type": "u64"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
} |