import { StatusCodeWithLabelPayload } from '../../../commonPayloadTypes/statusPayload'; import { JEAccruedSchedule } from '../../../entity/jeSchedules/jeSchedulesSelector'; import { JEScheduleKey } from '../../../entity/jeSchedules/jeSchedulesTypes'; import { TransactionIDPayload } from '../../../entity/transaction/payloadTypes/transactionIDPayload'; import { TransactionPayload } from '../../../entity/transaction/payloadTypes/transactionPayload'; import { VendorBasePayload } from '../../../entity/vendor/vendorPayload'; import { Vendor, VendorState } from '../../../entity/vendor/vendorState'; import { ZeniAPIResponse } from '../../../responsePayload'; import { RootState } from '../../../rootStateTypes'; import { SaveJESchedulePayload } from '../scheduleDetailView/scheduleDetailPayload'; import { JEScheduleDetailsLocalData } from '../scheduleDetailView/scheduleDetailState'; import { ScheduleDetailsLocalDataAccruedExpenses } from './scheduleAccruedDetailState'; export interface JEAccruedSchedulePayload { balance: number | null; currency_code: string; currency_symbol: string; end_date: string | null; je_credit_account_id: string | null; je_credit_accounting_class_id: string | null; je_debit_account_id: string | null; je_debit_accounting_class_id: string | null; je_schedule_type: string; memo: string; period: number | null; posting_date: number | null; recurring_amount: number; start_date: string | null; status: StatusCodeWithLabelPayload; vendor: VendorBasePayload; is_deleted?: boolean; other_attributes?: { starting_balance: number; }; } export interface SaveScheduleDetailPayload { je_schedules: JEAccruedSchedulePayload[]; scheduled_journal_entries: SaveJESchedulePayload[]; } export interface FetchRecommendedBillExpenseTransactionQuery { account_name: string; accrued_balance: number; amount: number; class_name: string; end_date: string; start_date: string; vendor_id: string; } export interface FetchRecommendedBillExpenseTransactionPayload { transactions: TransactionPayload[]; } export type FetchRecommendedBillExpenseTransactionResponse = ZeniAPIResponse; export declare const mapVendorToVendorPayload: (payload: Vendor) => VendorBasePayload; export declare const mapJEScheduleAccruedLocalDataToScheduleDetailPayload: (jeScheduleDetails: JEScheduleDetailsLocalData[], jeScheduleTransactionState: JEAccruedSchedule, selectedJEAccruedLinkRowIndex: number | undefined, reversalTransactionDetails: TransactionIDPayload | undefined, isDelete?: boolean) => SaveJESchedulePayload[]; export declare const mapJEScheduleLocalDataToScheduleDetailPayloadForCancel: (jeScheduleDetails: JEScheduleDetailsLocalData[], jeScheduleTransactionState: JEAccruedSchedule, rowId?: number) => SaveJESchedulePayload[]; export declare const mapNewJEScheduleLocalDataToScheduleDetailPayload: (scheduleDetailsLocalDataAccruedExpenses: ScheduleDetailsLocalDataAccruedExpenses) => SaveJESchedulePayload[]; export declare const mapNewAccruedExpenseJEScheduleTransactionToPayload: (scheduleDetailsLocalDataAccruedExpenses: ScheduleDetailsLocalDataAccruedExpenses, balanceSheetClassId: string | undefined) => JEAccruedSchedulePayload; export declare const mapAccruedExpenseJEScheduleTransactionToPayload: (jeScheduleAccruedExpense: JEAccruedSchedule, vendorState: VendorState, scheduleDetailsLocalDataAccruedExpenses: ScheduleDetailsLocalDataAccruedExpenses, balanceSheetClassId: string | undefined, isDelete?: boolean) => JEAccruedSchedulePayload; export declare const prepareNewScheduleAccruedDetailPayload: (state: RootState, scheduleDetailsLocalDataAccruedExpenses: ScheduleDetailsLocalDataAccruedExpenses) => SaveScheduleDetailPayload; export declare const prepareScheduleAccruedDetailPayload: (state: RootState, scheduleDetailsLocalDataAccruedExpenses: ScheduleDetailsLocalDataAccruedExpenses, selectedJEScheduleKey: JEScheduleKey, isDelete?: boolean) => SaveScheduleDetailPayload; export declare const prepareScheduleAccruedDetailForCancelPayload: (state: RootState, scheduleDetailsLocalDataAccruedExpenses: ScheduleDetailsLocalDataAccruedExpenses, selectedJEScheduleKey: JEScheduleKey, rowId?: number) => SaveScheduleDetailPayload; export declare const capitalizeString: (text: string) => string;