import { type Idl } from '@coral-xyz/anchor'; import { Blockhash, Connection, PublicKey, Transaction, VersionedTransaction, VersionedTransactionResponse } from '@solana/web3.js'; import { ParseErrorParam, TransactionError } from './errors'; import { JitoResponse } from './poll'; export type BROADCAST_MODE = 'priorityFees' | 'mixed' | 'jito'; interface IHandleSendTransactionOptions { connection: Connection; signedTransaction: VersionedTransaction | Transaction; blockhash: Blockhash; lastValidBlockHeight: number; skipPreflight?: boolean; idl?: Idl; idlProgramId?: PublicKey; minContextSlot?: number; broadcastMode?: BROADCAST_MODE; jitoTipTx?: Transaction | VersionedTransaction; jitoProxyUrl?: string; debug?: boolean; } export declare function getSignature(transaction: Transaction | VersionedTransaction): string; interface IHandleSendTransactionError { error: TransactionError; transactionResponse?: VersionedTransactionResponse; txid?: string; } interface IHandleSendTransactionResponse { transactionResponse: VersionedTransactionResponse; txid: string; jitoResponse: JitoResponse | null; } export declare const handleSendTransaction: ({ connection, signedTransaction, blockhash, lastValidBlockHeight, idl, skipPreflight, idlProgramId, minContextSlot, broadcastMode, jitoTipTx, jitoProxyUrl, debug, }: IHandleSendTransactionOptions) => Promise; export declare const parseErrorWithIdl: (errorParams: ParseErrorParam, txid?: string, idl?: Idl, idlProgramId?: PublicKey) => TransactionError; export declare const getRandomTipAccount: () => PublicKey; export declare function createJitoTipTx({ payer, lamports, blockhash, lastValidBlockHeight, }: { payer: PublicKey; lamports: string; blockhash: Blockhash; lastValidBlockHeight: number; }): Transaction; export {};