import { AppDataInfo, QuoteResults, QuoterParameters, SwapAdvancedSettings, SwapParameters, TradeParameters } from './types';
import { Signer } from '@ethersproject/abstract-signer';
import { OrderBookApi, OrderQuoteResponse } from '../order-book';
export type QuoteResultsWithSigner = {
    result: QuoteResults & {
        signer: Signer;
    };
    orderBookApi: OrderBookApi;
};
interface GetQuoteRawResult {
    isEthFlow: boolean;
    quote: OrderQuoteResponse;
    appDataInfo: AppDataInfo;
    orderBookApi: OrderBookApi;
    tradeParameters: TradeParameters;
    slippageBps: number;
    suggestedSlippageBps: number;
}
export declare function getQuoteRaw(_tradeParameters: TradeParameters, trader: QuoterParameters, advancedSettings?: SwapAdvancedSettings, _orderBookApi?: OrderBookApi): Promise<GetQuoteRawResult>;
export declare function getQuote(_tradeParameters: TradeParameters, trader: QuoterParameters, advancedSettings?: SwapAdvancedSettings, _orderBookApi?: OrderBookApi): Promise<{
    result: QuoteResults;
    orderBookApi: OrderBookApi;
}>;
export declare function getTrader(signer: Signer, swapParameters: SwapParameters): Promise<QuoterParameters>;
export declare function getQuoteWithSigner(swapParameters: SwapParameters, advancedSettings?: SwapAdvancedSettings, orderBookApi?: OrderBookApi): Promise<QuoteResultsWithSigner>;
export {};
