import { Connection, Keypair, PublicKey, TransactionInstruction } from "@solana/web3.js"; import BN from "bn.js"; import { Base, InstructionType, TxVersion } from "../base"; export declare const MARKET_STATE_LAYOUT_V2: import("../marshmallow").Structure; export declare class MarketV2 extends Base { static makeCreateMarketInstructionSimple({ connection, wallet, baseInfo, quoteInfo, lotSize, // 1 tickSize, // 0.01 dexProgramId, }: { connection: Connection; wallet: PublicKey; baseInfo: { mint: PublicKey; decimals: number; }; quoteInfo: { mint: PublicKey; decimals: number; }; lotSize: number; tickSize: number; dexProgramId: PublicKey; }): Promise<{ address: { marketId: PublicKey; requestQueue: PublicKey; eventQueue: PublicKey; bids: PublicKey; asks: PublicKey; baseVault: PublicKey; quoteVault: PublicKey; baseMint: PublicKey; quoteMint: PublicKey; }; innerTransactions: { instructions: TransactionInstruction[]; signers: Keypair[]; instructionTypes: InstructionType[]; supportedVersion: TxVersion[]; }[]; }>; static makeCreateMarketInstruction({ connection, wallet, marketInfo }: { connection: Connection; wallet: PublicKey; marketInfo: { programId: PublicKey; id: Keypair; baseMint: PublicKey; quoteMint: PublicKey; baseVault: Keypair; quoteVault: Keypair; vaultOwner: PublicKey; requestQueue: Keypair; eventQueue: Keypair; bids: Keypair; asks: Keypair; feeRateBps: number; vaultSignerNonce: BN; quoteDustThreshold: BN; baseLotSize: BN; quoteLotSize: BN; }; }): Promise<{ address: { marketId: PublicKey; requestQueue: PublicKey; eventQueue: PublicKey; bids: PublicKey; asks: PublicKey; baseVault: PublicKey; quoteVault: PublicKey; baseMint: PublicKey; quoteMint: PublicKey; }; innerTransactions: { instructions: TransactionInstruction[]; signers: Keypair[]; instructionTypes: InstructionType[]; supportedVersion: TxVersion[]; }[]; }>; static initializeMarketInstruction({ programId, marketInfo }: { programId: PublicKey; marketInfo: { id: PublicKey; requestQueue: PublicKey; eventQueue: PublicKey; bids: PublicKey; asks: PublicKey; baseVault: PublicKey; quoteVault: PublicKey; baseMint: PublicKey; quoteMint: PublicKey; authority?: PublicKey; pruneAuthority?: PublicKey; baseLotSize: BN; quoteLotSize: BN; feeRateBps: number; vaultSignerNonce: BN; quoteDustThreshold: BN; }; }): TransactionInstruction; }