import { Interface } from '@ethersproject/abi'; import { AdapterExchangeParam, Address, SimpleExchangeParam } from '../types'; import { SwapSide } from '../constants'; import { IDexTxBuilder } from './idex'; import { SimpleExchange } from './simple-exchange'; import { IDexHelper } from '../dex-helper'; export type AugustusRFQOrderData = { nonceAndMeta: string; expiry: number; makerAsset: string; makerAssetId?: string; takerAsset: string; takerAssetId?: string; maker: Address; taker: Address; makerAmount: string; takerAmount: string; signature: string; permitMakerAsset?: string; }; type AugustusRFQOrderParam = { nonceAndMeta: string; expiry: number; makerAsset: Address; takerAsset: Address; maker: Address; taker: Address; makerAmount: string; takerAmount: string; }; type AugustusRFQOrderNFTParam = { nonceAndMeta: string; expiry: number; makerAsset: string; makerAssetId: string; takerAsset: string; takerAssetId: string; maker: Address; taker: Address; makerAmount: string; takerAmount: string; }; type FillOrderParam = [order: AugustusRFQOrderParam, signature: string]; type FillOrderNFTParam = [order: AugustusRFQOrderNFTParam, signature: string]; type AugustusRFQParam = FillOrderParam | FillOrderNFTParam; export declare class AugustusRFQOrder extends SimpleExchange implements IDexTxBuilder { static dexKeys: string[]; rfqInterface: Interface; needWrapNative: boolean; constructor(dexHelper: IDexHelper); getAdapterParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: AugustusRFQOrderData, side: SwapSide): AdapterExchangeParam; getSimpleParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: AugustusRFQOrderData, side: SwapSide): Promise; } export {};