import { Market } from '@project-serum/serum'; import { Token, u64 } from '@solana/spl-token'; import { Connection, Keypair, PublicKey, Transaction, TransactionInstruction, TransactionSignature } from '@solana/web3.js'; import { MangoClient } from '../src'; import MangoGroup from '../src/MangoGroup'; import MangoAccount from '../src/MangoAccount'; import { Payer } from '../src/utils/types'; export declare const MangoProgramId: PublicKey; export declare const DexProgramId: PublicKey; export declare const USDCMint: PublicKey; export declare const FeesVault: PublicKey; export declare const MSRMMint: PublicKey; export declare const OPTIMAL_UTIL = 0.7; export declare const OPTIMAL_RATE = 0.06; export declare const MAX_RATE = 1.5; export declare function _sendTransaction(connection: Connection, transaction: Transaction, signers: Keypair[]): Promise; export declare function createDevnetConnection(): Connection; export declare function airdropSol(connection: Connection, account: Keypair, amount: number): Promise; export declare function createOracle(connection: Connection, programId: PublicKey, payer: Keypair): Promise; export declare function createAccount(connection: Connection, solBalance?: number): Promise; export declare function createTokenAccountWithBalance(connection: Connection, owner: Keypair, tokenMint: PublicKey, tokenDecimals: number, faucetId: PublicKey, amount: number): Promise; export declare function airdropTokens(connection: Connection, feePayerAccount: Keypair, faucetPubkey: PublicKey, tokenDestinationPublicKey: PublicKey, mint: PublicKey, amount: u64): Promise; export declare function buildAirdropTokensIx(amount: u64, tokenMintPublicKey: PublicKey, destinationAccountPubkey: PublicKey, faucetPubkey: PublicKey): Promise; export declare function createTokenAccount(connection: Connection, mint: PublicKey, owner: Keypair): Promise; export declare function createTokenAccountInstrs(connection: Connection, newAccountPubkey: PublicKey, mint: PublicKey, ownerPk: PublicKey, lamports?: number): Promise; export declare function createMint(connection: Connection, payer: Keypair, decimals: number): Promise; export declare function createMints(connection: Connection, payer: Keypair, quantity: number): Promise; export declare function listMarket(connection: Connection, payer: Keypair, baseMint: PublicKey, quoteMint: PublicKey, baseLotSize: number, quoteLotSize: number, dexProgramId: PublicKey): Promise; export declare function listMarkets(connection: Connection, payer: Keypair, dexProgramId: PublicKey, mints: Token[], quoteMintPK: PublicKey): Promise; export declare function mintToTokenAccount(payer: Keypair, mint: Token, tokenAccountPk: PublicKey, balance: number): Promise; export declare function createUserTokenAccount(payer: Keypair, mint: Token, balance: number): Promise; export declare function createUserTokenAccounts(payer: Keypair, mints: Token[], balances: number[] | null): Promise; export declare function addSpotMarketToMangoGroup(client: MangoClient, payer: Keypair, mangoGroup: MangoGroup, mint: Token, spotMarketPk: PublicKey, marketIndex: number, initialPrice: number): Promise; export declare function addSpotMarketsToMangoGroup(client: MangoClient, payer: Keypair, mangoGroupPk: PublicKey, mints: Token[], spotMarketPks: PublicKey[]): Promise; export declare function getNodeBank(client: MangoClient, mangoGroup: MangoGroup, bankIndex: number): Promise; export declare function cachePrices(client: MangoClient, payer: Keypair, mangoGroup: MangoGroup, oracleIndices: number[]): Promise; export declare function cacheRootBanks(client: MangoClient, payer: Payer, mangoGroup: MangoGroup, rootBankIndices: number[]): Promise; export declare function performDeposit(client: MangoClient, payer: Payer, mangoGroup: MangoGroup, mangoAccount: MangoAccount, nodeBank: any, //Todo: Can make explicit NodeBank maybe tokenAccountPk: PublicKey, tokenIndex: number, quantity: number): Promise; export declare function getMarket(client: MangoClient, mangoGroup: MangoGroup, marketIndex: number): Promise; export declare function placeSpotOrder(client: MangoClient, payer: Payer, mangoGroup: MangoGroup, mangoAccount: MangoAccount, market: Market): Promise; //# sourceMappingURL=utils.d.ts.map