import { GetMerchantDetailsTax, GetMobileMoneyResponse, PaymentResponseData } from '../../types/types';
import { PageLoader } from '../shared/page-loader';
import { PaymentWarning } from '../shared/payment-warning';

type MobileMoneyValueType = {
    code: string;
    phoneNumber: string;
    otp?: string;
};
type Props = {
    container: HTMLElement;
    onAction: (_evt: Event) => (_val: MobileMoneyValueType) => void;
    switchScreen: (val: number) => void;
    ref: string;
    merchantKey: string;
    rdtCode?: string;
    url?: string;
    currency: string;
    amount: number;
    totalAmount: number;
    localCurrency?: string;
    restartTransactionProcess: () => void;
    merchantDetails: GetMerchantDetailsTax;
    countryCode?: string;
};
export declare class MobileMoneyForm {
    container: HTMLElement | Element;
    payment: PaymentResponseData;
    warningError: PaymentWarning;
    pageLoader: PageLoader;
    localCurrency?: string;
    amount: number;
    totalAmount: number;
    private onAction;
    private switchScreen;
    private merchantKey;
    private rdtCode?;
    private url?;
    private currency;
    private restartTransactionProcess;
    private merchantDetails;
    countryCode?: string;
    constructor(props: Props);
    private validateForm;
    attachListener(): void;
    private displayButtonText;
    renderComponent(values: GetMobileMoneyResponse): void;
    renderContent(): void;
    render(): string;
}
export {};
