UNPKG

hadeswap-sdk

Version:

HadeSwap SDK for interacting with protocol

720 lines (719 loc) 20.2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.IDL = void 0; exports.IDL = { version: '0.1.0', name: 'auction', instructions: [ { name: 'initializeAuction', accounts: [ { name: 'auction', isMut: true, isSigner: true, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [], returns: undefined, }, { name: 'addLot', accounts: [ { name: 'auction', isMut: true, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'lot', isMut: true, isSigner: false, }, { name: 'nftMint', isMut: true, isSigner: false, }, { name: 'nftsOwner', isMut: false, isSigner: false, }, { name: 'nftUserTokenAccount', isMut: true, isSigner: false, }, { name: 'editionInfo', isMut: false, isSigner: false, }, { name: 'metadataInfo', isMut: true, isSigner: false, }, { name: 'ownerTokenRecord', isMut: false, isSigner: false, }, { name: 'destTokenRecord', isMut: false, isSigner: false, }, { name: 'instructions', isMut: false, isSigner: false, }, { name: 'authorizationRulesProgram', isMut: false, isSigner: false, }, { name: 'vaultTokenAccount', 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, }, ], args: [ { name: 'authorizationData', type: { option: { defined: 'AuthorizationDataLocal', }, }, }, ], returns: undefined, }, { name: 'startAuction', accounts: [ { name: 'auction', isMut: true, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [ { name: 'startAt', type: 'u64', }, ], returns: undefined, }, { name: 'placeBid', accounts: [ { name: 'auction', isMut: true, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'fundsHadesVault', isMut: true, isSigner: false, }, { name: 'currentWinner', isMut: true, isSigner: false, }, { name: 'lot', isMut: true, isSigner: false, }, { name: 'nftMint', isMut: true, isSigner: false, }, { name: 'tokenMint', isMut: true, isSigner: false, }, { name: 'userTokenAccount', isMut: true, isSigner: false, }, { name: 'vaultTokenAccount', isMut: true, isSigner: false, }, { name: 'currentWinnerTokenAccount', 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, }, ], args: [ { name: 'bid', type: 'u64', }, ], returns: undefined, }, { name: 'claimNft', accounts: [ { name: 'auction', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'lot', isMut: true, isSigner: false, }, { name: 'nftMint', isMut: true, isSigner: false, }, { name: 'nftsOwner', isMut: false, isSigner: false, }, { name: 'editionInfo', isMut: false, isSigner: false, }, { name: 'metadataInfo', isMut: true, isSigner: false, }, { name: 'ownerTokenRecord', isMut: false, isSigner: false, }, { name: 'destTokenRecord', isMut: false, isSigner: false, }, { name: 'instructions', isMut: false, isSigner: false, }, { name: 'authorizationRulesProgram', isMut: false, 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: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [ { name: 'authorizationData', type: { option: { defined: 'AuthorizationDataLocal', }, }, }, ], returns: undefined, }, { name: 'closeLotAccount', accounts: [ { name: 'auction', isMut: false, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'lot', isMut: true, isSigner: false, }, { name: 'nftMint', isMut: true, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'rent', isMut: false, isSigner: false, }, ], args: [], returns: undefined, }, { name: 'auctionProfitClaim', accounts: [ { name: 'auction', isMut: true, isSigner: false, }, { name: 'user', isMut: true, isSigner: true, }, { name: 'fundsHadesVault', isMut: true, isSigner: false, }, { name: 'tokenMint', isMut: true, isSigner: false, }, { name: 'userTokenAccount', isMut: true, isSigner: false, }, { name: 'vaultTokenAccount', 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, }, ], args: [], returns: undefined, }, ], accounts: [ { name: 'auctionLot', type: { kind: 'struct', fields: [ { name: 'auction', type: 'publicKey', }, { name: 'lotNumber', type: 'u16', }, { name: 'nftMint', type: 'publicKey', }, { name: 'currentBid', type: 'u64', }, { name: 'currentWinner', type: 'publicKey', }, { name: 'winnerClaimed', type: 'bool', }, ], }, }, { name: 'auction', type: { kind: 'struct', fields: [ { name: 'auctionAuthority', type: 'publicKey', }, { name: 'auctionState', type: { defined: 'AuctionState', }, }, { name: 'totalBids', type: 'u64', }, { name: 'lotsAmount', type: 'u16', }, { name: 'endTime', type: 'u64', }, ], }, }, ], types: [ { name: 'AuthorizationDataLocal', type: { kind: 'struct', fields: [ { name: 'payload', type: { vec: { defined: 'TaggedPayload', }, }, }, ], }, }, { name: 'TaggedPayload', type: { kind: 'struct', fields: [ { name: 'name', type: 'string', }, { name: 'payload', type: { defined: 'PayloadTypeLocal', }, }, ], }, }, { name: 'SeedsVecLocal', type: { kind: 'struct', fields: [ { name: 'seeds', type: { vec: 'bytes', }, }, ], }, }, { name: 'ProofInfoLocal', type: { kind: 'struct', fields: [ { name: 'proof', type: { vec: { array: ['u8', 32], }, }, }, ], }, }, { name: 'AuctionState', type: { kind: 'enum', variants: [ { name: 'Initializing', }, { name: 'Active', }, ], }, }, { name: 'PayloadTypeLocal', type: { kind: 'enum', variants: [ { name: 'Pubkey', fields: ['publicKey'], }, { name: 'Seeds', fields: [ { defined: 'SeedsVecLocal', }, ], }, { name: 'MerkleProof', fields: [ { defined: 'ProofInfoLocal', }, ], }, { name: 'Number', fields: ['u64'], }, ], }, }, ], errors: [ { code: 6000, name: 'OnlyAdminCanInitializeAuction', msg: 'OnlyAdminCanInitializeAuction', }, { code: 6001, name: 'OnlyAuctionAuthorityCanAddLots', msg: 'OnlyAuctionAuthorityCanAddLots', }, { code: 6002, name: 'MaxLotsAmountExceeded', msg: 'MaxLotsAmountExceeded', }, { code: 6003, name: 'CanAddLotsOnlyToInitializingAuction', msg: 'CanAddLotsOnlyToInitializingAuction', }, { code: 6004, name: 'OnlyAuctionAuthorityCanStartAuction', msg: 'OnlyAuctionAuthorityCanStartAuction', }, { code: 6005, name: 'CanBidOnlyToActiveAuction', msg: 'CanBidOnlyToActiveAuction', }, { code: 6006, name: 'AuctionAlreadyFinished', msg: 'AuctionAlreadyFinished', }, { code: 6007, name: 'TooSmallBid', msg: 'TooSmallBid', }, { code: 6008, name: 'IncorrectCurrentWinner', msg: 'IncorrectCurrentWinner', }, { code: 6009, name: 'CurrentWinnerCantBid', msg: 'CurrentWinnerCantBid', }, { code: 6010, name: 'AuctionNotYetFinished', msg: 'AuctionNotYetFinished', }, { code: 6011, name: 'AuctionNotStarted', msg: 'AuctionNotStarted', }, { code: 6012, name: 'OnlyWinnerCanClaimNft', msg: 'OnlyWinnerCanClaimNft', }, { code: 6013, name: 'OnlyAuctionAuthorityCanCloseLots', msg: 'OnlyAuctionAuthorityCanCloseLots', }, { code: 6014, name: 'CanCloseOnlyClaimedLots', msg: 'CanCloseOnlyClaimedLots', }, { code: 6015, name: 'OnlyAuctionAuthorityCanClaimProfit', msg: 'OnlyAuctionAuthorityCanClaimProfit', }, { code: 6016, name: 'InvalidHadesMintAddress', msg: 'InvalidHadesMintAddress', }, { code: 6017, name: 'AuctionStartTimeTooLow', msg: 'AuctionStartTimeTooLow', }, { code: 6018, name: 'BadRuleSet', msg: 'BadRuleSet', }, ], };