import { ID } from '../../commonStateTypes/common'; import { TransactionDetailKey } from '../../view/transactionDetail/transactionDetailState'; import { JEScheduleTransactionKey } from '../jeSchedules/jeSchedulesTypes'; import { CustomerTransactionPayload } from './payloadTypes/customerTransactionPayload'; import { TransactionPayload } from './payloadTypes/transactionPayload'; import { VendorTransactionPayload, VendorTransactionWithCustomerPayload } from './payloadTypes/vendorTransactionPayload'; import { CustomerTransaction, CustomerTransactionWithCOT } from './stateTypes/customerTransaction'; import { MatchedTransaction } from './stateTypes/reconciliationTransaction'; import { ScheduleTransaction } from './stateTypes/scheduleTransaction'; import { Transaction, TransactionWithCOT } from './stateTypes/transaction'; import { VendorTransaction, VendorTransactionWithCOT, VendorTransactionWithCustomer, VendorTransactionWithCustomerWithCOT } from './stateTypes/vendorTransaction'; export type SupportedTransaction = Transaction | CustomerTransaction | VendorTransaction | VendorTransactionWithCustomer; export type SupportedTransactionWithCOT = TransactionWithCOT | CustomerTransactionWithCOT | VendorTransactionWithCOT | VendorTransactionWithCustomerWithCOT; export type SupportedTransactionPayload = TransactionPayload | CustomerTransactionPayload | VendorTransactionPayload | VendorTransactionWithCustomerPayload; export type AllSupportedTransactions = SupportedTransaction | undefined; export interface TransactionState { reconcileTransactionById: Record; scheduleTransactionById: Record; transactionById: Record; }