anchor/ts/packages/spl-binary-oracle-pair/idl.json

371 lines
7.4 KiB
JSON

{
"version": "0.1.0",
"name": "spl_binary_oracle_pair",
"instructions": [
{
"name": "initPool",
"accounts": [
{
"name": "pool",
"isMut": true,
"isSigner": false
},
{
"name": "authority",
"isMut": false,
"isSigner": false
},
{
"name": "decider",
"isMut": false,
"isSigner": false
},
{
"name": "depositTokenMint",
"isMut": false,
"isSigner": false
},
{
"name": "depositAccount",
"isMut": true,
"isSigner": false
},
{
"name": "tokenPassMint",
"isMut": true,
"isSigner": false
},
{
"name": "tokenFailMint",
"isMut": true,
"isSigner": false
},
{
"name": "rent",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "mintEndSlot",
"type": "u64"
},
{
"name": "decideEndSlot",
"type": "u64"
},
{
"name": "bumpSeed",
"type": "u8"
}
]
},
{
"name": "deposit",
"accounts": [
{
"name": "pool",
"isMut": false,
"isSigner": false
},
{
"name": "authority",
"isMut": false,
"isSigner": false
},
{
"name": "userTransferAuthority",
"isMut": false,
"isSigner": true
},
{
"name": "userTokenAccount",
"isMut": true,
"isSigner": false
},
{
"name": "poolDepositTokenAccount",
"isMut": true,
"isSigner": false
},
{
"name": "tokenPassMint",
"isMut": true,
"isSigner": false
},
{
"name": "tokenFailMint",
"isMut": true,
"isSigner": false
},
{
"name": "tokenPassDestinationAccount",
"isMut": true,
"isSigner": false
},
{
"name": "tokenFailDestinationAccount",
"isMut": true,
"isSigner": false
},
{
"name": "clock",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "arg",
"type": "u64"
}
]
},
{
"name": "withdraw",
"accounts": [
{
"name": "pool",
"isMut": false,
"isSigner": false
},
{
"name": "authority",
"isMut": false,
"isSigner": false
},
{
"name": "userTransferAuthority",
"isMut": false,
"isSigner": true
},
{
"name": "poolDepositTokenAccount",
"isMut": true,
"isSigner": false
},
{
"name": "tokenPassUserAccount",
"isMut": true,
"isSigner": false
},
{
"name": "tokenFailUserAccount",
"isMut": true,
"isSigner": false
},
{
"name": "tokenPassMint",
"isMut": true,
"isSigner": false
},
{
"name": "tokenFailMint",
"isMut": true,
"isSigner": false
},
{
"name": "userTokenDestinationAccount",
"isMut": true,
"isSigner": false
},
{
"name": "clock",
"isMut": false,
"isSigner": false
},
{
"name": "tokenProgram",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "arg",
"type": "u64"
}
]
},
{
"name": "decide",
"accounts": [
{
"name": "pool",
"isMut": true,
"isSigner": false
},
{
"name": "decider",
"isMut": false,
"isSigner": true
},
{
"name": "clock",
"isMut": false,
"isSigner": false
}
],
"args": [
{
"name": "arg",
"type": "bool"
}
]
}
],
"accounts": [
{
"name": "Pool",
"type": {
"kind": "struct",
"fields": [
{
"name": "version",
"type": "u8"
},
{
"name": "bumpSeed",
"type": "u8"
},
{
"name": "tokenProgramId",
"type": "publicKey"
},
{
"name": "depositAccount",
"type": "publicKey"
},
{
"name": "tokenPassMint",
"type": "publicKey"
},
{
"name": "tokenFailMint",
"type": "publicKey"
},
{
"name": "decider",
"type": "publicKey"
},
{
"name": "mintEndSlot",
"type": "u64"
},
{
"name": "decideEndSlot",
"type": "u64"
},
{
"name": "decision",
"type": {
"defined": "Decision"
}
}
]
}
}
],
"types": [
{
"name": "Decision",
"type": {
"kind": "enum",
"variants": [
{
"name": "Undecided"
},
{
"name": "Pass"
},
{
"name": "Fail"
}
]
}
}
],
"errors": [
{
"code": 0,
"name": "AlreadyInUse",
"msg": "Pool account already in use"
},
{
"code": 1,
"name": "DepositAccountInUse",
"msg": "Deposit account already in use"
},
{
"code": 2,
"name": "TokenMintInUse",
"msg": "Token account already in use"
},
{
"code": 3,
"name": "InvalidAuthorityData",
"msg": "Failed to generate program account because of invalid data"
},
{
"code": 4,
"name": "InvalidAuthorityAccount",
"msg": "Invalid authority account provided"
},
{
"code": 5,
"name": "NotRentExempt",
"msg": "Lamport balance below rent-exempt threshold"
},
{
"code": 6,
"name": "InvalidTokenMint",
"msg": "Input token mint account is not valid"
},
{
"code": 7,
"name": "InvalidAmount",
"msg": "Amount should be more than zero"
},
{
"code": 8,
"name": "WrongDeciderAccount",
"msg": "Wrong decider account was sent"
},
{
"code": 9,
"name": "SignatureMissing",
"msg": "Signature missing in transaction"
},
{
"code": 10,
"name": "DecisionAlreadyMade",
"msg": "Decision was already made for this pool"
},
{
"code": 11,
"name": "InvalidSlotForDecision",
"msg": "Decision can't be made in current slot"
},
{
"code": 12,
"name": "InvalidSlotForDeposit",
"msg": "Deposit can't be made in current slot"
},
{
"code": 13,
"name": "NoDecisionMadeYet",
"msg": "No decision has been made yet"
}
]
}