import { ClientAnalytics } from '@zeniai/client-analytics'; import { AllowedValueWithCode, Amount, BillPayConfig, BillStageCodeType, FetchStateAndError, FundingAccount, ID, InternationalSubConfigCodeType, PaymentAccount, PaymentDetailsSectionView, PaymentToOption, PlaidConnectionDetails, PlaidLinkTokenType, RecurringBillConfig, RecurringBillConfigLocalData, RecurringBillInstance, SameDayAchDisablementConfig, Vendor, ZeniDate } from '@zeniai/client-epic-state'; import { WindowSize } from '../../../../../context/windowSizeProvider'; import { FormSectionProps } from '../../../../formElements/common/formSection'; import { PaymentDetailsSectionFormDataKeys } from '../EditableBillDetailPageHelpers'; export declare const uniqueName: (sectionId: string, key: PaymentDetailsSectionFormDataKeys) => `${string}.internationalTransferFeeBearerPaymentMethod` | `${string}.paymentDate` | `${string}.paymentTo` | `${string}.paymentType` | `${string}.recurringPaymentDetails` | `${string}.recurringPaymentType` | `${string}.withdrawFrom` | `${string}.withdrawFromAccountingName`; export declare const formUniqueName: (formId: ID) => `${string}_form`; export type FormDataKeyUniqueNames = ReturnType; export type RecurringType = "One-time" | "Recurring"; export interface PaymentDetailsSectionProps extends FormSectionProps { allPaymentMethods: BillPayConfig[]; companyName: string; doesBillExistOnQBO: boolean; isAdmin: boolean; isBillPayCommentingEnabled: boolean; isDetectInsufficientFundsEnabled: boolean; isDraftBill: boolean; isInternationalPaymentShaVsOurEnabled: boolean; isInvoiceAttached: boolean; isInvoiceDateBeforeBookCloseDateFromSavedDetails: boolean; isMagicLinkFeatureEnabled: boolean; isNewUser: boolean; isOurDisabled: boolean; isPayNowEnabled: boolean; isRecurringBill: boolean; isRecurringBillsFeatureEnabled: boolean; isShaDisabled: boolean; isVendorNameError: boolean; paymentToOptions: PaymentToOption[]; plaidConnectionDetails: PlaidConnectionDetails; recurringBillInstances: RecurringBillInstance[]; sameDayAchDisablementConfig: SameDayAchDisablementConfig; showMarkAsPaidInfo: boolean; totalAmount: Amount; totalAmountWithFees: Amount; withdrawFromList: FundingAccount[]; analytics?: ClientAnalytics; autoFields?: string[]; billDueDate?: ZeniDate; billId?: ID; collectFromVendorEmail?: string; internationalVerificationStatus?: AllowedValueWithCode; isBillMarkedForRetry?: boolean; isCollectFromVendor?: boolean; isEligibleForRetryOBP?: boolean; isSameDayACHEnabled?: boolean; lowBalanceAdditionalInfo?: string; paymentAccount?: PaymentAccount; paymentDetails?: PaymentDetailsSectionView; paymentType?: BillPayConfig; recurringBillConfig?: RecurringBillConfigLocalData; style?: React.CSSProperties; vendor?: Vendor; vendorContactSaveStatus?: FetchStateAndError; vendorId?: ID; vendorName?: string; onAttachmentClick: (billId: ID, billStageCode: BillStageCodeType) => void; onClickAddAccount: () => void; onEstablishConnectionClick: (publicToken: ID, linkTokenType?: PlaidLinkTokenType) => void; onEstablishConnectionSuccess: () => void; onFetchLinkTokenClick: (plaidLinkTokenType: PlaidLinkTokenType, id?: ID) => void; onInternationalWireVerifyClick: () => void; onUpdatePaymentAccountStatus: (verificationStatusCode: string, paymentAccountId: ID, plaidLinkTokenType: PlaidLinkTokenType) => void; addVendorContactEmail?: (email: string, vendorId: ID) => void; } export declare const BillPaymentDetailsSection: (props: PaymentDetailsSectionProps) => import("react/jsx-runtime").JSX.Element; export declare const getWithdrawFromReadOnlyLabel: (withdrawFrom: FundingAccount, windowSize?: WindowSize) => JSX.Element; export declare const getPlaceholderForPaymentTo: (hasAccounts: boolean, paymentType?: BillPayConfig) => string; export declare const getPaymentToLabelInfo: (selectedBank?: Partial) => string; export declare const getActualPaymentMethod: (isInternationalPaymentShaVsOurEnabled: boolean, isLocalCurrencyEnabled: boolean, internationalMethods: BillPayConfig[], internationalTransferFeeBearerPaymentMethodValue?: InternationalSubConfigCodeType, fallBackpaymentMethod?: BillPayConfig, vendorCurrencyCode?: string) => BillPayConfig | undefined; export declare const getRecurringCycleInfo: (isRecurring: boolean, isPaymentOutsideZeni: boolean, recurringBillInstance: number, totalPaymentCycles: number) => string | import("react/jsx-runtime").JSX.Element; export declare const getAdditionalRecurringInfo: (windowSize: WindowSize, isRecurring: boolean, isPaymentOutsideZeni: boolean, recurringConfig?: RecurringBillConfigLocalData | RecurringBillConfig) => string | import("react/jsx-runtime").JSX.Element;