import { SwapPath } from './types'; import * as common from '@protocolink/common'; import * as core from '@protocolink/core'; export type SwapTokenLogicTokenList = common.Token[]; export type SwapTokenLogicParams = core.TokenToTokenExactInParams<{ slippage?: number; }>; export type SwapTokenLogicFields = core.TokenToTokenExactInFields<{ paths: SwapPath[]; slippage?: number; }>; export type SwapTokenLogicOptions = Pick; export declare class SwapTokenLogic extends core.Logic implements core.LogicTokenListInterface, core.LogicOracleInterface, core.LogicBuilderInterface { static id: string; static protocolId: string; static readonly supportedChainIds: number[]; getTokenList(): Promise; quote(params: SwapTokenLogicParams): Promise<{ input: common.TokenAmount; output: common.TokenAmount; paths: SwapPath[]; }>; build(fields: SwapTokenLogicFields, options: SwapTokenLogicOptions): Promise<{ to: string; data: string; inputs: core.DataType.InputStruct[]; wrapMode: number; approveTo: string; callback: string; }>; }