UNPKG

hadeswap-sdk-public

Version:

HadeSwap SDK for interacting with protocol

1,718 lines 106 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.IDL = void 0; exports.IDL = { version: '0.1.0', name: 'hadeswap', instructions: [ { name: 'initializePair', accounts: [ { name: 'pair', isMut: true, isSigner: true, }, { name: 'hadoMarket', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'pairAuthorityAdapterProgram', isMut: false, isSigner: false, }, { name: 'partialAdapterProgram', isMut: false, isSigner: false, }, { name: 'partialAssetReceiver', isMut: false, isSigner: false, }, { name: 'feeSolVault', isMut: true, isSigner: false, }, { name: 'feeTokenAccount', isMut: false, isSigner: false, }, { name: 'fundsSolVault', isMut: true, isSigner: false, }, { name: 'fundsTokenAccount', isMut: false, isSigner: false, }, { name: 'assetReceiver', isMut: false, isSigner: false, }, { name: 'assetReceiverTokenAccount', isMut: false, isSigner: false, }, { name: 'nftsOwner', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [ { name: 'bumps', type: { defined: 'PairBumps', }, }, { name: 'params', type: { defined: 'PairParams', }, }, { name: 'bondingCurveType', type: { defined: 'BondingCurveType', }, }, { name: 'pairType', type: { defined: 'PairType', }, }, ], returns: undefined, }, { name: 'createClassicAuthorityAdapter', accounts: [ { name: 'authorityAdapter', isMut: true, isSigner: true, }, { name: 'pair', isMut: true, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [], returns: undefined, }, { name: 'depositSolToPair', accounts: [ { name: 'pair', isMut: true, isSigner: false, }, { name: 'authorityAdapter', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'fundsSolVault', isMut: true, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [ { name: 'amountOfOrders', type: 'u64', }, ], returns: undefined, }, { name: 'validateNft', accounts: [ { name: 'nftValidationAdapter', isMut: true, isSigner: true, }, { name: 'validationWhitelist', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [], returns: undefined, }, { name: 'depositNftToPair', accounts: [ { name: 'nftPairBox', isMut: true, isSigner: true, }, { name: 'pair', isMut: true, isSigner: false, }, { name: 'authorityAdapter', isMut: false, isSigner: false, }, { name: 'nftValidationAdapter', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'nftsOwner', isMut: false, isSigner: false, }, { name: 'nftMint', isMut: true, isSigner: false, }, { name: 'nftUserTokenAccount', isMut: true, isSigner: false, }, { name: 'vaultTokenAccount', isMut: true, isSigner: false, }, { name: 'tokenProgram', isMut: false, isSigner: false, }, { name: 'associatedTokenProgram', isMut: false, isSigner: false, }, { name: 'metadataProgram', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, { name: 'metadataInfo', isMut: true, isSigner: false, }, { name: 'editionInfo', isMut: false, isSigner: false, }, { name: 'ownerTokenRecord', isMut: true, isSigner: false, }, { name: 'destTokenRecord', isMut: true, isSigner: false, }, { name: 'instructions', isMut: false, isSigner: false, }, { name: 'authorizationRulesProgram', isMut: false, isSigner: false, }, ], args: [ { name: 'proof', type: { vec: { array: ['u8', 32], }, }, }, { name: 'authorizationData', type: { option: { defined: 'AuthorizationDataLocal', }, }, }, ], returns: undefined, }, { name: 'initializeHadoMarket', accounts: [ { name: 'hadoMarket', isMut: true, isSigner: true, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'validationAdapterProgram', isMut: false, isSigner: false, }, { name: 'pairTokenMint', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [], returns: undefined, }, { name: 'finishHadoMarket', accounts: [ { name: 'hadoMarket', isMut: true, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [], returns: undefined, }, { name: 'addClassicWhitelistToMarket', accounts: [ { name: 'validationWhitelist', isMut: true, isSigner: true, }, { name: 'hadoMarket', isMut: true, isSigner: false, }, { name: 'whitelistedAddress', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [ { name: 'whitelistType', type: { defined: 'NftValidationWhitelistType', }, }, ], returns: undefined, }, { name: 'depositLiquidityToPair', accounts: [ { name: 'nftPairBox', isMut: true, isSigner: true, }, { name: 'pair', isMut: true, isSigner: false, }, { name: 'authorityAdapter', isMut: false, isSigner: false, }, { name: 'nftValidationAdapter', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'fundsSolVault', isMut: true, isSigner: false, }, { name: 'nftsOwner', isMut: false, isSigner: false, }, { name: 'nftMint', isMut: true, isSigner: false, }, { name: 'nftUserTokenAccount', isMut: true, isSigner: false, }, { name: 'vaultTokenAccount', isMut: true, isSigner: false, }, { name: 'tokenProgram', isMut: false, isSigner: false, }, { name: 'associatedTokenProgram', isMut: false, isSigner: false, }, { name: 'metadataProgram', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, { name: 'metadataInfo', isMut: true, isSigner: false, }, { name: 'editionInfo', isMut: false, isSigner: false, }, { name: 'ownerTokenRecord', isMut: true, isSigner: false, }, { name: 'destTokenRecord', isMut: true, isSigner: false, }, { name: 'instructions', isMut: false, isSigner: false, }, { name: 'authorizationRulesProgram', isMut: false, isSigner: false, }, ], args: [ { name: 'proof', type: { vec: { array: ['u8', 32], }, }, }, { name: 'authorizationData', type: { option: { defined: 'AuthorizationDataLocal', }, }, }, ], returns: undefined, }, { name: 'putPairOnMarket', accounts: [ { name: 'pair', isMut: true, isSigner: false, }, { name: 'authorityAdapter', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [], returns: undefined, }, { name: 'buyNftFromPair', accounts: [ { name: 'nftPairBox', isMut: true, isSigner: false, }, { name: 'pair', isMut: true, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'fundsSolVault', isMut: true, isSigner: false, }, { name: 'nftsOwner', isMut: false, isSigner: false, }, { name: 'feeSolVault', isMut: true, isSigner: false, }, { name: 'nftMint', isMut: true, isSigner: false, }, { name: 'vaultNftTokenAccount', isMut: true, isSigner: false, }, { name: 'nftUserTokenAccount', isMut: true, isSigner: false, }, { name: 'assetReceiver', isMut: true, isSigner: false, }, { name: 'editionInfo', isMut: false, isSigner: false, }, { name: 'metadataInfo', isMut: true, isSigner: false, }, { name: 'ownerTokenRecord', isMut: true, isSigner: false, }, { name: 'destTokenRecord', isMut: true, isSigner: false, }, { name: 'instructions', isMut: false, isSigner: false, }, { name: 'authorizationRulesProgram', isMut: false, isSigner: false, }, { name: 'protocolFeeReceiver', isMut: true, isSigner: false, }, { name: 'tokenProgram', isMut: false, isSigner: false, }, { name: 'associatedTokenProgram', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, { name: 'metadataProgram', isMut: false, isSigner: false, }, ], args: [ { name: 'maxAmountToPay', type: 'u64', }, { name: 'skipFailed', type: 'bool', }, { name: 'authorizationData', type: { option: { defined: 'AuthorizationDataLocal', }, }, }, ], returns: undefined, }, { name: 'sellNftToTokenToNftPair', accounts: [ { name: 'pair', isMut: true, isSigner: false, }, { name: 'nftValidationAdapter', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'nftMint', isMut: true, isSigner: false, }, { name: 'assetReceiverTokenAccount', isMut: true, isSigner: false, }, { name: 'nftUserTokenAccount', isMut: true, isSigner: false, }, { name: 'assetReceiver', isMut: true, isSigner: false, }, { name: 'fundsSolVault', isMut: true, isSigner: false, }, { name: 'protocolFeeReceiver', isMut: true, isSigner: false, }, { name: 'tokenProgram', isMut: false, isSigner: false, }, { name: 'associatedTokenProgram', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, { name: 'metadataInfo', isMut: true, isSigner: false, }, { name: 'editionInfo', isMut: false, isSigner: false, }, { name: 'ownerTokenRecord', isMut: true, isSigner: false, }, { name: 'destTokenRecord', isMut: true, isSigner: false, }, { name: 'instructions', isMut: false, isSigner: false, }, { name: 'authorizationRulesProgram', isMut: false, isSigner: false, }, { name: 'metadataProgram', isMut: false, isSigner: false, }, ], args: [ { name: 'minAmountToGet', type: 'u64', }, { name: 'skipFailed', type: 'bool', }, { name: 'proof', type: { vec: { array: ['u8', 32], }, }, }, { name: 'authorizationData', type: { option: { defined: 'AuthorizationDataLocal', }, }, }, ], returns: undefined, }, { name: 'sellNftToLiquidityPair', accounts: [ { name: 'nftPairBox', isMut: true, isSigner: true, }, { name: 'pair', isMut: true, isSigner: false, }, { name: 'nftValidationAdapter', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'nftMint', isMut: true, isSigner: false, }, { name: 'nftsOwner', isMut: false, isSigner: false, }, { name: 'feeSolVault', isMut: true, isSigner: false, }, { name: 'newVaultTokenAccount', isMut: true, isSigner: false, }, { name: 'nftUserTokenAccount', isMut: true, isSigner: false, }, { name: 'fundsSolVault', isMut: true, isSigner: false, }, { name: 'ownerTokenRecord', isMut: true, isSigner: false, }, { name: 'destTokenRecord', isMut: true, isSigner: false, }, { name: 'instructions', isMut: false, isSigner: false, }, { name: 'authorizationRulesProgram', isMut: false, isSigner: false, }, { name: 'protocolFeeReceiver', isMut: true, isSigner: false, }, { name: 'tokenProgram', isMut: false, isSigner: false, }, { name: 'associatedTokenProgram', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, { name: 'metadataInfo', isMut: true, isSigner: false, }, { name: 'editionInfo', isMut: false, isSigner: false, }, { name: 'metadataProgram', isMut: false, isSigner: false, }, ], args: [ { name: 'minAmountToGet', type: 'u64', }, { name: 'skipFailed', type: 'bool', }, { name: 'proof', type: { vec: { array: ['u8', 32], }, }, }, { name: 'authorizationData', type: { option: { defined: 'AuthorizationDataLocal', }, }, }, ], returns: undefined, }, { name: 'withdrawSolFromPair', accounts: [ { name: 'pair', isMut: true, isSigner: false, }, { name: 'authorityAdapter', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'fundsSolVault', isMut: true, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [ { name: 'quantityOfOrders', type: 'u64', }, ], returns: undefined, }, { name: 'withdrawNftFromPair', accounts: [ { name: 'nftPairBox', isMut: true, isSigner: false, }, { name: 'authorityAdapter', isMut: false, isSigner: false, }, { name: 'pair', isMut: true, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'nftsOwner', isMut: false, isSigner: false, }, { name: 'nftMint', isMut: true, isSigner: false, }, { name: 'vaultNftTokenAccount', isMut: true, isSigner: false, }, { name: 'nftUserTokenAccount', isMut: true, isSigner: false, }, { name: 'editionInfo', isMut: false, isSigner: false, }, { name: 'metadataInfo', isMut: true, isSigner: false, }, { name: 'ownerTokenRecord', isMut: true, isSigner: false, }, { name: 'destTokenRecord', isMut: true, isSigner: false, }, { name: 'instructions', isMut: false, isSigner: false, }, { name: 'authorizationRulesProgram', isMut: false, isSigner: false, }, { name: 'tokenProgram', isMut: false, isSigner: false, }, { name: 'associatedTokenProgram', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, { name: 'metadataProgram', isMut: false, isSigner: false, }, ], args: [ { name: 'authorizationData', type: { option: { defined: 'AuthorizationDataLocal', }, }, }, ], returns: undefined, }, { name: 'withdrawLiquidityFromBalancedPair', accounts: [ { name: 'nftPairBox', isMut: true, isSigner: false, }, { name: 'authorityAdapter', isMut: false, isSigner: false, }, { name: 'pair', isMut: true, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'fundsSolVault', isMut: true, isSigner: false, }, { name: 'feeSolVault', isMut: true, isSigner: false, }, { name: 'nftsOwner', isMut: false, isSigner: false, }, { name: 'nftMint', isMut: true, isSigner: false, }, { name: 'vaultNftTokenAccount', isMut: true, isSigner: false, }, { name: 'editionInfo', isMut: false, isSigner: false, }, { name: 'metadataInfo', isMut: true, isSigner: false, }, { name: 'ownerTokenRecord', isMut: true, isSigner: false, }, { name: 'destTokenRecord', isMut: true, isSigner: false, }, { name: 'instructions', isMut: false, isSigner: false, }, { name: 'authorizationRulesProgram', isMut: false, isSigner: false, }, { name: 'nftUserTokenAccount', isMut: true, isSigner: false, }, { name: 'tokenProgram', isMut: false, isSigner: false, }, { name: 'associatedTokenProgram', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, { name: 'metadataProgram', isMut: false, isSigner: false, }, ], args: [ { name: 'authorizationData', type: { option: { defined: 'AuthorizationDataLocal', }, }, }, ], returns: undefined, }, { name: 'modifyPair', accounts: [ { name: 'pair', isMut: true, isSigner: false, }, { name: 'authorityAdapter', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'fundsSolVault', isMut: true, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'PairParams', }, }, ], returns: undefined, }, { name: 'withdrawLiquidityFromBuyOrdersPair', accounts: [ { name: 'authorityAdapter', isMut: false, isSigner: false, }, { name: 'pair', isMut: true, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'fundsSolVault', isMut: true, isSigner: false, }, { name: 'feeSolVault', isMut: true, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [], returns: undefined, }, { name: 'withdrawLiquidityFromSellOrdersPair', accounts: [ { name: 'nftPairBoxFirst', isMut: true, isSigner: false, }, { name: 'nftMintFirst', isMut: true, isSigner: false, }, { name: 'vaultNftTokenAccountFirst', isMut: true, isSigner: false, }, { name: 'nftUserTokenAccountFirst', isMut: true, isSigner: false, }, { name: 'nftPairBoxSecond', isMut: true, isSigner: false, }, { name: 'editionInfoFirst', isMut: false, isSigner: false, }, { name: 'metadataInfoFirst', isMut: true, isSigner: false, }, { name: 'ownerTokenRecordFirst', isMut: false, isSigner: false, }, { name: 'destTokenRecordFirst', isMut: false, isSigner: false, }, { name: 'editionInfoSecond', isMut: false, isSigner: false, }, { name: 'metadataInfoSecond', isMut: true, isSigner: false, }, { name: 'ownerTokenRecordSecond', isMut: false, isSigner: false, }, { name: 'destTokenRecordSecond', isMut: false, isSigner: false, }, { name: 'instructions', isMut: false, isSigner: false, }, { name: 'authorizationRulesProgram', isMut: false, isSigner: false, }, { name: 'nftMintSecond', isMut: true, isSigner: false, }, { name: 'vaultNftTokenAccountSecond', isMut: true, isSigner: false, }, { name: 'nftUserTokenAccountSecond', isMut: true, isSigner: false, }, { name: 'authorityAdapter', isMut: false, isSigner: false, }, { name: 'pair', isMut: true, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'nftsOwner', isMut: false, isSigner: false, }, { name: 'feeSolVault', isMut: true, isSigner: false, }, { name: 'tokenProgram', isMut: false, isSigner: false, }, { name: 'associatedTokenProgram', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, { name: 'metadataProgram', isMut: false, isSigner: false, }, ], args: [], returns: undefined, }, { name: 'withdrawLiquidityOrderVirtualFees', accounts: [ { name: 'liquidityProvisionOrder', isMut: true, isSigner: false, }, { name: 'pair', isMut: true, isSigner: false, }, { name: 'authorityAdapter', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'feeSolVault', isMut: true, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [], returns: undefined, }, { name: 'closeVirtualNftSwapPair', accounts: [ { name: 'pair', isMut: true, isSigner: false, }, { name: 'authorityAdapter', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'fundsSolVault', isMut: true, isSigner: false, }, { name: 'feeSolVault', isMut: true, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [], returns: undefined, }, { name: 'withdrawVirtualFees', accounts: [ { name: 'pair', isMut: true, isSigner: false, }, { name: 'authorityAdapter', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'feeSolVault', isMut: true, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [], returns: undefined, }, { name: 'closeNftPairBox', accounts: [ { name: 'nftPairBox', isMut: true, isSigner: false, }, { name: 'admin', isMut: true, isSigner: true, }, ], args: [], returns: undefined, }, { name: 'closeLiquidityProvisionOrder', accounts: [ { name: 'liquidityProvisionOrder', isMut: true, isSigner: false, }, { name: 'admin', isMut: true, isSigner: true, }, ], args: [], returns: undefined, }, { name: 'customValidateNft', accounts: [ { name: 'nftValidationAdapter', isMut: true, isSigner: true, }, { name: 'hadoMarket', isMut: false, isSigner: false, }, { name: 'pair', isMut: false, isSigner: false, }, { name: 'whitelistedAddress', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'adapterProgramSigner', isMut: true, isSigner: true, }, { name: 'systemProgram'