import { ID } from '../../../commonStateTypes/common'; import { ZeniDate } from '../../../zeniDayJS'; import { BillPaymentStatusCodeType, BillStage, BillStatusCodeType } from '../billTransaction/billTransactionState'; export declare const toRecurringBillFrequency: (v: string) => "weekly" | "biweekly" | "monthly" | "quarterly"; export declare const toRecurringBillFrequencyStrict: (v?: string) => "weekly" | "biweekly" | "monthly" | "quarterly" | undefined; export type RecurringBillFrequency = NonNullable>; export interface RecurringBillPaymentStatus { name: string; code?: BillPaymentStatusCodeType; } export interface RecurringBillStatus { code: BillStatusCodeType; name: string; } export interface RecurringBillConfig { endDate: ZeniDate; frequency: RecurringBillFrequency; id: ID; isActive: boolean; isApprovalRequired: boolean; startDate: ZeniDate; syncToken: string; totalPaymentCycles: number; } export interface RecurringBillData { instance: number; isDeleted: boolean; paymentDate: ZeniDate; recipientTotalAmount: number; recurringBillConfigId: ID; stage: BillStage; totalAmount: number; vendorReceiveDate: ZeniDate; vendorReceiveDateNotes: string; billPaymentStatus?: RecurringBillPaymentStatus; billStatus?: RecurringBillStatus; transactionId?: ID; } export interface RecurringBillDetail { recurringBillConfig: RecurringBillConfig; recurringBillInstances: RecurringBillData[]; } export interface RecurringBillState { recurringBillDetailByConfigId: Record; }