{
"kind": "rootNode",
"standard": "codama",
"version": "1.7.0",
"program": {
"kind": "programNode",
"name": "offerbook",
"publicKey": "offerbkFMvVfpQhL8ZQ5iromnjct5rz3r52B9ewu3ie",
"version": "0.1.0",
"origin": "anchor",
"accounts": [
{
"kind": "accountNode",
"name": "config",
"size": 536,
"data": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"defaultValue": {
"kind": "bytesValueNode",
"data": "9b0caae01efacc82",
"encoding": "base16"
}
},
{
"kind": "structFieldTypeNode",
"name": "admin",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "feeAuthority",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "configBump",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "feeAuthorityBump",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "padding",
"type": {
"kind": "fixedSizeTypeNode",
"size": 6,
"type": { "kind": "bytesTypeNode" }
}
},
{
"kind": "structFieldTypeNode",
"name": "interestFeeBps",
"type": { "kind": "numberTypeNode", "format": "u16", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "repayFeeBps",
"type": { "kind": "numberTypeNode", "format": "u16", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "liquidationFeeBps",
"type": { "kind": "numberTypeNode", "format": "u16", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "referralRewardsFeeBps",
"type": { "kind": "numberTypeNode", "format": "u16", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "refereeRewardsFeeBps",
"type": { "kind": "numberTypeNode", "format": "u16", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "padding1",
"type": {
"kind": "fixedSizeTypeNode",
"size": 6,
"type": { "kind": "bytesTypeNode" }
}
},
{
"kind": "structFieldTypeNode",
"name": "minPrincipalAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "minCollateralAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "minDuration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "minExpiry",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "maxApy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "maxDuration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "maxExpiry",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "isPaused",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "disableRepayment",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "padding2",
"type": {
"kind": "fixedSizeTypeNode",
"size": 2,
"type": { "kind": "bytesTypeNode" }
}
},
{
"kind": "structFieldTypeNode",
"name": "reserved",
"type": {
"kind": "fixedSizeTypeNode",
"size": 400,
"type": { "kind": "bytesTypeNode" }
}
}
]
},
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "accountNode",
"name": "loan",
"data": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"defaultValue": {
"kind": "bytesValueNode",
"data": "14c34675a5e3b601",
"encoding": "base16"
}
},
{
"kind": "structFieldTypeNode",
"name": "lender",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "borrower",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "creator",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "offer",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "status",
"type": { "kind": "definedTypeLinkNode", "name": "loanStatus" }
},
{
"kind": "structFieldTypeNode",
"name": "loanType",
"type": { "kind": "definedTypeLinkNode", "name": "loanType" }
},
{
"kind": "structFieldTypeNode",
"name": "padding",
"type": {
"kind": "fixedSizeTypeNode",
"size": 6,
"type": { "kind": "bytesTypeNode" }
}
},
{
"kind": "structFieldTypeNode",
"name": "fillIndex",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "principal",
"type": { "kind": "definedTypeLinkNode", "name": "asset" }
},
{
"kind": "structFieldTypeNode",
"name": "padding1",
"type": {
"kind": "fixedSizeTypeNode",
"size": 7,
"type": { "kind": "bytesTypeNode" }
}
},
{
"kind": "structFieldTypeNode",
"name": "collateral",
"type": { "kind": "definedTypeLinkNode", "name": "asset" }
},
{
"kind": "structFieldTypeNode",
"name": "padding2",
"type": {
"kind": "fixedSizeTypeNode",
"size": 7,
"type": { "kind": "bytesTypeNode" }
}
},
{
"kind": "structFieldTypeNode",
"name": "apy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "duration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "principalAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "collateralAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "interest",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "createdAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "expiredAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "updatedAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "bump",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "collateralAccountBump",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "padding4",
"type": {
"kind": "fixedSizeTypeNode",
"size": 6,
"type": { "kind": "bytesTypeNode" }
}
},
{
"kind": "structFieldTypeNode",
"name": "reserved",
"type": {
"kind": "fixedSizeTypeNode",
"size": 48,
"type": { "kind": "bytesTypeNode" }
}
}
]
},
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "accountNode",
"name": "offer",
"data": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"defaultValue": {
"kind": "bytesValueNode",
"data": "d7583c47aaa249e5",
"encoding": "base16"
}
},
{
"kind": "structFieldTypeNode",
"name": "creator",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "side",
"type": { "kind": "definedTypeLinkNode", "name": "offerSide" }
},
{
"kind": "structFieldTypeNode",
"name": "status",
"type": { "kind": "definedTypeLinkNode", "name": "offerStatus" }
},
{
"kind": "structFieldTypeNode",
"name": "padding",
"type": {
"kind": "fixedSizeTypeNode",
"size": 6,
"type": { "kind": "bytesTypeNode" }
}
},
{
"kind": "structFieldTypeNode",
"name": "principal",
"type": { "kind": "definedTypeLinkNode", "name": "asset" }
},
{
"kind": "structFieldTypeNode",
"name": "padding2",
"type": {
"kind": "fixedSizeTypeNode",
"size": 7,
"type": { "kind": "bytesTypeNode" }
}
},
{
"kind": "structFieldTypeNode",
"name": "collateral",
"type": { "kind": "definedTypeLinkNode", "name": "asset" }
},
{
"kind": "structFieldTypeNode",
"name": "padding3",
"type": {
"kind": "fixedSizeTypeNode",
"size": 7,
"type": { "kind": "bytesTypeNode" }
}
},
{
"kind": "structFieldTypeNode",
"name": "filter",
"type": { "kind": "definedTypeLinkNode", "name": "assetFilter" }
},
{
"kind": "structFieldTypeNode",
"name": "padding4",
"type": {
"kind": "fixedSizeTypeNode",
"size": 7,
"type": { "kind": "bytesTypeNode" }
}
},
{
"kind": "structFieldTypeNode",
"name": "principalAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "remainingPrincipal",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "collateralAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "remainingCollateral",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "padding5",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
}
},
{
"kind": "structFieldTypeNode",
"name": "apy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "duration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "createdAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "expiredAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "updatedAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "minFillAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "fillCounter",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "allowPartialFill",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "bump",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "padding6",
"type": {
"kind": "fixedSizeTypeNode",
"size": 6,
"type": { "kind": "bytesTypeNode" }
}
},
{
"kind": "structFieldTypeNode",
"name": "counteredOffer",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "reserved",
"type": {
"kind": "fixedSizeTypeNode",
"size": 232,
"type": { "kind": "bytesTypeNode" }
}
}
]
},
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "accountNode",
"name": "user",
"size": 208,
"data": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"defaultValue": {
"kind": "bytesValueNode",
"data": "9f755fe3ef973aec",
"encoding": "base16"
}
},
{
"kind": "structFieldTypeNode",
"name": "owner",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "referrer",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "referralCount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "offerCount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "totalLenderLoans",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "totalBorrowerLoans",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "totalLenderLiquidations",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "totalBorrowerLiquidations",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "updatedAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "createdAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "bump",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "padding",
"type": {
"kind": "fixedSizeTypeNode",
"size": 7,
"type": { "kind": "bytesTypeNode" }
}
},
{
"kind": "structFieldTypeNode",
"name": "reserved",
"type": {
"kind": "fixedSizeTypeNode",
"size": 64,
"type": { "kind": "bytesTypeNode" }
}
}
]
},
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
}
],
"instructions": [
{
"kind": "instructionNode",
"name": "cancelOffer",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "creator",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "offer",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "5ccbdf285c593577",
"encoding": "base16"
}
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "claimFee",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "admin",
"isWritable": false,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "feeAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "mint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "protocolFeeTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "destTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "tokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
"identifier": "splToken"
}
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "a9204f8988e84689",
"encoding": "base16"
}
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "claimNonFungibleLoan",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrower",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrowerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loan",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loanVault",
"isWritable": true,
"isSigner": false,
"isOptional": true,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "loanVault" },
"seeds": [
{
"kind": "pdaSeedValueNode",
"name": "loan",
"value": { "kind": "accountValueNode", "name": "loan" }
}
]
}
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "98d4c9c8ce0d95d2",
"encoding": "base16"
}
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "claimTokenLoan",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrower",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrowerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loan",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loanVault",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "loanVault" },
"seeds": [
{
"kind": "pdaSeedValueNode",
"name": "loan",
"value": { "kind": "accountValueNode", "name": "loan" }
}
]
}
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "collateralMint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "lenderCollateralEscrow",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "protocolFeeTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "collateralTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "0070d255ee519f1d",
"encoding": "base16"
}
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "createNftCollateralOffer",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false,
"docs": ["The borrower creating the offer; pays for the offer account allocation."]
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"docs": [
"Registered user profile for the signer.",
"We want to ensure that the signer is a registered user before creating an offer."
]
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"docs": [
"Global protocol configuration that defines valid offer parameter ranges",
"(duration, expiry, APY, minimum amounts) and pause state."
]
},
{
"kind": "instructionAccountNode",
"name": "offer",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"docs": ["Newly initialized offer account that will store all offer terms."]
},
{
"kind": "instructionAccountNode",
"name": "principalMint",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"docs": ["The token mint the borrower wants to receive as principal."]
},
{
"kind": "instructionAccountNode",
"name": "counteredOffer",
"isWritable": false,
"isSigner": false,
"isOptional": true,
"docs": [
"Optional: the offer this one is countering. When present, must be",
"on the opposite side (Principal), created by someone other than",
"the signer, still fillable (Active or PartiallyFilled), and for the",
"same principal token. The collateral asset is carried in the IX",
"params rather than as an account, so collateral-side consistency",
"isn't enforceable at the constraint level.",
"When absent, the field stays at Pubkey::default()."
]
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "302234bd510ba908",
"encoding": "base16"
}
},
{
"kind": "instructionArgumentNode",
"name": "principalAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "apy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "duration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "expiry",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "collateral",
"type": { "kind": "definedTypeLinkNode", "name": "nftCollateralAsset" }
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "createNftPrincipalOffer",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false,
"docs": ["The lender creating the offer; pays for the offer account allocation."]
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"docs": [
"Registered user profile for the signer.",
"We want to ensure that the signer is a registered user before creating an offer."
]
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"docs": [
"Global protocol configuration that defines valid offer parameter ranges",
"(duration, expiry, APY, minimum amounts) and pause state."
]
},
{
"kind": "instructionAccountNode",
"name": "offer",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"docs": ["Newly initialized offer account that will store all offer terms."]
},
{
"kind": "instructionAccountNode",
"name": "principalMint",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"docs": ["The token mint the lender is offering to lend."]
},
{
"kind": "instructionAccountNode",
"name": "counteredOffer",
"isWritable": false,
"isSigner": false,
"isOptional": true,
"docs": [
"Optional: the offer this one is countering. When present, must be",
"on the opposite side (Collateral), created by someone other than",
"the signer, still fillable (Active or PartiallyFilled), and for the",
"same principal token. The collateral asset is carried in the IX",
"params rather than as an account, so collateral-side consistency",
"isn't enforceable at the constraint level.",
"When absent, the field stays at Pubkey::default()."
]
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "02245327b1627e4b",
"encoding": "base16"
}
},
{
"kind": "instructionArgumentNode",
"name": "principalAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "apy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "duration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "expiry",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "collateral",
"type": { "kind": "definedTypeLinkNode", "name": "nftCollateral" }
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "createTokenCollateralOffer",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false,
"docs": ["The borrower creating the offer; pays for the offer account allocation."]
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"docs": [
"Registered user profile for the signer.",
"We want to ensure that the signer is a registered user before creating an offer."
]
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"docs": [
"Global protocol configuration that defines valid offer parameter ranges",
"(duration, expiry, APY, minimum amounts) and pause state."
]
},
{
"kind": "instructionAccountNode",
"name": "offer",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"docs": ["Newly initialized offer account that will store all offer terms."]
},
{
"kind": "instructionAccountNode",
"name": "principalMint",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"docs": [
"The token mint the borrower wants to receive as principal. Must differ",
"from the collateral mint."
]
},
{
"kind": "instructionAccountNode",
"name": "collateralMint",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"docs": [
"The token mint the borrower is offering as collateral. Must differ",
"from the principal mint."
]
},
{
"kind": "instructionAccountNode",
"name": "counteredOffer",
"isWritable": false,
"isSigner": false,
"isOptional": true,
"docs": [
"Optional: the offer this one is countering. When present, must be",
"on the opposite side (Principal), created by someone other than",
"the signer, still fillable (Active or PartiallyFilled), and for the",
"same asset pair (same principal mint, same collateral mint).",
"When absent, the field stays at Pubkey::default()."
]
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "264bb6fead0df029",
"encoding": "base16"
}
},
{
"kind": "instructionArgumentNode",
"name": "principalAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "collateralAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "apy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "duration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "expiry",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "allowPartialFill",
"type": {
"kind": "booleanTypeNode",
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
},
{
"kind": "instructionArgumentNode",
"name": "minFillAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "createTokenPrincipalOffer",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false,
"docs": ["The lender creating the offer; pays for the offer account allocation."]
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"docs": [
"Registered user profile for the signer.",
"We want to ensure that the signer is a registered user before creating an offer."
]
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"docs": [
"Global protocol configuration that defines valid offer parameter ranges",
"(duration, expiry, APY, minimum amounts) and pause state."
]
},
{
"kind": "instructionAccountNode",
"name": "offer",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"docs": ["Newly initialized offer account that will store all offer terms."]
},
{
"kind": "instructionAccountNode",
"name": "principalMint",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"docs": [
"The token mint the lender is offering to lend. Must differ from",
"the collateral mint."
]
},
{
"kind": "instructionAccountNode",
"name": "collateralMint",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"docs": [
"The token mint the lender expects as collateral. Must differ from",
"the principal mint."
]
},
{
"kind": "instructionAccountNode",
"name": "counteredOffer",
"isWritable": false,
"isSigner": false,
"isOptional": true,
"docs": [
"Optional: the offer this one is countering. When present, must be",
"on the opposite side (Collateral), created by someone other than",
"the signer, still fillable (Active or PartiallyFilled), and for the",
"same asset pair (same principal mint, same collateral mint).",
"When absent, the field stays at Pubkey::default()."
]
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "4e09458ebd40ab0d",
"encoding": "base16"
}
},
{
"kind": "instructionArgumentNode",
"name": "principalAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "collateralAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "apy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "duration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "expiry",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "allowPartialFill",
"type": {
"kind": "booleanTypeNode",
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
},
{
"kind": "instructionArgumentNode",
"name": "minFillAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "createUser",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "signerUser" },
"seeds": [
{
"kind": "pdaSeedValueNode",
"name": "signer",
"value": { "kind": "accountValueNode", "name": "signer" }
}
]
}
},
{
"kind": "instructionAccountNode",
"name": "referrer",
"isWritable": false,
"isSigner": false,
"isOptional": true
},
{
"kind": "instructionAccountNode",
"name": "referrerUser",
"isWritable": true,
"isSigner": false,
"isOptional": true
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "6ce38282fc6d4bda",
"encoding": "base16"
}
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "escrowClassicNftDeposit",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerNftTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "nftMint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "nftMetadata",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "nftEdition",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "userEscrowTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": {
"kind": "pdaNode",
"name": "userEscrowTokenAccount",
"programId": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
"seeds": [
{
"kind": "variablePdaSeedNode",
"name": "signerUser",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "variablePdaSeedNode",
"name": "tokenProgram",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "variablePdaSeedNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
}
]
},
"seeds": [
{
"kind": "pdaSeedValueNode",
"name": "signerUser",
"value": { "kind": "accountValueNode", "name": "signerUser" }
},
{
"kind": "pdaSeedValueNode",
"name": "tokenProgram",
"value": { "kind": "accountValueNode", "name": "tokenProgram" }
},
{
"kind": "pdaSeedValueNode",
"name": "mint",
"value": { "kind": "accountValueNode", "name": "nftMint" }
}
]
}
},
{
"kind": "instructionAccountNode",
"name": "metadataProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
"identifier": "metadataProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "associatedTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
"identifier": "associatedTokenProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "tokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
"identifier": "splToken"
}
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "94dfbf385d109ccf",
"encoding": "base16"
}
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "escrowClassicNftWithdraw",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerNftTokenAccount",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "nftMint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "userEscrowTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": {
"kind": "pdaNode",
"name": "userEscrowTokenAccount",
"programId": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
"seeds": [
{
"kind": "variablePdaSeedNode",
"name": "signerUser",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "variablePdaSeedNode",
"name": "tokenProgram",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "variablePdaSeedNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
}
]
},
"seeds": [
{
"kind": "pdaSeedValueNode",
"name": "signerUser",
"value": { "kind": "accountValueNode", "name": "signerUser" }
},
{
"kind": "pdaSeedValueNode",
"name": "tokenProgram",
"value": { "kind": "accountValueNode", "name": "tokenProgram" }
},
{
"kind": "pdaSeedValueNode",
"name": "mint",
"value": { "kind": "accountValueNode", "name": "nftMint" }
}
]
}
},
{
"kind": "instructionAccountNode",
"name": "tokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
"identifier": "splToken"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "3a664f10d0b6d923",
"encoding": "base16"
}
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "escrowCoreNftDeposit",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "asset",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "collection",
"isWritable": false,
"isSigner": false,
"isOptional": true
},
{
"kind": "instructionAccountNode",
"name": "mplCoreProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d",
"identifier": "mplCoreProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "bee08586bd93475a",
"encoding": "base16"
}
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "escrowCoreNftWithdraw",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "asset",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "collection",
"isWritable": false,
"isSigner": false,
"isOptional": true
},
{
"kind": "instructionAccountNode",
"name": "mplCoreProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d",
"identifier": "mplCoreProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "ab9b4f98ecae1d39",
"encoding": "base16"
}
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "escrowProgrammableNftDeposit",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "nftMint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "nftMetadata",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "nftEdition",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerNftTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerTokenRecord",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "userEscrowTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": {
"kind": "pdaNode",
"name": "userEscrowTokenAccount",
"programId": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
"seeds": [
{
"kind": "variablePdaSeedNode",
"name": "signerUser",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "variablePdaSeedNode",
"name": "tokenProgram",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "variablePdaSeedNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
}
]
},
"seeds": [
{
"kind": "pdaSeedValueNode",
"name": "signerUser",
"value": { "kind": "accountValueNode", "name": "signerUser" }
},
{
"kind": "pdaSeedValueNode",
"name": "tokenProgram",
"value": { "kind": "accountValueNode", "name": "tokenProgram" }
},
{
"kind": "pdaSeedValueNode",
"name": "mint",
"value": { "kind": "accountValueNode", "name": "nftMint" }
}
]
}
},
{
"kind": "instructionAccountNode",
"name": "escrowTokenRecord",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "authorizationRules",
"isWritable": true,
"isSigner": false,
"isOptional": true
},
{
"kind": "instructionAccountNode",
"name": "metadataProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
"identifier": "metadataProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "instructions",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "Sysvar1nstructions1111111111111111111111111",
"identifier": "instructions"
}
},
{
"kind": "instructionAccountNode",
"name": "authorizationProgram",
"isWritable": false,
"isSigner": false,
"isOptional": true,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg",
"identifier": "authorizationProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "associatedTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
"identifier": "associatedTokenProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "tokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
"identifier": "splToken"
}
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "df1d30471a0ef665",
"encoding": "base16"
}
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "escrowProgrammableNftWithdraw",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "nftMint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "nftMetadata",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "nftEdition",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerNftTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerTokenRecord",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "userEscrowTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "escrowTokenRecord",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "authorizationRules",
"isWritable": true,
"isSigner": false,
"isOptional": true
},
{
"kind": "instructionAccountNode",
"name": "metadataProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
"identifier": "metadataProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "instructions",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "Sysvar1nstructions1111111111111111111111111",
"identifier": "instructions"
}
},
{
"kind": "instructionAccountNode",
"name": "authorizationProgram",
"isWritable": false,
"isSigner": false,
"isOptional": true,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "auth9SigNpDKz4sJJ1DfCTuZrZNSAgh9sFD3rboVmgg",
"identifier": "authorizationProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "associatedTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
"identifier": "associatedTokenProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "tokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
"identifier": "splToken"
}
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "1c9d15ea3bdeaab2",
"encoding": "base16"
}
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "escrowTokenDeposit",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "userEscrowTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": {
"kind": "pdaNode",
"name": "userEscrowTokenAccount",
"programId": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
"seeds": [
{
"kind": "variablePdaSeedNode",
"name": "signerUser",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "variablePdaSeedNode",
"name": "tokenProgram",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "variablePdaSeedNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
}
]
},
"seeds": [
{
"kind": "pdaSeedValueNode",
"name": "signerUser",
"value": { "kind": "accountValueNode", "name": "signerUser" }
},
{
"kind": "pdaSeedValueNode",
"name": "tokenProgram",
"value": { "kind": "accountValueNode", "name": "tokenProgram" }
},
{
"kind": "pdaSeedValueNode",
"name": "mint",
"value": { "kind": "accountValueNode", "name": "mint" }
}
]
}
},
{
"kind": "instructionAccountNode",
"name": "mint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "associatedTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
"identifier": "associatedTokenProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "tokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
"identifier": "splToken"
}
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "aa03f979446cf0ef",
"encoding": "base16"
}
},
{
"kind": "instructionArgumentNode",
"name": "amount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "escrowTokenWithdraw",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": false,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "userEscrowTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "mint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "tokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
"identifier": "splToken"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "b7cc0e45114cdf69",
"encoding": "base16"
}
},
{
"kind": "instructionArgumentNode",
"name": "amount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "fillNonFungibleCollateralOffer",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrower",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrowerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "offer",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loan",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loanVault",
"isWritable": true,
"isSigner": false,
"isOptional": true,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "loanVault" },
"seeds": [
{
"kind": "pdaSeedValueNode",
"name": "loan",
"value": { "kind": "accountValueNode", "name": "loan" }
}
]
}
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "principalMint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "collateralMint",
"isWritable": false,
"isSigner": false,
"isOptional": true
},
{
"kind": "instructionAccountNode",
"name": "lenderPrincipalEscrow",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrowerPrincipalTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "protocolFeeTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "principalTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "collateralTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": true
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "87377b2b733d8f91",
"encoding": "base16"
}
},
{
"kind": "instructionArgumentNode",
"name": "duration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "apy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "fillNonFungiblePrincipalOffer",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "lender",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "lenderUser",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "offer",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loan",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loanVault",
"isWritable": true,
"isSigner": false,
"isOptional": true,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "loanVault" },
"seeds": [
{
"kind": "pdaSeedValueNode",
"name": "loan",
"value": { "kind": "accountValueNode", "name": "loan" }
}
]
}
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "principalMint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "collateralMint",
"isWritable": false,
"isSigner": false,
"isOptional": true
},
{
"kind": "instructionAccountNode",
"name": "lenderPrincipalEscrow",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrowerPrincipalTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "protocolFeeTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "principalTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "collateralTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": true
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "637fb19bafa018ea",
"encoding": "base16"
}
},
{
"kind": "instructionArgumentNode",
"name": "duration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "apy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "fillTokenCollateralOffer",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrower",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrowerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "offer",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loan",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loanVault",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "loanVault" },
"seeds": [
{
"kind": "pdaSeedValueNode",
"name": "loan",
"value": { "kind": "accountValueNode", "name": "loan" }
}
]
}
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "principalMint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "collateralMint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "lenderPrincipalEscrow",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrowerCollateralEscrow",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrowerPrincipalTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "protocolFeeTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "principalTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "collateralTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "aafb00b5a3536ae4",
"encoding": "base16"
}
},
{
"kind": "instructionArgumentNode",
"name": "collateralFillAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "maxPrincipal",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "duration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "apy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "loanType",
"type": { "kind": "definedTypeLinkNode", "name": "loanType" }
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "fillTokenPrincipalOffer",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "lender",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "lenderUser",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "offer",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loan",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loanVault",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "loanVault" },
"seeds": [
{
"kind": "pdaSeedValueNode",
"name": "loan",
"value": { "kind": "accountValueNode", "name": "loan" }
}
]
}
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "principalMint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "collateralMint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "lenderPrincipalEscrow",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrowerCollateralEscrow",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrowerPrincipalTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "protocolFeeTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "principalTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "collateralTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "53d7b0a1b06981b1",
"encoding": "base16"
}
},
{
"kind": "instructionArgumentNode",
"name": "principalFillAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "maxCollateral",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "duration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "apy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "instructionArgumentNode",
"name": "loanType",
"type": { "kind": "definedTypeLinkNode", "name": "loanType" }
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "init",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "payer",
"isWritable": true,
"isSigner": true,
"isOptional": false,
"defaultValue": { "kind": "payerValueNode" }
},
{
"kind": "instructionAccountNode",
"name": "upgradeAuthority",
"isWritable": false,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "config" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "feeAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "feeAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "programData",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "offerbkFMvVfpQhL8ZQ5iromnjct5rz3r52B9ewu3ie",
"identifier": "program"
}
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "dc3bcfec6cfa2f64",
"encoding": "base16"
}
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "repayNonFungibleLoan",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "lender",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "lenderUser",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loan",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loanVault",
"isWritable": true,
"isSigner": false,
"isOptional": true,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "loanVault" },
"seeds": [
{
"kind": "pdaSeedValueNode",
"name": "loan",
"value": { "kind": "accountValueNode", "name": "loan" }
}
]
}
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "principalMint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerPrincipalTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "lenderPrincipalEscrow",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "protocolFeeTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "principalTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "systemProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "publicKeyValueNode",
"publicKey": "11111111111111111111111111111111",
"identifier": "systemProgram"
}
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "94d30f39ad1b1a31",
"encoding": "base16"
}
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "repayTokenLoan",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "signer",
"isWritable": true,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerUser",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "lender",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "lenderUser",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loan",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "loanVault",
"isWritable": true,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "loanVault" },
"seeds": [
{
"kind": "pdaSeedValueNode",
"name": "loan",
"value": { "kind": "accountValueNode", "name": "loan" }
}
]
}
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "principalMint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "collateralMint",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "signerPrincipalTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "lenderPrincipalEscrow",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "borrowerCollateralEscrow",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "protocolFeeTokenAccount",
"isWritable": true,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "principalTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "collateralTokenProgram",
"isWritable": false,
"isSigner": false,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "eventAuthority",
"isWritable": false,
"isSigner": false,
"isOptional": false,
"defaultValue": {
"kind": "pdaValueNode",
"pda": { "kind": "pdaLinkNode", "name": "eventAuthority" },
"seeds": []
}
},
{
"kind": "instructionAccountNode",
"name": "program",
"isWritable": false,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "d032d027bd9919fb",
"encoding": "base16"
}
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
},
{
"kind": "instructionNode",
"name": "updateConfig",
"optionalAccountStrategy": "programId",
"accounts": [
{
"kind": "instructionAccountNode",
"name": "admin",
"isWritable": false,
"isSigner": true,
"isOptional": false
},
{
"kind": "instructionAccountNode",
"name": "config",
"isWritable": true,
"isSigner": false,
"isOptional": false
}
],
"arguments": [
{
"kind": "instructionArgumentNode",
"name": "discriminator",
"defaultValueStrategy": "omitted",
"type": { "kind": "fixedSizeTypeNode", "size": 8, "type": { "kind": "bytesTypeNode" } },
"defaultValue": {
"kind": "bytesValueNode",
"data": "1d9efcbf0a53db63",
"encoding": "base16"
}
},
{
"kind": "instructionArgumentNode",
"name": "action",
"type": { "kind": "definedTypeLinkNode", "name": "updateConfigAction" }
}
],
"discriminators": [
{ "kind": "fieldDiscriminatorNode", "name": "discriminator", "offset": 0 }
]
}
],
"definedTypes": [
{
"kind": "definedTypeNode",
"name": "asset",
"type": {
"kind": "enumTypeNode",
"variants": [
{ "kind": "enumEmptyVariantTypeNode", "name": "none" },
{
"kind": "enumTupleVariantTypeNode",
"name": "token",
"tuple": {
"kind": "tupleTypeNode",
"items": [{ "kind": "definedTypeLinkNode", "name": "tokenAsset" }]
}
},
{
"kind": "enumTupleVariantTypeNode",
"name": "classicNft",
"tuple": {
"kind": "tupleTypeNode",
"items": [{ "kind": "definedTypeLinkNode", "name": "classicNftAsset" }]
}
},
{
"kind": "enumTupleVariantTypeNode",
"name": "programmableNft",
"tuple": {
"kind": "tupleTypeNode",
"items": [{ "kind": "definedTypeLinkNode", "name": "programmableNftAsset" }]
}
},
{
"kind": "enumTupleVariantTypeNode",
"name": "coreNft",
"tuple": {
"kind": "tupleTypeNode",
"items": [{ "kind": "definedTypeLinkNode", "name": "coreNftAsset" }]
}
}
],
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
},
{
"kind": "definedTypeNode",
"name": "assetFilter",
"type": {
"kind": "enumTypeNode",
"variants": [
{
"kind": "enumTupleVariantTypeNode",
"name": "noFilter",
"tuple": {
"kind": "tupleTypeNode",
"items": [{ "kind": "definedTypeLinkNode", "name": "noFilter" }]
}
},
{
"kind": "enumTupleVariantTypeNode",
"name": "collection",
"tuple": {
"kind": "tupleTypeNode",
"items": [{ "kind": "definedTypeLinkNode", "name": "collectionFilter" }]
}
},
{
"kind": "enumTupleVariantTypeNode",
"name": "firstVerifiedCreator",
"tuple": {
"kind": "tupleTypeNode",
"items": [{ "kind": "definedTypeLinkNode", "name": "firstVerifiedCreatorFilter" }]
}
},
{
"kind": "enumTupleVariantTypeNode",
"name": "collectionWithAttribute",
"tuple": {
"kind": "tupleTypeNode",
"items": [
{ "kind": "definedTypeLinkNode", "name": "collectionWithAttributeFilter" }
]
}
}
],
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
},
{
"kind": "definedTypeNode",
"name": "classicNftAsset",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "tokenProgram",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "reserved",
"type": {
"kind": "fixedSizeTypeNode",
"size": 200,
"type": { "kind": "bytesTypeNode" }
}
}
]
}
},
{
"kind": "definedTypeNode",
"name": "collectionFilter",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "collection",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "reserved",
"type": {
"kind": "fixedSizeTypeNode",
"size": 232,
"type": { "kind": "bytesTypeNode" }
}
}
]
}
},
{
"kind": "definedTypeNode",
"name": "collectionWithAttributeFilter",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "collection",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "attributes",
"type": {
"kind": "fixedSizeTypeNode",
"size": 232,
"type": { "kind": "bytesTypeNode" }
}
}
]
}
},
{
"kind": "definedTypeNode",
"name": "coreNftAsset",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "asset",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "reserved",
"type": {
"kind": "fixedSizeTypeNode",
"size": 232,
"type": { "kind": "bytesTypeNode" }
}
}
]
}
},
{
"kind": "definedTypeNode",
"name": "eventAsset",
"type": {
"kind": "enumTypeNode",
"variants": [
{ "kind": "enumEmptyVariantTypeNode", "name": "none" },
{
"kind": "enumTupleVariantTypeNode",
"name": "token",
"tuple": {
"kind": "tupleTypeNode",
"items": [{ "kind": "definedTypeLinkNode", "name": "eventTokenAsset" }]
}
},
{
"kind": "enumTupleVariantTypeNode",
"name": "classicNft",
"tuple": {
"kind": "tupleTypeNode",
"items": [{ "kind": "definedTypeLinkNode", "name": "eventClassicNftAsset" }]
}
},
{
"kind": "enumTupleVariantTypeNode",
"name": "programmableNft",
"tuple": {
"kind": "tupleTypeNode",
"items": [{ "kind": "definedTypeLinkNode", "name": "eventProgrammableNftAsset" }]
}
},
{
"kind": "enumTupleVariantTypeNode",
"name": "coreNft",
"tuple": {
"kind": "tupleTypeNode",
"items": [{ "kind": "definedTypeLinkNode", "name": "eventCoreNftAsset" }]
}
}
],
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
},
{
"kind": "definedTypeNode",
"name": "eventAssetFilter",
"type": {
"kind": "enumTypeNode",
"variants": [
{ "kind": "enumEmptyVariantTypeNode", "name": "none" },
{
"kind": "enumTupleVariantTypeNode",
"name": "collection",
"tuple": {
"kind": "tupleTypeNode",
"items": [{ "kind": "definedTypeLinkNode", "name": "eventCollectionFilter" }]
}
},
{
"kind": "enumTupleVariantTypeNode",
"name": "firstVerifiedCreator",
"tuple": {
"kind": "tupleTypeNode",
"items": [
{ "kind": "definedTypeLinkNode", "name": "eventFirstVerifiedCreatorFilter" }
]
}
},
{
"kind": "enumTupleVariantTypeNode",
"name": "collectionWithAttribute",
"tuple": {
"kind": "tupleTypeNode",
"items": [
{ "kind": "definedTypeLinkNode", "name": "eventCollectionWithAttributeFilter" }
]
}
}
],
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
},
{
"kind": "definedTypeNode",
"name": "eventClassicNftAsset",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "tokenProgram",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
},
{
"kind": "definedTypeNode",
"name": "eventCollectionFilter",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "collection",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
},
{
"kind": "definedTypeNode",
"name": "eventCollectionWithAttributeFilter",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "collection",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "attributes",
"type": {
"kind": "fixedSizeTypeNode",
"size": 232,
"type": { "kind": "bytesTypeNode" }
}
}
]
}
},
{
"kind": "definedTypeNode",
"name": "eventCoreNftAsset",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "asset",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
},
{
"kind": "definedTypeNode",
"name": "eventFirstVerifiedCreatorFilter",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "creator",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
},
{
"kind": "definedTypeNode",
"name": "eventProgrammableNftAsset",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "tokenProgram",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
},
{
"kind": "definedTypeNode",
"name": "eventTokenAsset",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "tokenProgram",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
},
{
"kind": "definedTypeNode",
"name": "firstVerifiedCreatorFilter",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "creator",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "reserved",
"type": {
"kind": "fixedSizeTypeNode",
"size": 232,
"type": { "kind": "bytesTypeNode" }
}
}
]
}
},
{
"kind": "definedTypeNode",
"name": "loanEventV0",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "lender",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "borrower",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "creator",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "offer",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "status",
"type": { "kind": "definedTypeLinkNode", "name": "loanStatus" }
},
{
"kind": "structFieldTypeNode",
"name": "fillIndex",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "principal",
"type": { "kind": "definedTypeLinkNode", "name": "eventAsset" }
},
{
"kind": "structFieldTypeNode",
"name": "collateral",
"type": { "kind": "definedTypeLinkNode", "name": "eventAsset" }
},
{
"kind": "structFieldTypeNode",
"name": "apy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "duration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "principalAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "collateralAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "interest",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "createdAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "expiredAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "updatedAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "bump",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "collateralAccountBump",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "loanType",
"type": { "kind": "definedTypeLinkNode", "name": "loanType" }
}
]
}
},
{
"kind": "definedTypeNode",
"name": "loanStatus",
"type": {
"kind": "enumTypeNode",
"variants": [
{ "kind": "enumEmptyVariantTypeNode", "name": "active" },
{ "kind": "enumEmptyVariantTypeNode", "name": "repaid" },
{ "kind": "enumEmptyVariantTypeNode", "name": "defaulted" }
],
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
},
{
"kind": "definedTypeNode",
"name": "loanType",
"type": {
"kind": "enumTypeNode",
"variants": [
{ "kind": "enumEmptyVariantTypeNode", "name": "classic" },
{ "kind": "enumEmptyVariantTypeNode", "name": "leverage" }
],
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
},
{
"kind": "definedTypeNode",
"name": "nftCollateral",
"type": {
"kind": "enumTypeNode",
"variants": [
{
"kind": "enumStructVariantTypeNode",
"name": "classicNft",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "tokenProgram",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "programmableNft",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "tokenProgram",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "coreNft",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "asset",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "collection",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "collection",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "firstVerifiedCreator",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "creator",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
}
],
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
},
{
"kind": "definedTypeNode",
"name": "nftCollateralAsset",
"type": {
"kind": "enumTypeNode",
"variants": [
{
"kind": "enumStructVariantTypeNode",
"name": "classicNft",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "tokenProgram",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "programmableNft",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "tokenProgram",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "coreNft",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "asset",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
}
],
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
},
{
"kind": "definedTypeNode",
"name": "noFilter",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "reserved",
"type": {
"kind": "fixedSizeTypeNode",
"size": 264,
"type": { "kind": "bytesTypeNode" }
}
}
]
}
},
{
"kind": "definedTypeNode",
"name": "offerEventV0",
"docs": [
"Frozen pre-counter-offers offer event schema. Kept in the IDL so historical",
"events remain parseable; not emitted by current code (see `OfferEventV1`)."
],
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "creator",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "side",
"type": { "kind": "definedTypeLinkNode", "name": "offerSide" }
},
{
"kind": "structFieldTypeNode",
"name": "status",
"type": { "kind": "definedTypeLinkNode", "name": "offerStatus" }
},
{
"kind": "structFieldTypeNode",
"name": "principal",
"type": { "kind": "definedTypeLinkNode", "name": "eventAsset" }
},
{
"kind": "structFieldTypeNode",
"name": "collateral",
"type": { "kind": "definedTypeLinkNode", "name": "eventAsset" }
},
{
"kind": "structFieldTypeNode",
"name": "filter",
"type": { "kind": "definedTypeLinkNode", "name": "eventAssetFilter" }
},
{
"kind": "structFieldTypeNode",
"name": "principalAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "remainingPrincipal",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "collateralAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "remainingCollateral",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "apy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "duration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "createdAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "expiredAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "updatedAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "minFillAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "fillCounter",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "allowPartialFill",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "bump",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
]
}
},
{
"kind": "definedTypeNode",
"name": "offerEventV1",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "creator",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "side",
"type": { "kind": "definedTypeLinkNode", "name": "offerSide" }
},
{
"kind": "structFieldTypeNode",
"name": "status",
"type": { "kind": "definedTypeLinkNode", "name": "offerStatus" }
},
{
"kind": "structFieldTypeNode",
"name": "principal",
"type": { "kind": "definedTypeLinkNode", "name": "eventAsset" }
},
{
"kind": "structFieldTypeNode",
"name": "collateral",
"type": { "kind": "definedTypeLinkNode", "name": "eventAsset" }
},
{
"kind": "structFieldTypeNode",
"name": "filter",
"type": { "kind": "definedTypeLinkNode", "name": "eventAssetFilter" }
},
{
"kind": "structFieldTypeNode",
"name": "principalAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "remainingPrincipal",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "collateralAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "remainingCollateral",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "apy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "duration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "createdAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "expiredAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "updatedAt",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "minFillAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "fillCounter",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "allowPartialFill",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "bump",
"type": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "counteredOffer",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
},
{
"kind": "definedTypeNode",
"name": "offerSide",
"type": {
"kind": "enumTypeNode",
"variants": [
{ "kind": "enumEmptyVariantTypeNode", "name": "principal" },
{ "kind": "enumEmptyVariantTypeNode", "name": "collateral" }
],
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
},
{
"kind": "definedTypeNode",
"name": "offerStatus",
"type": {
"kind": "enumTypeNode",
"variants": [
{ "kind": "enumEmptyVariantTypeNode", "name": "active" },
{ "kind": "enumEmptyVariantTypeNode", "name": "partiallyFilled" },
{ "kind": "enumEmptyVariantTypeNode", "name": "fulfilled" },
{ "kind": "enumEmptyVariantTypeNode", "name": "cancelled" }
],
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
},
{
"kind": "definedTypeNode",
"name": "programmableNftAsset",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "tokenProgram",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "reserved",
"type": {
"kind": "fixedSizeTypeNode",
"size": 200,
"type": { "kind": "bytesTypeNode" }
}
}
]
}
},
{
"kind": "definedTypeNode",
"name": "referralType",
"type": {
"kind": "enumTypeNode",
"variants": [
{ "kind": "enumEmptyVariantTypeNode", "name": "lender" },
{ "kind": "enumEmptyVariantTypeNode", "name": "borrower" }
],
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
},
{
"kind": "definedTypeNode",
"name": "tokenAsset",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "tokenProgram",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "reserved",
"type": {
"kind": "fixedSizeTypeNode",
"size": 200,
"type": { "kind": "bytesTypeNode" }
}
}
]
}
},
{
"kind": "definedTypeNode",
"name": "updateConfigAction",
"type": {
"kind": "enumTypeNode",
"variants": [
{
"kind": "enumStructVariantTypeNode",
"name": "updateAdmin",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "admin",
"type": { "kind": "publicKeyTypeNode" }
}
]
}
},
{ "kind": "enumEmptyVariantTypeNode", "name": "pauseProtocol" },
{ "kind": "enumEmptyVariantTypeNode", "name": "unpauseProtocol" },
{
"kind": "enumStructVariantTypeNode",
"name": "setDisableRepayment",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "disableRepayment",
"type": {
"kind": "booleanTypeNode",
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "setInterestFeeBps",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "interestFeeBps",
"type": { "kind": "numberTypeNode", "format": "u16", "endian": "le" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "setLiquidationFeeBps",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "liquidationFeeBps",
"type": { "kind": "numberTypeNode", "format": "u16", "endian": "le" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "setReferralRewardsFeeBps",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "referralRewardsFeeBps",
"type": { "kind": "numberTypeNode", "format": "u16", "endian": "le" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "setRefereeRewardsFeeBps",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "refereeRewardsFeeBps",
"type": { "kind": "numberTypeNode", "format": "u16", "endian": "le" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "setRepayFeeBps",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "repayFeeBps",
"type": { "kind": "numberTypeNode", "format": "u16", "endian": "le" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "setMinPrincipalAmount",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "minPrincipalAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "setMinCollateralAmount",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "minCollateralAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "setMinDuration",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "minDuration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "setMinExpiry",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "minExpiry",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "setMaxApy",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "maxApy",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "setMaxDuration",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "maxDuration",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
}
]
}
},
{
"kind": "enumStructVariantTypeNode",
"name": "setMaxExpiry",
"struct": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "maxExpiry",
"type": { "kind": "numberTypeNode", "format": "u32", "endian": "le" }
}
]
}
}
],
"size": { "kind": "numberTypeNode", "format": "u8", "endian": "le" }
}
}
],
"pdas": [
{
"kind": "pdaNode",
"name": "eventAuthority",
"seeds": [
{
"kind": "constantPdaSeedNode",
"type": { "kind": "bytesTypeNode" },
"value": {
"kind": "bytesValueNode",
"data": "tyvCZETMWX6hYsUwTchxRWG",
"encoding": "base58"
}
}
]
},
{
"kind": "pdaNode",
"name": "loanVault",
"seeds": [
{
"kind": "constantPdaSeedNode",
"type": { "kind": "bytesTypeNode" },
"value": { "kind": "bytesValueNode", "data": "76LkritXqKx6gs", "encoding": "base58" }
},
{ "kind": "variablePdaSeedNode", "name": "loan", "type": { "kind": "publicKeyTypeNode" } }
]
},
{
"kind": "pdaNode",
"name": "offer",
"seeds": [
{
"kind": "constantPdaSeedNode",
"type": { "kind": "stringTypeNode", "encoding": "utf8" },
"value": { "kind": "stringValueNode", "string": "offer" }
},
{
"kind": "variablePdaSeedNode",
"name": "signer",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "variablePdaSeedNode",
"name": "offerIndex",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
}
]
},
{
"kind": "pdaNode",
"name": "signerUser",
"seeds": [
{
"kind": "constantPdaSeedNode",
"type": { "kind": "bytesTypeNode" },
"value": { "kind": "bytesValueNode", "data": "418K5B", "encoding": "base58" }
},
{
"kind": "variablePdaSeedNode",
"name": "signer",
"type": { "kind": "publicKeyTypeNode" }
}
]
},
{
"kind": "pdaNode",
"name": "loan",
"seeds": [
{
"kind": "constantPdaSeedNode",
"type": { "kind": "stringTypeNode", "encoding": "utf8" },
"value": { "kind": "stringValueNode", "string": "loan" }
},
{
"kind": "variablePdaSeedNode",
"name": "offer",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "variablePdaSeedNode",
"name": "fillIndex",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
}
]
},
{
"kind": "pdaNode",
"name": "config",
"seeds": [
{
"kind": "constantPdaSeedNode",
"type": { "kind": "bytesTypeNode" },
"value": { "kind": "bytesValueNode", "data": "rWvNLsFC", "encoding": "base58" }
}
]
},
{
"kind": "pdaNode",
"name": "feeAuthority",
"seeds": [
{
"kind": "constantPdaSeedNode",
"type": { "kind": "bytesTypeNode" },
"value": { "kind": "bytesValueNode", "data": "bPqW", "encoding": "base58" }
}
]
}
],
"events": [
{
"kind": "eventNode",
"name": "escrowDeposit",
"data": {
"kind": "hiddenPrefixTypeNode",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "user",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "asset",
"type": { "kind": "definedTypeLinkNode", "name": "eventAsset" }
},
{
"kind": "structFieldTypeNode",
"name": "depositAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "totalAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "timestamp",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
}
]
},
"prefix": [
{
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "2b5a31b086943220",
"encoding": "base16"
}
}
]
},
"discriminators": [
{
"kind": "constantDiscriminatorNode",
"offset": 0,
"constant": {
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "2b5a31b086943220",
"encoding": "base16"
}
}
}
]
},
{
"kind": "eventNode",
"name": "escrowWithdraw",
"data": {
"kind": "hiddenPrefixTypeNode",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "user",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "asset",
"type": { "kind": "definedTypeLinkNode", "name": "eventAsset" }
},
{
"kind": "structFieldTypeNode",
"name": "withdrawAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "totalAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "timestamp",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
}
]
},
"prefix": [
{
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "ab11a4747a42b722",
"encoding": "base16"
}
}
]
},
"discriminators": [
{
"kind": "constantDiscriminatorNode",
"offset": 0,
"constant": {
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "ab11a4747a42b722",
"encoding": "base16"
}
}
}
]
},
{
"kind": "eventNode",
"name": "loanCreated",
"data": {
"kind": "hiddenPrefixTypeNode",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "loan",
"type": { "kind": "definedTypeLinkNode", "name": "loanEventV0" }
},
{
"kind": "structFieldTypeNode",
"name": "pubkey",
"type": { "kind": "publicKeyTypeNode" }
}
]
},
"prefix": [
{
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "8e941cd741b9f6c8",
"encoding": "base16"
}
}
]
},
"discriminators": [
{
"kind": "constantDiscriminatorNode",
"offset": 0,
"constant": {
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "8e941cd741b9f6c8",
"encoding": "base16"
}
}
}
]
},
{
"kind": "eventNode",
"name": "loanDefaulted",
"data": {
"kind": "hiddenPrefixTypeNode",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "loan",
"type": { "kind": "definedTypeLinkNode", "name": "loanEventV0" }
},
{
"kind": "structFieldTypeNode",
"name": "pubkey",
"type": { "kind": "publicKeyTypeNode" }
}
]
},
"prefix": [
{
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "c2623358e476ad2e",
"encoding": "base16"
}
}
]
},
"discriminators": [
{
"kind": "constantDiscriminatorNode",
"offset": 0,
"constant": {
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "c2623358e476ad2e",
"encoding": "base16"
}
}
}
]
},
{
"kind": "eventNode",
"name": "loanRepaid",
"data": {
"kind": "hiddenPrefixTypeNode",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "loan",
"type": { "kind": "definedTypeLinkNode", "name": "loanEventV0" }
},
{
"kind": "structFieldTypeNode",
"name": "pubkey",
"type": { "kind": "publicKeyTypeNode" }
}
]
},
"prefix": [
{
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "cab7583cd3368ef3",
"encoding": "base16"
}
}
]
},
"discriminators": [
{
"kind": "constantDiscriminatorNode",
"offset": 0,
"constant": {
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "cab7583cd3368ef3",
"encoding": "base16"
}
}
}
]
},
{
"kind": "eventNode",
"name": "offerCancelled",
"data": {
"kind": "hiddenPrefixTypeNode",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "offer",
"type": { "kind": "definedTypeLinkNode", "name": "offerEventV0" }
},
{
"kind": "structFieldTypeNode",
"name": "pubkey",
"type": { "kind": "publicKeyTypeNode" }
}
]
},
"prefix": [
{
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "2d2aafd633c09a09",
"encoding": "base16"
}
}
]
},
"discriminators": [
{
"kind": "constantDiscriminatorNode",
"offset": 0,
"constant": {
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "2d2aafd633c09a09",
"encoding": "base16"
}
}
}
]
},
{
"kind": "eventNode",
"name": "offerCancelledV1",
"data": {
"kind": "hiddenPrefixTypeNode",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "offer",
"type": { "kind": "definedTypeLinkNode", "name": "offerEventV1" }
},
{
"kind": "structFieldTypeNode",
"name": "pubkey",
"type": { "kind": "publicKeyTypeNode" }
}
]
},
"prefix": [
{
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "94d2d19e81320fa6",
"encoding": "base16"
}
}
]
},
"discriminators": [
{
"kind": "constantDiscriminatorNode",
"offset": 0,
"constant": {
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "94d2d19e81320fa6",
"encoding": "base16"
}
}
}
]
},
{
"kind": "eventNode",
"name": "offerCreated",
"data": {
"kind": "hiddenPrefixTypeNode",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "offer",
"type": { "kind": "definedTypeLinkNode", "name": "offerEventV0" }
},
{
"kind": "structFieldTypeNode",
"name": "pubkey",
"type": { "kind": "publicKeyTypeNode" }
}
]
},
"prefix": [
{
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "1fecd7904b2d9d57",
"encoding": "base16"
}
}
]
},
"discriminators": [
{
"kind": "constantDiscriminatorNode",
"offset": 0,
"constant": {
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "1fecd7904b2d9d57",
"encoding": "base16"
}
}
}
]
},
{
"kind": "eventNode",
"name": "offerCreatedV1",
"data": {
"kind": "hiddenPrefixTypeNode",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "offer",
"type": { "kind": "definedTypeLinkNode", "name": "offerEventV1" }
},
{
"kind": "structFieldTypeNode",
"name": "pubkey",
"type": { "kind": "publicKeyTypeNode" }
}
]
},
"prefix": [
{
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "71763bf09f8168c4",
"encoding": "base16"
}
}
]
},
"discriminators": [
{
"kind": "constantDiscriminatorNode",
"offset": 0,
"constant": {
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "71763bf09f8168c4",
"encoding": "base16"
}
}
}
]
},
{
"kind": "eventNode",
"name": "offerFilled",
"data": {
"kind": "hiddenPrefixTypeNode",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "offer",
"type": { "kind": "definedTypeLinkNode", "name": "offerEventV0" }
},
{
"kind": "structFieldTypeNode",
"name": "pubkey",
"type": { "kind": "publicKeyTypeNode" }
}
]
},
"prefix": [
{
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "ad685fa190ce4839",
"encoding": "base16"
}
}
]
},
"discriminators": [
{
"kind": "constantDiscriminatorNode",
"offset": 0,
"constant": {
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "ad685fa190ce4839",
"encoding": "base16"
}
}
}
]
},
{
"kind": "eventNode",
"name": "offerFilledV1",
"data": {
"kind": "hiddenPrefixTypeNode",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "offer",
"type": { "kind": "definedTypeLinkNode", "name": "offerEventV1" }
},
{
"kind": "structFieldTypeNode",
"name": "pubkey",
"type": { "kind": "publicKeyTypeNode" }
}
]
},
"prefix": [
{
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "3581f8908a5bd19b",
"encoding": "base16"
}
}
]
},
"discriminators": [
{
"kind": "constantDiscriminatorNode",
"offset": 0,
"constant": {
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "3581f8908a5bd19b",
"encoding": "base16"
}
}
}
]
},
{
"kind": "eventNode",
"name": "protocolFee",
"data": {
"kind": "hiddenPrefixTypeNode",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "amount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "netAmount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "timestamp",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
}
]
},
"prefix": [
{
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "984f2ee57f5cc015",
"encoding": "base16"
}
}
]
},
"discriminators": [
{
"kind": "constantDiscriminatorNode",
"offset": 0,
"constant": {
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "984f2ee57f5cc015",
"encoding": "base16"
}
}
}
]
},
{
"kind": "eventNode",
"name": "refereeReward",
"data": {
"kind": "hiddenPrefixTypeNode",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "referee",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "amount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "timestamp",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
}
]
},
"prefix": [
{
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "bbda6688d4ce317f",
"encoding": "base16"
}
}
]
},
"discriminators": [
{
"kind": "constantDiscriminatorNode",
"offset": 0,
"constant": {
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "bbda6688d4ce317f",
"encoding": "base16"
}
}
}
]
},
{
"kind": "eventNode",
"name": "referralReward",
"data": {
"kind": "hiddenPrefixTypeNode",
"type": {
"kind": "structTypeNode",
"fields": [
{
"kind": "structFieldTypeNode",
"name": "referrer",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "referee",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "mint",
"type": { "kind": "publicKeyTypeNode" }
},
{
"kind": "structFieldTypeNode",
"name": "amount",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "timestamp",
"type": { "kind": "numberTypeNode", "format": "u64", "endian": "le" }
},
{
"kind": "structFieldTypeNode",
"name": "referralType",
"type": { "kind": "definedTypeLinkNode", "name": "referralType" }
}
]
},
"prefix": [
{
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "1eda54afbc55db63",
"encoding": "base16"
}
}
]
},
"discriminators": [
{
"kind": "constantDiscriminatorNode",
"offset": 0,
"constant": {
"kind": "constantValueNode",
"type": {
"kind": "fixedSizeTypeNode",
"size": 8,
"type": { "kind": "bytesTypeNode" }
},
"value": {
"kind": "bytesValueNode",
"data": "1eda54afbc55db63",
"encoding": "base16"
}
}
}
]
}
],
"errors": [
{
"kind": "errorNode",
"name": "duplicateResources",
"code": 6000,
"message": "Duplicate Resources",
"docs": ["DuplicateResources: Duplicate Resources"]
},
{
"kind": "errorNode",
"name": "adminArrayFull",
"code": 6001,
"message": "Admin Array Full",
"docs": ["AdminArrayFull: Admin Array Full"]
},
{
"kind": "errorNode",
"name": "newAdminIsOldAdmin",
"code": 6002,
"message": "New Admin Is Old Admin",
"docs": ["NewAdminIsOldAdmin: New Admin Is Old Admin"]
},
{
"kind": "errorNode",
"name": "notAuthorized",
"code": 6003,
"message": "Not Authorized",
"docs": ["NotAuthorized: Not Authorized"]
},
{
"kind": "errorNode",
"name": "badInput",
"code": 6004,
"message": "Bad Input",
"docs": ["BadInput: Bad Input"]
},
{
"kind": "errorNode",
"name": "protocolPaused",
"code": 6005,
"message": "Protocol Paused",
"docs": ["ProtocolPaused: Protocol Paused"]
},
{
"kind": "errorNode",
"name": "alreadyPaused",
"code": 6006,
"message": "Already Paused",
"docs": ["AlreadyPaused: Already Paused"]
},
{
"kind": "errorNode",
"name": "alreadyUnpaused",
"code": 6007,
"message": "Already Unpaused",
"docs": ["AlreadyUnpaused: Already Unpaused"]
},
{
"kind": "errorNode",
"name": "invalidReferrer",
"code": 6008,
"message": "Invalid Referrer",
"docs": ["InvalidReferrer: Invalid Referrer"]
},
{
"kind": "errorNode",
"name": "invalidTokenMint",
"code": 6009,
"message": "Invalid Token Mint",
"docs": ["InvalidTokenMint: Invalid Token Mint"]
},
{
"kind": "errorNode",
"name": "invalidDuration",
"code": 6010,
"message": "Invalid Duration",
"docs": ["InvalidDuration: Invalid Duration"]
},
{
"kind": "errorNode",
"name": "invalidExpiry",
"code": 6011,
"message": "Invalid Expiry",
"docs": ["InvalidExpiry: Invalid Expiry"]
},
{
"kind": "errorNode",
"name": "invalidAPY",
"code": 6012,
"message": "Invalid APY",
"docs": ["InvalidAPY: Invalid APY"]
},
{
"kind": "errorNode",
"name": "invalidOwner",
"code": 6013,
"message": "Invalid Owner",
"docs": ["InvalidOwner: Invalid Owner"]
},
{
"kind": "errorNode",
"name": "invalidOfferStatus",
"code": 6014,
"message": "Invalid Offer Status",
"docs": ["InvalidOfferStatus: Invalid Offer Status"]
},
{
"kind": "errorNode",
"name": "invalidOfferOrigin",
"code": 6015,
"message": "Invalid Offer Origin",
"docs": ["InvalidOfferOrigin: Invalid Offer Origin"]
},
{
"kind": "errorNode",
"name": "invalidCollateral",
"code": 6016,
"message": "Invalid Collateral",
"docs": ["InvalidCollateral: Invalid Collateral"]
},
{
"kind": "errorNode",
"name": "offerExpired",
"code": 6017,
"message": "Offer Expired",
"docs": ["OfferExpired: Offer Expired"]
},
{
"kind": "errorNode",
"name": "invalidFillAmount",
"code": 6018,
"message": "Invalid Fill Amount",
"docs": ["InvalidFillAmount: Invalid Fill Amount"]
},
{
"kind": "errorNode",
"name": "invalidLoanStatus",
"code": 6019,
"message": "Invalid Loan Status",
"docs": ["InvalidLoanStatus: Invalid Loan Status"]
},
{
"kind": "errorNode",
"name": "loanNotDue",
"code": 6020,
"message": "Loan is not due",
"docs": ["LoanNotDue: Loan is not due"]
},
{
"kind": "errorNode",
"name": "invalidOfferSide",
"code": 6021,
"message": "Invalid Offer Side",
"docs": ["InvalidOfferSide: Invalid Offer Side"]
},
{
"kind": "errorNode",
"name": "invalidAsset",
"code": 6022,
"message": "Invalid Asset",
"docs": ["InvalidAsset: Invalid Asset"]
},
{
"kind": "errorNode",
"name": "missingLoanVault",
"code": 6023,
"message": "Missing Loan Vault",
"docs": ["MissingLoanVault: Missing Loan Vault"]
}
],
"constants": []
},
"additionalPrograms": []
}