import { ClientAnalytics } from '@zeniai/client-analytics'; import { BillStageCodeType, EditBillDetailSelectorView, EntityAutoCompleteView, ID, PaymentToOption, PlaidLinkTokenType, SameDayAchDisablementConfig, TenantView, TransactionWithAccountAndClassLine, UncategorizedAccounts } from '@zeniai/client-epic-state'; import { RequestToOpenThreadType } from '../../../commentsAndNotes/utils/ThreadsProvider'; import { AutoCompleteActions, AutoCompleteData } from '../../../common/autoComplete/autoCompleteProps'; import { LineItemsSectionFormData, PaymentDetailsSectionFormData, VendorDetailsFormData, WhatForSectionFormData, whosItForSectionId } from './EditableBillDetailPageHelpers'; export type PageType = "new_bill" | "edit_bill" | "view_bill"; declare const whatForSection = "whatFor"; declare const lineItems = "lineItems"; declare const paymentDetails = "paymentDetails"; export interface EditableBillDetailPageProps { analytics: ClientAnalytics; billDetails: EditBillDetailSelectorView; currentTenant: TenantView; customerSearchAutoCompleteActions: AutoCompleteActions; customerSearchAutoCompleteData: AutoCompleteData; isAccountingClassesEnabled: boolean; isAdmin: boolean; isBillPayCommentingEnabled: boolean; isDetectInsufficientFundsEnabled: boolean; isInternationalPaymentShaVsOurEnabled: boolean; isLocalCurrencyEnabled: boolean; isMagicLinkEnabled: boolean; isOurDisabled: boolean; isRecurringBillsFeatureEnabled: boolean; isShaDisabled: boolean; isVendorRecommendationEnabled: boolean; sameDayAchDisablementConfig: SameDayAchDisablementConfig; showMarkAsPaidInfo: boolean; uncategorizedAccounts: UncategorizedAccounts; billId?: ID; initialOpenThreadRequest?: RequestToOpenThreadType; isAiCfoAccessEnabled?: boolean; isNewUser?: boolean; chooseNewVendor: (vendorToBeCreated?: string) => void; clearBillPayReviewLocalState: () => void; discardBillDetailsFromLocalStore: ({ billId }: { billId?: ID; }) => void; editVendor: (vendorId: ID) => void; onAttachmentClick: (billId: ID, billStageCode: BillStageCodeType) => void; onEstablishConnectionClick: (publicToken: ID, linkTokenType?: PlaidLinkTokenType) => void; onEstablishConnectionSuccess: () => void; onFetchLinkTokenClick: (plaidLinkTokenType: PlaidLinkTokenType, id?: ID) => void; onInternationalWireVerifyClick: () => void; onSaveChangesToLocalStore: (updatedBill: FormData, lineIndex: number, entityAutoCompleteData: EntityAutoCompleteView, sendPaymentToAccount?: PaymentToOption, paymentDate?: Date, billId?: ID) => void; onUpdatePaymentAccountStatus: (verificationStatusCode: string, paymentAccountId: ID, plaidLinkTokenType: PlaidLinkTokenType) => void; onVendorSelected: (id?: ID) => void; redirectToACHScreen: (vendorId: ID) => void; redirectToBillDetailPage: () => void; redirectToBillsScreen: () => void; redirectToInternationalScreen: (vendorId: ID) => void; redirectToWireScreen: (vendorId: ID) => void; reviewBillDetails: () => void; saveBillDetails: () => void; updateBillDetailSaveBillCode: () => void; updateShowAutofill: (autoFill: boolean) => void; addVendorContactEmail?: (email: string, vendorId: ID) => void; deleteBill?: () => void; onAskAiCfoClick?: () => void; onBackClick?: () => void; onSkipAutofill?: (autoFill: boolean) => void; } declare const EditableBillDetailPage: (props: EditableBillDetailPageProps) => import("react/jsx-runtime").JSX.Element; export default EditableBillDetailPage; export declare const uniqueName: (sectionId: ID) => `${string}_form`; export declare const getRecipientTotalAmount: (billDetailsLines: Record>) => { amount: number; currencyCode: string; currencySymbol: string; }; export interface FormData { [lineItems]: LineItemsSectionFormData[]; [whatForSection]: WhatForSectionFormData; [whosItForSectionId]: VendorDetailsFormData; [paymentDetails]?: PaymentDetailsSectionFormData; }