Files
sol-trade-sdk/idl/raydium_amm_v3.json
2026-06-23 04:32:50 +08:00

2249 lines
65 KiB
JSON

{
"version": "0.1.0",
"name": "amm_v3",
"instructions": [
{
"name": "createAmmConfig",
"accounts": [
{
"name": "owner",
"isMut": true,
"isSigner": true
},
{
"name": "ammConfig",
"isMut": true,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "index",
"type": "u16"
},
{
"name": "tickSpacing",
"type": "u16"
},
{
"name": "tradeFeeRate",
"type": "u32"
},
{
"name": "protocolFeeRate",
"type": "u32"
},
{
"name": "fundFeeRate",
"type": "u32"
}
]
},
{
"name": "updateAmmConfig",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "ammConfig",
"isMut": true,
"isSigner": false
}
],
"args": [
{
"name": "param",
"type": "u8"
},
{
"name": "value",
"type": "u32"
}
]
},
{
"name": "createPool",
"accounts": [
{
"name": "poolCreator",
"isMut": true,
"isSigner": true
},
{
"name": "ammConfig",
"isMut": false,
"isSigner": false
},
{
"name": "poolState",
"isMut": true,
"isSigner": false
},
{
"name": "tokenMint0",
"isMut": false,
"isSigner": false
},
{
"name": "tokenMint1",
"isMut": false,
"isSigner": false
},
{
"name": "tokenVault0",
"isMut": true,
"isSigner": false
},
{
"name": "tokenVault1",
"isMut": true,
"isSigner": false
},
{
"name": "observationState",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
},
{
"name": "rent",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "sqrtPriceX64",
"type": "u128"
}
]
},
{
"name": "createOperationAccount",
"accounts": [
{
"name": "owner",
"isMut": true,
"isSigner": true
},
{
"name": "operationState",
"isMut": true,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": []
},
{
"name": "updateOperationAccount",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "operationState",
"isMut": true,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "param",
"type": "u8"
},
{
"name": "keys",
"type": {
"vec": "publicKey"
}
}
]
},
{
"name": "resetSqrtPrice",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "poolState",
"isMut": true,
"isSigner": false
},
{
"name": "tokenVault0",
"isMut": true,
"isSigner": false
},
{
"name": "tokenVault1",
"isMut": true,
"isSigner": false
},
{
"name": "observationState",
"isMut": true,
"isSigner": false
},
{
"name": "recipientTokenAccount0",
"isMut": true,
"isSigner": false
},
{
"name": "recipientTokenAccount1",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "sqrtPriceX64",
"type": "u128"
}
]
},
{
"name": "initializeReward",
"accounts": [
{
"name": "rewardFunder",
"isMut": true,
"isSigner": true
},
{
"name": "funderTokenAccount",
"isMut": true,
"isSigner": false
},
{
"name": "ammConfig",
"isMut": false,
"isSigner": false
},
{
"name": "poolState",
"isMut": true,
"isSigner": false
},
{
"name": "operationState",
"isMut": false,
"isSigner": false
},
{
"name": "rewardTokenMint",
"isMut": false,
"isSigner": false
},
{
"name": "rewardTokenVault",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
},
{
"name": "rent",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "param",
"type": {
"defined": "InitializeRewardParam"
}
}
]
},
{
"name": "collectRemainingRewards",
"accounts": [
{
"name": "rewardFunder",
"isMut": false,
"isSigner": true
},
{
"name": "funderTokenAccount",
"isMut": true,
"isSigner": false
},
{
"name": "poolState",
"isMut": true,
"isSigner": false
},
{
"name": "rewardTokenVault",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "rewardIndex",
"type": "u8"
}
]
},
{
"name": "updateRewardInfos",
"accounts": [
{
"name": "poolState",
"isMut": true,
"isSigner": false
}
],
"args": []
},
{
"name": "setRewardParams",
"accounts": [
{
"name": "authority",
"isMut": false,
"isSigner": true
},
{
"name": "ammConfig",
"isMut": false,
"isSigner": false
},
{
"name": "poolState",
"isMut": true,
"isSigner": false
},
{
"name": "operationState",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "rewardIndex",
"type": "u8"
},
{
"name": "emissionsPerSecondX64",
"type": "u128"
},
{
"name": "openTime",
"type": "u64"
},
{
"name": "endTime",
"type": "u64"
}
]
},
{
"name": "collectProtocolFee",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "poolState",
"isMut": true,
"isSigner": false
},
{
"name": "ammConfig",
"isMut": false,
"isSigner": false
},
{
"name": "tokenVault0",
"isMut": true,
"isSigner": false
},
{
"name": "tokenVault1",
"isMut": true,
"isSigner": false
},
{
"name": "recipientTokenAccount0",
"isMut": true,
"isSigner": false
},
{
"name": "recipientTokenAccount1",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "amount0Requested",
"type": "u64"
},
{
"name": "amount1Requested",
"type": "u64"
}
]
},
{
"name": "collectFundFee",
"accounts": [
{
"name": "owner",
"isMut": false,
"isSigner": true
},
{
"name": "poolState",
"isMut": true,
"isSigner": false
},
{
"name": "ammConfig",
"isMut": false,
"isSigner": false
},
{
"name": "tokenVault0",
"isMut": true,
"isSigner": false
},
{
"name": "tokenVault1",
"isMut": true,
"isSigner": false
},
{
"name": "recipientTokenAccount0",
"isMut": true,
"isSigner": false
},
{
"name": "recipientTokenAccount1",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "amount0Requested",
"type": "u64"
},
{
"name": "amount1Requested",
"type": "u64"
}
]
},
{
"name": "openPosition",
"accounts": [
{
"name": "payer",
"isMut": true,
"isSigner": true
},
{
"name": "positionNftOwner",
"isMut": false,
"isSigner": false
},
{
"name": "positionNftMint",
"isMut": true,
"isSigner": true
},
{
"name": "positionNftAccount",
"isMut": true,
"isSigner": false
},
{
"name": "metadataAccount",
"isMut": true,
"isSigner": false
},
{
"name": "poolState",
"isMut": true,
"isSigner": false
},
{
"name": "protocolPosition",
"isMut": true,
"isSigner": false
},
{
"name": "tickArrayLower",
"isMut": true,
"isSigner": false
},
{
"name": "tickArrayUpper",
"isMut": true,
"isSigner": false
},
{
"name": "personalPosition",
"isMut": true,
"isSigner": false
},
{
"name": "tokenAccount0",
"isMut": true,
"isSigner": false
},
{
"name": "tokenAccount1",
"isMut": true,
"isSigner": false
},
{
"name": "tokenVault0",
"isMut": true,
"isSigner": false
},
{
"name": "tokenVault1",
"isMut": true,
"isSigner": false
},
{
"name": "rent",
"isMut": false,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "associatedTokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "metadataProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "tickLowerIndex",
"type": "i32"
},
{
"name": "tickUpperIndex",
"type": "i32"
},
{
"name": "tickArrayLowerStartIndex",
"type": "i32"
},
{
"name": "tickArrayUpperStartIndex",
"type": "i32"
},
{
"name": "liquidity",
"type": "u128"
},
{
"name": "amount0Max",
"type": "u64"
},
{
"name": "amount1Max",
"type": "u64"
}
]
},
{
"name": "closePosition",
"accounts": [
{
"name": "nftOwner",
"isMut": true,
"isSigner": true
},
{
"name": "positionNftMint",
"isMut": true,
"isSigner": false
},
{
"name": "positionNftAccount",
"isMut": true,
"isSigner": false
},
{
"name": "personalPosition",
"isMut": true,
"isSigner": false
},
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": []
},
{
"name": "increaseLiquidity",
"accounts": [
{
"name": "nftOwner",
"isMut": false,
"isSigner": true
},
{
"name": "nftAccount",
"isMut": false,
"isSigner": false
},
{
"name": "poolState",
"isMut": true,
"isSigner": false
},
{
"name": "protocolPosition",
"isMut": true,
"isSigner": false
},
{
"name": "personalPosition",
"isMut": true,
"isSigner": false
},
{
"name": "tickArrayLower",
"isMut": true,
"isSigner": false
},
{
"name": "tickArrayUpper",
"isMut": true,
"isSigner": false
},
{
"name": "tokenAccount0",
"isMut": true,
"isSigner": false
},
{
"name": "tokenAccount1",
"isMut": true,
"isSigner": false
},
{
"name": "tokenVault0",
"isMut": true,
"isSigner": false
},
{
"name": "tokenVault1",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "liquidity",
"type": "u128"
},
{
"name": "amount0Max",
"type": "u64"
},
{
"name": "amount1Max",
"type": "u64"
}
]
},
{
"name": "decreaseLiquidity",
"accounts": [
{
"name": "nftOwner",
"isMut": false,
"isSigner": true
},
{
"name": "nftAccount",
"isMut": false,
"isSigner": false
},
{
"name": "personalPosition",
"isMut": true,
"isSigner": false
},
{
"name": "poolState",
"isMut": true,
"isSigner": false
},
{
"name": "protocolPosition",
"isMut": true,
"isSigner": false
},
{
"name": "tokenVault0",
"isMut": true,
"isSigner": false
},
{
"name": "tokenVault1",
"isMut": true,
"isSigner": false
},
{
"name": "tickArrayLower",
"isMut": true,
"isSigner": false
},
{
"name": "tickArrayUpper",
"isMut": true,
"isSigner": false
},
{
"name": "recipientTokenAccount0",
"isMut": true,
"isSigner": false
},
{
"name": "recipientTokenAccount1",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "liquidity",
"type": "u128"
},
{
"name": "amount0Min",
"type": "u64"
},
{
"name": "amount1Min",
"type": "u64"
}
]
},
{
"name": "swap",
"accounts": [
{
"name": "payer",
"isMut": false,
"isSigner": true
},
{
"name": "ammConfig",
"isMut": false,
"isSigner": false
},
{
"name": "poolState",
"isMut": true,
"isSigner": false
},
{
"name": "inputTokenAccount",
"isMut": true,
"isSigner": false
},
{
"name": "outputTokenAccount",
"isMut": true,
"isSigner": false
},
{
"name": "inputVault",
"isMut": true,
"isSigner": false
},
{
"name": "outputVault",
"isMut": true,
"isSigner": false
},
{
"name": "observationState",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
},
{
"name": "tickArray",
"isMut": true,
"isSigner": false
}
],
"args": [
{
"name": "amount",
"type": "u64"
},
{
"name": "otherAmountThreshold",
"type": "u64"
},
{
"name": "sqrtPriceLimitX64",
"type": "u128"
},
{
"name": "isBaseInput",
"type": "bool"
}
]
},
{
"name": "swapRouterBaseIn",
"accounts": [
{
"name": "payer",
"isMut": false,
"isSigner": true
},
{
"name": "inputTokenAccount",
"isMut": true,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "amountIn",
"type": "u64"
},
{
"name": "amountOutMinimum",
"type": "u64"
}
]
}
],
"accounts": [
{
"name": "AmmConfig",
"type": {
"kind": "struct",
"fields": [
{
"name": "bump",
"type": "u8"
},
{
"name": "index",
"type": "u16"
},
{
"name": "owner",
"type": "publicKey"
},
{
"name": "protocolFeeRate",
"type": "u32"
},
{
"name": "tradeFeeRate",
"type": "u32"
},
{
"name": "tickSpacing",
"type": "u16"
},
{
"name": "fundFeeRate",
"type": "u32"
},
{
"name": "paddingU32",
"type": "u32"
},
{
"name": "fundOwner",
"type": "publicKey"
},
{
"name": "padding",
"type": {
"array": [
"u64",
3
]
}
}
]
}
},
{
"name": "OperationState",
"type": {
"kind": "struct",
"fields": [
{
"name": "bump",
"type": "u8"
},
{
"name": "operationOwners",
"type": {
"array": [
"publicKey",
10
]
}
},
{
"name": "whitelistMints",
"type": {
"array": [
"publicKey",
100
]
}
}
]
}
},
{
"name": "ObservationState",
"type": {
"kind": "struct",
"fields": [
{
"name": "initialized",
"type": "bool"
},
{
"name": "poolId",
"type": "publicKey"
},
{
"name": "observations",
"type": {
"array": [
{
"defined": "Observation"
},
1000
]
}
},
{
"name": "padding",
"type": {
"array": [
"u128",
5
]
}
}
]
}
},
{
"name": "PersonalPositionState",
"type": {
"kind": "struct",
"fields": [
{
"name": "bump",
"type": "u8"
},
{
"name": "nftMint",
"type": "publicKey"
},
{
"name": "poolId",
"type": "publicKey"
},
{
"name": "tickLowerIndex",
"type": "i32"
},
{
"name": "tickUpperIndex",
"type": "i32"
},
{
"name": "liquidity",
"type": "u128"
},
{
"name": "feeGrowthInside0LastX64",
"type": "u128"
},
{
"name": "feeGrowthInside1LastX64",
"type": "u128"
},
{
"name": "tokenFeesOwed0",
"type": "u64"
},
{
"name": "tokenFeesOwed1",
"type": "u64"
},
{
"name": "rewardInfos",
"type": {
"array": [
{
"defined": "PositionRewardInfo"
},
3
]
}
},
{
"name": "padding",
"type": {
"array": [
"u64",
8
]
}
}
]
}
},
{
"name": "PoolState",
"type": {
"kind": "struct",
"fields": [
{
"name": "bump",
"type": "u8"
},
{
"name": "ammConfig",
"type": "publicKey"
},
{
"name": "owner",
"type": "publicKey"
},
{
"name": "tokenMint0",
"type": "publicKey"
},
{
"name": "tokenMint1",
"type": "publicKey"
},
{
"name": "tokenVault0",
"type": "publicKey"
},
{
"name": "tokenVault1",
"type": "publicKey"
},
{
"name": "observationKey",
"type": "publicKey"
},
{
"name": "mintDecimals0",
"type": "u8"
},
{
"name": "mintDecimals1",
"type": "u8"
},
{
"name": "tickSpacing",
"type": "u16"
},
{
"name": "liquidity",
"type": "u128"
},
{
"name": "sqrtPriceX64",
"type": "u128"
},
{
"name": "tickCurrent",
"type": "i32"
},
{
"name": "observationIndex",
"type": "u16"
},
{
"name": "observationUpdateDuration",
"type": "u16"
},
{
"name": "feeGrowthGlobal0X64",
"type": "u128"
},
{
"name": "feeGrowthGlobal1X64",
"type": "u128"
},
{
"name": "protocolFeesToken0",
"type": "u64"
},
{
"name": "protocolFeesToken1",
"type": "u64"
},
{
"name": "swapInAmountToken0",
"type": "u128"
},
{
"name": "swapOutAmountToken1",
"type": "u128"
},
{
"name": "swapInAmountToken1",
"type": "u128"
},
{
"name": "swapOutAmountToken0",
"type": "u128"
},
{
"name": "status",
"type": "u8"
},
{
"name": "padding",
"type": {
"array": [
"u8",
7
]
}
},
{
"name": "rewardInfos",
"type": {
"array": [
{
"defined": "RewardInfo"
},
3
]
}
},
{
"name": "tickArrayBitmap",
"type": {
"array": [
"u64",
16
]
}
},
{
"name": "totalFeesToken0",
"type": "u64"
},
{
"name": "totalFeesClaimedToken0",
"type": "u64"
},
{
"name": "totalFeesToken1",
"type": "u64"
},
{
"name": "totalFeesClaimedToken1",
"type": "u64"
},
{
"name": "fundFeesToken0",
"type": "u64"
},
{
"name": "fundFeesToken1",
"type": "u64"
},
{
"name": "padding1",
"type": {
"array": [
"u64",
26
]
}
},
{
"name": "padding2",
"type": {
"array": [
"u64",
32
]
}
}
]
}
},
{
"name": "ProtocolPositionState",
"type": {
"kind": "struct",
"fields": [
{
"name": "bump",
"type": "u8"
},
{
"name": "poolId",
"type": "publicKey"
},
{
"name": "tickLowerIndex",
"type": "i32"
},
{
"name": "tickUpperIndex",
"type": "i32"
},
{
"name": "liquidity",
"type": "u128"
},
{
"name": "feeGrowthInside0LastX64",
"type": "u128"
},
{
"name": "feeGrowthInside1LastX64",
"type": "u128"
},
{
"name": "tokenFeesOwed0",
"type": "u64"
},
{
"name": "tokenFeesOwed1",
"type": "u64"
},
{
"name": "rewardGrowthInside",
"type": {
"array": [
"u128",
3
]
}
},
{
"name": "padding",
"type": {
"array": [
"u64",
8
]
}
}
]
}
},
{
"name": "TickArrayState",
"type": {
"kind": "struct",
"fields": [
{
"name": "poolId",
"type": "publicKey"
},
{
"name": "startTickIndex",
"type": "i32"
},
{
"name": "ticks",
"type": {
"array": [
{
"defined": "TickState"
},
60
]
}
},
{
"name": "initializedTickCount",
"type": "u8"
},
{
"name": "padding",
"type": {
"array": [
"u8",
115
]
}
}
]
}
}
],
"types": [
{
"name": "InitializeRewardParam",
"type": {
"kind": "struct",
"fields": [
{
"name": "openTime",
"type": "u64"
},
{
"name": "endTime",
"type": "u64"
},
{
"name": "emissionsPerSecondX64",
"type": "u128"
}
]
}
},
{
"name": "Observation",
"type": {
"kind": "struct",
"fields": [
{
"name": "blockTimestamp",
"type": "u32"
},
{
"name": "sqrtPriceX64",
"type": "u128"
},
{
"name": "cumulativeTimePriceX64",
"type": "u128"
},
{
"name": "padding",
"type": "u128"
}
]
}
},
{
"name": "PositionRewardInfo",
"type": {
"kind": "struct",
"fields": [
{
"name": "growthInsideLastX64",
"type": "u128"
},
{
"name": "rewardAmountOwed",
"type": "u64"
}
]
}
},
{
"name": "RewardInfo",
"type": {
"kind": "struct",
"fields": [
{
"name": "rewardState",
"type": "u8"
},
{
"name": "openTime",
"type": "u64"
},
{
"name": "endTime",
"type": "u64"
},
{
"name": "lastUpdateTime",
"type": "u64"
},
{
"name": "emissionsPerSecondX64",
"type": "u128"
},
{
"name": "rewardTotalEmissioned",
"type": "u64"
},
{
"name": "rewardClaimed",
"type": "u64"
},
{
"name": "tokenMint",
"type": "publicKey"
},
{
"name": "tokenVault",
"type": "publicKey"
},
{
"name": "authority",
"type": "publicKey"
},
{
"name": "rewardGrowthGlobalX64",
"type": "u128"
}
]
}
},
{
"name": "TickState",
"type": {
"kind": "struct",
"fields": [
{
"name": "tick",
"type": "i32"
},
{
"name": "liquidityNet",
"type": "i128"
},
{
"name": "liquidityGross",
"type": "u128"
},
{
"name": "feeGrowthOutside0X64",
"type": "u128"
},
{
"name": "feeGrowthOutside1X64",
"type": "u128"
},
{
"name": "rewardGrowthsOutsideX64",
"type": {
"array": [
"u128",
3
]
}
},
{
"name": "padding",
"type": {
"array": [
"u32",
13
]
}
}
]
}
},
{
"name": "PoolStatusBitIndex",
"type": {
"kind": "enum",
"variants": [
{
"name": "OpenPositionOrIncreaseLiquidity"
},
{
"name": "DecreaseLiquidity"
},
{
"name": "CollectFee"
},
{
"name": "CollectReward"
},
{
"name": "Swap"
}
]
}
},
{
"name": "PoolStatusBitFlag",
"type": {
"kind": "enum",
"variants": [
{
"name": "Enable"
},
{
"name": "Disable"
}
]
}
},
{
"name": "RewardState",
"type": {
"kind": "enum",
"variants": [
{
"name": "Uninitialized"
},
{
"name": "Initialized"
},
{
"name": "Opening"
},
{
"name": "Ended"
}
]
}
}
],
"events": [
{
"name": "CreateConfigEvent",
"fields": [
{
"name": "index",
"type": "u16",
"index": false
},
{
"name": "owner",
"type": "publicKey",
"index": true
},
{
"name": "protocolFeeRate",
"type": "u32",
"index": false
},
{
"name": "tradeFeeRate",
"type": "u32",
"index": false
},
{
"name": "tickSpacing",
"type": "u16",
"index": false
},
{
"name": "fundFeeRate",
"type": "u32",
"index": false
},
{
"name": "fundOwner",
"type": "publicKey",
"index": false
}
]
},
{
"name": "UpdaterConfigEvent",
"fields": [
{
"name": "owner",
"type": "publicKey",
"index": false
},
{
"name": "protocolFeeRate",
"type": "u32",
"index": false
},
{
"name": "tradeFeeRate",
"type": "u32",
"index": false
},
{
"name": "fundFeeRate",
"type": "u32",
"index": false
},
{
"name": "fundOwner",
"type": "publicKey",
"index": false
}
]
},
{
"name": "CreatePersonalPositionEvent",
"fields": [
{
"name": "poolState",
"type": "publicKey",
"index": false
},
{
"name": "minter",
"type": "publicKey",
"index": false
},
{
"name": "nftOwner",
"type": "publicKey",
"index": false
},
{
"name": "tickLowerIndex",
"type": "i32",
"index": false
},
{
"name": "tickUpperIndex",
"type": "i32",
"index": false
},
{
"name": "liquidity",
"type": "u128",
"index": false
},
{
"name": "depositAmount0",
"type": "u64",
"index": false
},
{
"name": "depositAmount1",
"type": "u64",
"index": false
}
]
},
{
"name": "IncreaseLiquidityEvent",
"fields": [
{
"name": "positionNftMint",
"type": "publicKey",
"index": false
},
{
"name": "liquidity",
"type": "u128",
"index": false
},
{
"name": "amount0",
"type": "u64",
"index": false
},
{
"name": "amount1",
"type": "u64",
"index": false
}
]
},
{
"name": "DecreaseLiquidityEvent",
"fields": [
{
"name": "positionNftMint",
"type": "publicKey",
"index": false
},
{
"name": "liquidity",
"type": "u128",
"index": false
},
{
"name": "decreaseAmount0",
"type": "u64",
"index": false
},
{
"name": "decreaseAmount1",
"type": "u64",
"index": false
},
{
"name": "feeAmount0",
"type": "u64",
"index": false
},
{
"name": "feeAmount1",
"type": "u64",
"index": false
},
{
"name": "rewardAmounts",
"type": {
"array": [
"u64",
3
]
},
"index": false
}
]
},
{
"name": "CollectPersonalFeeEvent",
"fields": [
{
"name": "positionNftMint",
"type": "publicKey",
"index": false
},
{
"name": "recipientTokenAccount0",
"type": "publicKey",
"index": false
},
{
"name": "recipientTokenAccount1",
"type": "publicKey",
"index": false
},
{
"name": "amount0",
"type": "u64",
"index": false
},
{
"name": "amount1",
"type": "u64",
"index": false
}
]
},
{
"name": "UpdateRewardInfosEvent",
"fields": [
{
"name": "rewardGrowthGlobalX64",
"type": {
"array": [
"u128",
3
]
},
"index": false
}
]
},
{
"name": "PoolCreatedEvent",
"fields": [
{
"name": "tokenMint0",
"type": "publicKey",
"index": false
},
{
"name": "tokenMint1",
"type": "publicKey",
"index": false
},
{
"name": "tickSpacing",
"type": "u16",
"index": false
},
{
"name": "poolState",
"type": "publicKey",
"index": false
},
{
"name": "sqrtPriceX64",
"type": "u128",
"index": false
},
{
"name": "tick",
"type": "i32",
"index": false
},
{
"name": "tokenVault0",
"type": "publicKey",
"index": false
},
{
"name": "tokenVault1",
"type": "publicKey",
"index": false
}
]
},
{
"name": "CollectProtocolFeeEvent",
"fields": [
{
"name": "poolState",
"type": "publicKey",
"index": false
},
{
"name": "recipientTokenAccount0",
"type": "publicKey",
"index": false
},
{
"name": "recipientTokenAccount1",
"type": "publicKey",
"index": false
},
{
"name": "amount0",
"type": "u64",
"index": false
},
{
"name": "amount1",
"type": "u64",
"index": false
}
]
},
{
"name": "SwapEvent",
"fields": [
{
"name": "poolState",
"type": "publicKey",
"index": false
},
{
"name": "sender",
"type": "publicKey",
"index": false
},
{
"name": "tokenAccount0",
"type": "publicKey",
"index": false
},
{
"name": "tokenAccount1",
"type": "publicKey",
"index": false
},
{
"name": "amount0",
"type": "u64",
"index": false
},
{
"name": "amount1",
"type": "u64",
"index": false
},
{
"name": "zeroForOne",
"type": "bool",
"index": false
},
{
"name": "sqrtPriceX64",
"type": "u128",
"index": false
},
{
"name": "liquidity",
"type": "u128",
"index": false
},
{
"name": "tick",
"type": "i32",
"index": false
}
]
},
{
"name": "LiquidityChangeEvent",
"fields": [
{
"name": "poolState",
"type": "publicKey",
"index": false
},
{
"name": "tick",
"type": "i32",
"index": false
},
{
"name": "tickLower",
"type": "i32",
"index": false
},
{
"name": "tickUpper",
"type": "i32",
"index": false
},
{
"name": "liquidityBefore",
"type": "u128",
"index": false
},
{
"name": "liquidityAfter",
"type": "u128",
"index": false
}
]
},
{
"name": "PriceChangeEvent",
"fields": [
{
"name": "poolState",
"type": "publicKey",
"index": false
},
{
"name": "tickBefore",
"type": "i32",
"index": false
},
{
"name": "tickAfter",
"type": "i32",
"index": false
},
{
"name": "sqrtPriceX64Before",
"type": "u128",
"index": false
},
{
"name": "sqrtPriceX64After",
"type": "u128",
"index": false
},
{
"name": "liquidityBefore",
"type": "u128",
"index": false
},
{
"name": "liquidityAfter",
"type": "u128",
"index": false
},
{
"name": "zeroForOne",
"type": "bool",
"index": false
}
]
}
],
"errors": [
{
"code": 6000,
"name": "LOK",
"msg": "LOK"
},
{
"code": 6001,
"name": "NotApproved",
"msg": "Not approved"
},
{
"code": 6002,
"name": "InvalidUpdateConfigFlag",
"msg": "invalid update amm config flag"
},
{
"code": 6003,
"name": "AccountLack",
"msg": "Account lack"
},
{
"code": 6004,
"name": "ClosePositionErr",
"msg": "Remove liquitity, collect fees owed and reward then you can close position account"
},
{
"code": 6005,
"name": "ZeroMintAmount",
"msg": "Minting amount should be greater than 0"
},
{
"code": 6006,
"name": "InvaildTickIndex",
"msg": "Tick out of range"
},
{
"code": 6007,
"name": "TickInvaildOrder",
"msg": "The lower tick must be below the upper tick"
},
{
"code": 6008,
"name": "TickLowerOverflow",
"msg": "The tick must be greater, or equal to the minimum tick(-221818)"
},
{
"code": 6009,
"name": "TickUpperOverflow",
"msg": "The tick must be lesser than, or equal to the maximum tick(221818)"
},
{
"code": 6010,
"name": "TickAndSpacingNotMatch",
"msg": "tick % tick_spacing must be zero"
},
{
"code": 6011,
"name": "InvalidTickArray",
"msg": "Invaild tick array account"
},
{
"code": 6012,
"name": "InvalidTickArrayBoundary",
"msg": "Invaild tick array boundary"
},
{
"code": 6013,
"name": "SqrtPriceLimitOverflow",
"msg": "Square root price limit overflow"
},
{
"code": 6014,
"name": "SqrtPriceX64",
"msg": "sqrt_price_x64 out of range"
},
{
"code": 6015,
"name": "LiquiditySubValueErr",
"msg": "Liquidity sub delta L must be smaller than before"
},
{
"code": 6016,
"name": "LiquidityAddValueErr",
"msg": "Liquidity add delta L must be greater, or equal to before"
},
{
"code": 6017,
"name": "InvaildLiquidity",
"msg": "Invaild liquidity when update position"
},
{
"code": 6018,
"name": "ForbidBothZeroForSupplyLiquidity",
"msg": "Both token amount must not be zero while supply liquidity"
},
{
"code": 6019,
"name": "LiquidityInsufficient",
"msg": "Liquidity insufficient"
},
{
"code": 6020,
"name": "TransactionTooOld",
"msg": "Transaction too old"
},
{
"code": 6021,
"name": "PriceSlippageCheck",
"msg": "Price slippage check"
},
{
"code": 6022,
"name": "TooLittleOutputReceived",
"msg": "Too little output received"
},
{
"code": 6023,
"name": "TooMuchInputPaid",
"msg": "Too much input paid"
},
{
"code": 6024,
"name": "InvaildSwapAmountSpecified",
"msg": "Swap special amount can not be zero"
},
{
"code": 6025,
"name": "InvalidInputPoolVault",
"msg": "Input pool vault is invalid"
},
{
"code": 6026,
"name": "TooSmallInputOrOutputAmount",
"msg": "Swap input or output amount is too small"
},
{
"code": 6027,
"name": "InvalidRewardIndex",
"msg": "Invalid reward index"
},
{
"code": 6028,
"name": "FullRewardInfo",
"msg": "The init reward token reach to the max"
},
{
"code": 6029,
"name": "RewardTokenAlreadyInUse",
"msg": "The init reward token already in use"
},
{
"code": 6030,
"name": "ExceptPoolVaultMint",
"msg": "The reward tokens must contain one of pool vault mint except the last reward"
},
{
"code": 6031,
"name": "InvalidRewardInitParam",
"msg": "Invalid reward init param"
},
{
"code": 6032,
"name": "InvalidRewardDesiredAmount",
"msg": "Invalid collect reward desired amount"
},
{
"code": 6033,
"name": "InvalidRewardInputAccountNumber",
"msg": "Invalid collect reward input account number"
},
{
"code": 6034,
"name": "InvalidRewardPeriod",
"msg": "Invalid reward period"
},
{
"code": 6035,
"name": "NotApproveUpdateRewardEmissiones",
"msg": "Modification of emissiones is allowed within 72 hours from the end of the previous cycle"
},
{
"code": 6036,
"name": "UnInitializedRewardInfo",
"msg": "uninitialized reward info"
}
]
}