export interface OdosSwapRequest {
    chainId: number;
    inputTokens: {
        tokenAddress: string;
        amount: string;
    }[];
    outputTokens: {
        tokenAddress: string;
        proportion: number;
    }[];
    userAddr: string;
    gasPrice?: number;
    slippageLimitPercent?: number;
    sourceBlacklist?: Array<string>;
    sourceWhitelist?: Array<string>;
    simulate?: boolean;
    pathVizImage?: string;
    pathVizImageConfig?: {
        linkColors?: string[];
        nodeColor?: string;
        nodeTextColor?: string;
        legendTextColor?: string;
        width: number;
        height: number;
    };
    disableRFQs?: boolean;
    referralCode?: string;
    compact?: boolean;
    likeAsset?: boolean;
}
export interface OdosSwapData {
    blockNumber: number;
    gasEstimate: number;
    gasEstimateValue: number;
    inputTokens: {
        tokenAddress: string;
        amount: number;
    }[];
    outputTokens: {
        tokenAddress: string;
        amount: number;
    }[];
    netOutValues: Array<number>;
    outValues: Array<string>;
    transaction: {
        gas: number;
        gasPrice: number;
        chainId: number;
        value: string;
        to: string;
        data: string;
        nonce: number;
    };
    simulation: {
        isSuccess: boolean;
        amountsOut: Array<number>;
        simGasUsed: number;
        gasEstimate: number;
        simulationError: string;
    };
}
export declare function callOdosAPI(chainId: number, requestBody: OdosSwapRequest): Promise<any>;
export declare const getOdosPriceForToken: (chainId: number, tokenAddress: string) => Promise<number | undefined>;
