import * as React from 'react';
import { Network } from '@dcl/schemas';
import { NetworkGatewayProps, BuyWithFiatNetworkProps } from './Network';
import './BuyManaWithFiatModal.css';
import './Network.css';
declare type SelectedNetwork = BuyManaWithFiatModalNetworkProps & BuyWithFiatNetworkProps;
export declare type BuyManaWithFiatModalProps = {
    className?: string;
    message?: React.ReactNode;
    hasError?: boolean;
    open?: boolean;
    loading?: boolean;
    i18n?: BuyManaWithFiatModalI18N;
    networks: (BuyManaWithFiatModalNetworkProps & BuyWithFiatNetworkProps)[];
    onClose?: () => void;
    onInfo?: () => void;
};
export declare type BuyManaWithFiatModalNetworkProps = {
    type: Network;
    i18n?: BuyManaWithFiatModalNetworkI18N;
    gateways: Omit<NetworkGatewayProps, 'network'>[];
    onClick?: () => void;
};
export declare type BuyManaWithFiatModalI18N = {
    title: React.ReactNode;
    subtitle: React.ReactNode;
    error: React.ReactNode;
};
export declare type BuyManaWithFiatModalNetworkI18N = {
    cta: React.ReactNode;
    ctaSubtitle: React.ReactNode;
};
declare class BuyManaWithFiatModalNetwork extends React.PureComponent<BuyManaWithFiatModalNetworkProps> {
    render(): JSX.Element;
}
export declare class BuyManaWithFiatModal extends React.Component<BuyManaWithFiatModalProps> {
    state: Readonly<{
        selectedNetwork: SelectedNetwork;
    }>;
    static defaultProps: {
        className: string;
        hasError: boolean;
        loading: boolean;
        i18n: {
            title: string;
            subtitle: string;
            message: string;
            error: string;
        };
    };
    static Network: typeof BuyManaWithFiatModalNetwork;
    componentDidMount(): void;
    componentDidUpdate(): void;
    unselectNetwork: () => void;
    handleOnClose: () => void;
    handleNetworkOnClick: (network: SelectedNetwork) => void;
    render(): JSX.Element;
}
export {};
