import { ClientAnalytics } from '@zeniai/client-analytics';
import { AuthParams, BillPaySetupApproverView, BillPaySetupView, CompanyOfficerType, FilePayload, ID, PlaidLinkTokenType, ZeniAccountsPromoConfig } from '@zeniai/client-epic-state';
import { SetUpAccountSectionFormData } from '../../../commonSetUp/sections/spendManagementSetupAccountSection/SpendMgmtSetupAccountSection';
import { DisableMode } from '../../../formElements/common/common';
declare const billPayAccountSectionId = "billPayAccount";
export interface Props {
    accountsPromoConfig: ZeniAccountsPromoConfig;
    analytics: ClientAnalytics;
    authParams: AuthParams;
    billpayApprovalView: BillPaySetupApproverView;
    billPaySetupView: BillPaySetupView;
    connectedAccountProvider: string;
    filesEndPoint: string;
    isAccountsEnabled: boolean;
    isLocalCurrencyEnabled: boolean;
    meetingUrl: string;
    showIntlWiseWidget: boolean;
    isDisabled?: DisableMode;
    onBackClick: () => void;
    onEnableBillPayClick: () => void;
    onEnableBillPaySuccess: () => void;
    onEstablishConnectionClick: (publicToken: ID, linkTokenType?: PlaidLinkTokenType) => void;
    onEstablishConnectionSuccess: () => void;
    onFetchLinkTokenClick: (plaidLinkTokenType: PlaidLinkTokenType, paymentAccountId?: ID) => void;
    onNavigateToDashboard: () => void;
    onSignUpClick: () => void;
    onUpdateAccountClick: (accountId: ID, paymentAccountId: ID, accountType: string) => void;
    onUpdatePaymentAccountLoginStatus: (paymentAccountId: ID, plaidLinkTokenType: PlaidLinkTokenType) => void;
    onUpdatePaymentAccountStatus: (verificationStatusCode: string, paymentAccountId: ID, plaidLinkTokenType: PlaidLinkTokenType) => void;
    onUpdatePrimaryFundingAccount: (accountId: ID, accountType: string) => void;
    onBusinessVerificationSectionClick?: () => void;
    onClickMenuIcon?: () => void;
    onCompanyOfficerUpdated?: (officerType: CompanyOfficerType, fileIds: ID[]) => void;
    onDeleteFile?: (fileId: ID) => void;
    onEditFileName?: (fileId: ID, name: string) => void;
    onInternationPaymentSetUpClick?: () => void;
    onSendForVerificationClick?: (officerType: CompanyOfficerType) => void;
    onSetupACHPaymentsSectionClick?: () => void;
    onSetupApprovalRulesSectionClick?: () => void;
    updateFilesEntity?: (files: FilePayload[]) => void;
}
declare const BillPaySetUpPage: ({ billPaySetupView, isDisabled, billpayApprovalView, meetingUrl, showIntlWiseWidget, connectedAccountProvider, isAccountsEnabled, isLocalCurrencyEnabled, analytics, filesEndPoint, authParams, accountsPromoConfig, onBackClick, onBusinessVerificationSectionClick, onSetupApprovalRulesSectionClick, onFetchLinkTokenClick, onEstablishConnectionClick, onEstablishConnectionSuccess, onUpdatePrimaryFundingAccount, onUpdateAccountClick, onUpdatePaymentAccountStatus, onUpdatePaymentAccountLoginStatus, onEnableBillPayClick, onEnableBillPaySuccess, onClickMenuIcon, onInternationPaymentSetUpClick, onEditFileName, onDeleteFile, updateFilesEntity, onCompanyOfficerUpdated, onSendForVerificationClick, onSignUpClick, }: Props) => import("react/jsx-runtime").JSX.Element;
/**
 * Form Data Type
 */
export interface FormData {
    [billPayAccountSectionId]: SetUpAccountSectionFormData;
}
export declare const uniqueName: (sectionId: ID) => `${string}_form`;
export default BillPaySetUpPage;
