import type { Address, ParaSwapVersionUnion } from '../../../types';
import { Domain } from '../../common/orders/buildOrderData';
declare const Order: {
    name: string;
    type: string;
}[];
export interface BuildOrderDataInput {
    chainId: number;
    verifyingContract: Address;
    nonce?: number;
    expiry: number;
    makerAsset: Address;
    takerAsset: Address;
    makerAmount: string;
    takerAmount: string;
    maker: Address;
    /** @description actual user taker which will go into nonceAndMeta */
    taker?: Address;
    /** @description contract executor (Augustus or similar) that is allowed to execute the order, gois in Order.taker */
    contractTaker?: Address;
    AugustusAddress: Address;
    AppVersion: ParaSwapVersionUnion;
}
export type SignableOrderData = {
    types: {
        Order: typeof Order;
    };
    domain: Domain;
    data: OrderData;
};
export type OrderData = {
    nonceAndMeta: string;
    expiry: number;
    makerAsset: string;
    takerAsset: string;
    maker: string;
    taker: string;
    makerAmount: string;
    takerAmount: string;
};
export declare function buildOrderData({ chainId, verifyingContract, nonce, expiry, makerAsset, takerAsset, makerAmount, takerAmount, maker, AugustusAddress, taker: takerInNonce, contractTaker, AppVersion, }: BuildOrderDataInput): SignableOrderData;
export {};
//# sourceMappingURL=buildOrderData.d.ts.map