import { Chain, ChainAddress, Network, PorticoBridge, TokenAddress, TokenId } from '@wormhole-foundation/connect-sdk';
import { EvmChains } from '@wormhole-foundation/connect-sdk-evm';
export declare const RELAYER_FEE_API_URL = "https://gfx.relayers.xlabs.xyz/api/v1/swap/quote";
export declare const OKU_TRADE_BASE_URL = "https://oku.trade/app";
export interface CreateOrderRequest {
    startingChainId: number;
    destinationChainId: number;
    startingToken: string;
    startingTokenAmount: string;
    destinationToken: string;
    destinationAddress: string;
    relayerFee: string;
    feeTierStart: number;
    feeTierEnd: number;
    minAmountStart: string;
    minAmountEnd: string;
    bridgeNonce: number;
    shouldWrapNative: boolean;
    shouldUnwrapNative: boolean;
    porticoAddress: string;
    destinationPorticoAddress: string;
}
export interface CreateOrderResponse {
    transactionData: string;
    transactionTarget: string;
    transactionValue: string;
    startParameters: string[];
    estimatedAmountOut: string;
}
export interface RelayerQuoteResponse {
    fee: string;
    validUntil: string;
}
export declare class PorticoApi {
    static createOrder<N extends Network, C extends EvmChains>(network: N, chain: C, receiver: ChainAddress, token: TokenAddress<C>, amount: bigint, destToken: TokenId, quote: PorticoBridge.Quote, nonce: number): Promise<CreateOrderResponse>;
    /**
     * Validates that the response from the order creation API matches the request
     * throws an error if there is a mismatch
     */
    static validateCreateOrderResponse: (response: CreateOrderResponse, request: CreateOrderRequest) => void;
    static quoteRelayer<C extends Chain>(chain: Chain, from: TokenAddress<C>, to: TokenAddress<C>): Promise<bigint>;
}
//# sourceMappingURL=api.d.ts.map