import { FormattedQuoteResponse } from '../hooks/apis/common/quote/types';

export type TrackOrderStatus = {
    status: "success" | "failed";
    from_token: string;
    to_token: string;
    from_chain: number;
    to_chain: number;
    routingMode: "auto-same-chain" | "auto-cross-chain" | "manual-same-chain" | "manual-cross-chain" | (string & {});
    flowType: "bundled" | "regular";
    slippage?: string | number;
    suggestedClientSlippage?: boolean;
};
export declare function trackOrderStatus(data: TrackOrderStatus): void;
export type OnConnectWallet = {
    wallet_type: "EVM" | "SVM";
    wallet_name: string;
    total_balance: number;
};
export declare const onConnectWallet: (data: OnConnectWallet) => void;
export type OnRequestQuote = {
    source_chain_id: number;
    destination_chain_id: number;
    source_token_symbol: string;
    destination_token_symbol: string;
    input_amount: number | undefined;
};
export declare const onRequestQuote: (data: OnRequestQuote) => void;
export type OnQuoteResult = {
    status: "success" | "no_quotes_returned" | "error";
    source_chain_id: number | undefined;
    destination_chain_id: number | undefined;
    source_token_symbol: string | undefined;
    destination_token_symbol: string | undefined;
    input_amount: number | undefined;
    quote_count: number;
    fastest_option: FormattedQuoteResponse | undefined;
    bestoutput_option: FormattedQuoteResponse | undefined;
    default_selected: FormattedQuoteResponse | undefined;
};
export declare const onQuoteResult: (data: OnQuoteResult) => void;
export declare const onViewRouteComparison: () => void;
export type OnSetCustomRecipient = {
    enabled: boolean;
};
export declare const onSetCustomRecipient: (data: OnSetCustomRecipient) => void;
export type OnToggleRefuel = {
    enabled: boolean;
};
export declare const onToggleRefuel: (data: OnToggleRefuel) => void;
export type OnSelectRoute = {
    provider_name: string;
    source_chain_id: number;
    destination_chain_id: number;
    source_token_symbol: string;
    destination_token_symbol: string;
    input_amount_usd: number;
    estimated_output_amount: number;
    estimated_time: number;
    provider_best_output: number;
    provider_name_best_output?: string;
    provider_best_time: number;
};
export declare const onSelectRoute: (data: OnSelectRoute) => void;
export type OnTokenApproved = {
    token_symbol: string;
    chain_id: number;
    contract: "gateway" | "permit2";
};
export declare const onTokenApproved: (data: OnTokenApproved) => void;
export type OnViewSwapReviewScreen = {
    provider_name: string;
    source_chain_id: number;
    destination_chain_id: number;
    source_token_symbol: string;
    destination_token_symbol: string;
    input_amount_usd: number;
    estimated_output_amount: number;
    estimated_time: number;
};
export declare const onViewSwapReviewScreen: (data: OnViewSwapReviewScreen) => void;
export type OnInitiateSwap = {
    request_hash: string;
    provider_name: string;
    source_chain_id: number;
    destination_chain_id: number;
    has_refuel: boolean;
    has_custom_recipient: boolean;
    source_token_symbol: string;
    destination_token_symbol: string;
    input_amount_usd: number;
};
export declare const onInitiateSwap: (data: OnInitiateSwap) => void;
export type OnCompleteSwap = {
    status: "success" | "failed";
    request_hash: string;
    provider_name: string;
    actual_time_seconds: number;
    actual_output_amount: number;
    estimated_time_seconds: number;
    estimated_output_amount: number;
};
export declare const onCompleteSwap: (data: OnCompleteSwap) => void;
