import { ClientAnalytics } from '@zeniai/client-analytics';
import { AddressUpdatableInfo, AllowedValueWithCode, CardPaymentSelectorView, ID, PaymentAccount, PlaidConnectionDetails, PlaidLinkTokenType } from '@zeniai/client-epic-state';
import { CardBrand } from '../../../commonSetUp/sections/commonTypes';
import { FormSectionProps } from '../../../formElements/common/formSection';
/**
 * Component & its Props
 */
export interface PaymentAccountSetupBillingAddressSectionProps extends FormSectionProps {
    analytics: ClientAnalytics;
    cardPaymentView: CardPaymentSelectorView;
    connectedAccountProvider: string;
    isValid: boolean;
    plaidConnectionDetails: PlaidConnectionDetails;
    subscriptionBillingAddressSectionId: string;
    accountStatus?: AllowedValueWithCode;
    cardSetupInProgress?: boolean;
    googleAPIKey?: ID;
    hasError?: boolean;
    paymentAccount?: PaymentAccount;
    productType?: string;
    style?: React.CSSProperties;
    subscriptionBillingAddress?: AddressUpdatableInfo;
    onEstablishConnectionClick: (publicToken: ID, linkTokenType?: PlaidLinkTokenType) => void;
    onEstablishConnectionSuccess: () => void;
    onFetchLinkTokenClick: (plaidLinkTokenType: PlaidLinkTokenType, paymentAccountId?: ID) => void;
    onUpdatePaymentAccountLoginStatus: (paymentAccountId: ID, plaidLinkTokenType: PlaidLinkTokenType) => void;
    onUpdatePaymentAccountStatus: (verificationStatusCode: string, paymentAccountId: ID, plaidLinkTokenType: PlaidLinkTokenType) => void;
    resetCardPaymentViewState: () => void;
    updateCardPaymentModalState: (isCardPaymentPopupOpen: boolean) => void;
}
export declare const getCardBrandIconUrl: (brand: string) => CardBrand;
export declare const cardPaymentMethodValues: (header: string, subHeader: string, titleText: string, protectedCardNo: string, cardPaymentView: CardPaymentSelectorView) => {
    header: string;
    subHeader: string;
    title: string;
    subtitle: string;
    status: string;
};
export declare const PaymentAccountSetupBillingAddressSection: ({ paymentAccount, plaidConnectionDetails, connectedAccountProvider, sectionId, isDisabled, hasError, isValid, style, analytics, onFetchLinkTokenClick, onEstablishConnectionClick, onUpdatePaymentAccountStatus, onUpdatePaymentAccountLoginStatus, onEstablishConnectionSuccess, updateCardPaymentModalState, cardPaymentView, resetCardPaymentViewState, cardSetupInProgress, googleAPIKey, subscriptionBillingAddress, subscriptionBillingAddressSectionId, }: PaymentAccountSetupBillingAddressSectionProps) => import("react/jsx-runtime").JSX.Element;
