import { u64 } from '@solana/spl-token-v0';
import { DooarToken, Quote } from '../..';
import { PoolTokenCount, Percentage } from '../../dooar';
import { FeeStructure, CurveType } from '../dooar/pool/pool-types';
export type QuotePoolParams = PoolTokenCount & {
    inputToken: DooarToken;
    outputToken: DooarToken;
    inputTokenCount: u64;
    outputTokenCount: u64;
    feeStructure: FeeStructure;
    slippageTolerance: Percentage;
    amp?: u64;
};
export interface QuoteBuilder {
    buildQuote(pool: QuotePoolParams, inputAmount: u64): Quote;
}
export declare class QuoteBuilderFactory {
    static getBuilder(curveType: CurveType): QuoteBuilder | undefined;
}
