import { Currency } from '../../commonStateTypes/amount'; import { NestedClassHierarchyForReport, NestedClassID } from '../../commonStateTypes/classesView/nestedClassID'; import { AccountViewMode, FetchStateAndError, ID } from '../../commonStateTypes/common'; import { Report } from '../../commonStateTypes/viewAndReport/viewAndReport'; export type ClassViewLayout = 'vertical' | 'horizontal'; export interface ProfitAndLossClassesViewUIState { accountViewMode: AccountViewMode; classesToFilterOut: NestedClassID[]; classViewLayout: ClassViewLayout; nodeCollapseState: Record; scrollPosition: { scrollTop: number; scrollLeft?: number; } | undefined; } export interface ProfitAndLossClassesViewState extends Report { classHierarchy: NestedClassHierarchyForReport[]; fetchState: { month: FetchStateAndError; quarter: FetchStateAndError; year: FetchStateAndError; }; uiState: ProfitAndLossClassesViewUIState; currency?: Currency; }