import { Provider } from 'near-api-js/lib/providers';
import { Amm, CreateSwapRouteInstructionsParams, Quote, QuoteParams, SwapParams } from '../common/types';
import { PerkLiquidityPool } from './types';
import { PerkLiquidity as PerkLiquiditySDK, Position } from '@perk/concentrated-liquidity';
declare class PerkLiquidity implements Amm {
    id: string;
    contractId: string;
    instanceId: number;
    label: 'Perk';
    pool: PerkLiquidityPool;
    positions: Position[];
    perkLiquiditySDK: PerkLiquiditySDK;
    constructor(pool: PerkLiquidityPool, perkLiquiditySDK: PerkLiquiditySDK);
    static loadPools({ provider, }: {
        provider: Provider;
    }): Promise<PerkLiquidity[]>;
    getQuote(quoteParams: QuoteParams): Quote;
    getPromiseForUpdate(): Promise<void>;
    createSwapInstructions(params: SwapParams): Promise<import("@near-wallet-selector/core").Transaction[]>;
    createSwapRouteInstructions(params: CreateSwapRouteInstructionsParams): Promise<import("@near-wallet-selector/core").Transaction[]>;
    get reserveTokenMints(): string[];
}
export { PerkLiquidity };
