import React from 'react';
import { StatusClassName, ActionButtonGroupList } from '../components/PaymentResultToast';
export interface PaymentResultToastConfig {
    context: any;
    pisellos: any;
    getData: (key: string) => any;
    interaction: any;
    Toast: any;
    onToastClose?: () => void;
}
export interface PaymentResultToastParams {
    paymentStatus: string;
    orderTotalAmount: number;
    gapAmount: number;
    failureReason?: string;
    autoCloseConfig?: {
        autoClose: boolean;
        autoCloseDelay: number;
    };
    actionButtons?: ActionButtonGroupList;
}
export declare const formatCurrency: (amount: number, amountSymbol?: string) => string | number;
export declare const calculateTitle: (status: string, failureReason?: string) => string;
export declare const calculateSubtitle: (status: string, amount: number, gapAmount?: number, getData?: ((key: string) => any) | undefined) => React.ReactNode;
export declare const calculateStatusClassName: (status: string) => StatusClassName;
export declare const calculateAutoCloseConfig: (status: string, hasChangeDue: boolean) => {
    autoClose: boolean;
    autoCloseDelay: number;
    maskClosable: boolean;
};
export declare const displayPaymentResultToast: (params: PaymentResultToastParams, config: PaymentResultToastConfig) => Promise<void>;
export declare const createShowSuccessToast: (config: PaymentResultToastConfig, getActionButtons?: ((paymentStatus: string, enabledAutoPrint?: boolean, submittedOrderId?: string | number) => ActionButtonGroupList) | undefined) => (result: any) => Promise<void>;
