///
///
///
import { BeetStruct } from '@metaplex-foundation/beet';
import { PublicKey } from '@solana/web3.js';
import BigNumber from 'bignumber.js';
export type SingleListing = {
padding: Buffer;
owner: PublicKey;
nftMint: PublicKey;
price: BigNumber;
bump: number[];
reserved: number[];
};
export declare const singleListingStruct: BeetStruct>;
export declare enum PoolType {
Token = 0,
NFT = 1,
Trade = 2
}
export declare enum CurveType {
Linear = 0,
Exponential = 1
}
export type PoolConfig = {
poolType: PoolType;
curveType: CurveType;
startingPrice: BigNumber;
delta: BigNumber;
honorRoyalties: boolean;
mmFeeBps: number;
};
export declare const poolConfigStruct: BeetStruct>;
export type TSwapConfig = {
feeBps: number;
};
export declare const tSwapConfigStruct: BeetStruct>;
export type TSwap = {
version: number;
bump: number[];
config: TSwapConfig;
owner: PublicKey;
feeVault: PublicKey;
cosigner: PublicKey;
};
export declare const tSwapStruct: BeetStruct>;
export type Pool = {
buffer: Buffer;
owner: PublicKey;
whitelist: PublicKey;
solEscrow: PublicKey;
takerSellCount: number;
takerBuyCount: number;
nftsHeld: number;
padding: Buffer;
};
export declare const poolStruct: BeetStruct>;
export declare enum OrderType {
Token = 0,
NFT = 1
}
export type OrderStateLock = {
buffer: Buffer;
version: number;
bump: number[];
orderId: number[];
orderType: OrderType;
nonce: number;
maker: PublicKey;
price: BigNumber;
currency: PublicKey;
aprBps: BigNumber;
durationSec: BigNumber;
whitelist: PublicKey;
makerBroker: PublicKey;
margin: PublicKey;
expiry: BigNumber;
createdAt: BigNumber;
updatedAt: BigNumber;
nftsHeld: BigNumber;
vaultBalance: BigNumber;
lockedAt: BigNumber;
lockedUntil: BigNumber;
taker: PublicKey;
collateralReturned: boolean;
lastExercisedAt: BigNumber;
exerciseCount: BigNumber;
accumulatedProfit: BigNumber;
takerWithdrawnNfts: BigNumber;
takerWithdrawnFunds: BigNumber;
reserved: number[];
};
export declare const orderStateLockStruct: BeetStruct>;
export type VestingAccount = {
padding: Buffer;
owner: PublicKey;
};
export declare const vestingAccountStruct: BeetStruct>;