import { NestedAccountHierarchyForReport } from '../../../commonStateTypes/accountView/nestedAccountID'; import { Amount } from '../../../commonStateTypes/amount'; import { COABalanceGroupedByPeriod } from '../../../commonStateTypes/coaBalance/coaBalance'; import { FetchState, FetchStateAndError, ID } from '../../../commonStateTypes/common'; import { EntityOrder } from '../../../commonStateTypes/selectorTypes/entityOrder'; import { TimeframeTick, TimeframeTickWithMetaData } from '../../../commonStateTypes/timeframeTick'; import { SelectorView } from '../../../commonStateTypes/viewAndReport/viewAndReport'; import { AccountBase } from '../../../entity/account/accountState'; import { ScheduleTypes } from '../../../entity/jeSchedules/jeSchedulesTypes'; import { RootState } from '../../../rootStateTypes'; import { JEScheduleWithBalance, JEScheduledTransactionWithBalance } from './scheduleListBalanceTypes'; import { ScheduleListLocalData, ScheduleListUIState } from './scheduleListState'; export interface ScheduleListReport extends SelectorView { allTimeframeTicks: TimeframeTickWithMetaData[]; downloadUIState: FetchStateAndError; jeScheduledTransactions: JEScheduledTransactionWithBalance[]; jeScheduleOrder: EntityOrder; scheduleListAccounts: AccountBase[]; scheduleListLocalData: ScheduleListLocalData; scheduleListNestedAccountHierarchy: NestedAccountHierarchyForReport[]; scheduleType: ScheduleTypes; selectedCategoryId: ID; selectedTimeframe: TimeframeTick; totalAmount: Amount; totalBalanceTimeframeTicks: COABalanceGroupedByPeriod; totalRunningBalances: Amount; uiState: ScheduleListUIState; selectedScheduledId?: ID; } export interface ScheduleAccruedListReport extends SelectorView { allTimeframeTicks: TimeframeTickWithMetaData[]; downloadUIState: FetchStateAndError; jeAccruedSchedules: JEScheduleWithBalance[]; jeScheduleOrder: EntityOrder; scheduleListAccounts: AccountBase[]; scheduleListLocalData: ScheduleListLocalData; scheduleListNestedAccountHierarchy: NestedAccountHierarchyForReport[]; scheduleType: ScheduleTypes; selectedCategoryId: ID; selectedTimeframe: TimeframeTick; totalAmount: Amount; totalBalanceTimeframeTicks: COABalanceGroupedByPeriod; totalRunningBalances: Amount; uiState: ScheduleListUIState; selectedAccruedScheduleId?: ID; } export declare const getScheduleListReport: (state: RootState, scheduleType: ScheduleTypes) => ScheduleListReport; export declare const getAccruedScheduleListReport: (state: RootState, scheduleType: ScheduleTypes) => ScheduleAccruedListReport; export declare const getFetchStateForScheduleAccountList: (state: RootState) => FetchState; export declare const getFetchStateForScheduleListByType: (state: RootState, scheduleType: ScheduleTypes) => FetchState;