import type { StatusClassName } from './components/PaymentResultToast';
export declare type PaymentResultKind = 'paid' | 'partially_paid' | 'deposit_paid' | 'failed' | 'wallet-pass-redemption-failed';
export interface PaymentResultPreset {
    titleKey: string;
    fallbackTitle: string;
    subtitleMode: 'paid' | 'partial' | 'deposit' | 'amount_due' | 'wallet_pass_partial';
    colorClass: 'paid' | 'partially-paid' | 'amount-due';
    statusClassName: StatusClassName;
    autoClose: boolean;
    maskClosable: boolean;
}
export declare const paymentResultPresets: Record<PaymentResultKind, PaymentResultPreset>;
export declare function getPaymentResultKind(paymentStatus?: string, resultKind?: PaymentResultKind): PaymentResultKind | null;
export declare function getPaymentResultPreset(paymentStatus?: string, resultKind?: PaymentResultKind): PaymentResultPreset;
export interface PaymentResultFlowInput {
    paymentStatus?: string;
    resultKind?: PaymentResultKind;
    orderTotalAmount?: string | number;
    gapAmount?: string | number;
    depositAmount?: string | number;
    changeGivenAmount?: string | number;
    failureReason?: string;
    isModalMode?: boolean;
}
export declare function buildPaymentResultToastParams({ paymentStatus, resultKind, orderTotalAmount, gapAmount, depositAmount, changeGivenAmount, failureReason, isModalMode, }: PaymentResultFlowInput): {
    resultKind: PaymentResultKind;
    statusClassName: StatusClassName;
    paymentStatus: string;
    orderTotalAmount: number;
    depositAmount: number;
    changeGivenAmount: number;
    gapAmount: number;
    failureReason: string | undefined;
    autoCloseConfig: {
        autoClose: boolean;
        autoCloseDelay: number;
        maskClosable: boolean;
    };
} | null;
