import { PublicKey, TransactionInstruction } from '@solana/web3.js'; import BN from 'bn.js'; export declare const Side: { Bid: { bid: {}; }; Ask: { ask: {}; }; }; export declare const OrderType: { Limit: { limit: {}; }; ImmediateOrCancel: { immediateOrCancel: {}; }; PostOnly: { postOnly: {}; }; Market: { market: {}; }; PostOnlySlide: { postOnlySlide: {}; }; }; export declare const SelfTradeBehavior: { DecrementTake: { decrementTake: {}; }; CancelProvide: { cancelProvide: {}; }; AbortTransaction: { abortTransaction: {}; }; }; export declare const U64_MAX_BN: BN; export declare const I64_MAX_BN: BN; export declare function bpsToDecimal(bps: number): number; export declare function percentageToDecimal(percentage: number): number; export declare function toNative(uiAmount: number, decimals: number): BN; export declare function toUiDecimals(nativeAmount: number, decimals: number): number; export declare const QUOTE_DECIMALS = 6; export declare function toUiDecimalsForQuote(nativeAmount: number): number; /** * Get the address of the associated token account for a given mint and owner * * @param mint Token mint account * @param owner Owner of the new account * @param allowOwnerOffCurve Allow the owner account to be a PDA (Program Derived Address) * @param programId SPL Token program account * @param associatedTokenProgramId SPL Associated Token program account * * @return Address of the associated token account */ export declare function getAssociatedTokenAddress(mint: PublicKey, owner: PublicKey, allowOwnerOffCurve?: boolean, programId?: PublicKey, associatedTokenProgramId?: PublicKey): Promise; export declare function createAssociatedTokenAccountIdempotentInstruction(payer: PublicKey, owner: PublicKey, mint: PublicKey): Promise;