import { AccountGroupReport, AccountGroupType, AccountReport, AccountType, COABalance, COABalancesOrder, COABalancesSlice, FluxAnalysisSectionType } from '@zeniai/client-epic-state'; type SectionType = AccountType | AccountGroupType | FluxAnalysisSectionType; export default SectionType; interface Selector { acBalanceSelector: (account: AccountReport) => COABalancesSlice | undefined; acGroupBalanceSelector: (accountGroup: AccountGroupReport) => COABalancesSlice | undefined; compactedAccountGroupsSelector: (accountGroups: AccountGroupReport[]) => AccountGroupReport[]; compactedAccountsSelector: (accountGroup: AccountGroupReport) => AccountReport[]; compactedAccountsSelectorVariant: (accounts: AccountReport[]) => AccountReport[]; } export type Filter = "no_filter" | "filter_account_balances" | "filter_account_and_account_group_balances" | "filter_account_and_class_balances"; export type AccountNilBalancesFilter = "off" | "filter_actual_nil_balances" | "filter_forecast_nil_balances" | "filter_actual_forecast_nil_balances"; export type AccountGroupNilBalancesFilter = "off" | "filter_actual_nil_account_group_balances" | "filter_forecast_nil_account_group_balances" | "filter_actual_forecast_nil_account_group_balances" | "filter_actual_forecast_empty_account_group_balances"; export declare function getSelectorApplyingFilters(sectionType: SectionType, filter: Filter, accountNilBalancesFilter: AccountNilBalancesFilter, accountGroupNilBalancesFilter: AccountGroupNilBalancesFilter): Selector; export declare function hasNonZeroBalance(coaBalances?: COABalance[]): boolean; export declare function hasNonZeroForecastBalance(coaBalances?: COABalance[]): boolean; export declare function hasNonZeroForecastAndActualBalance(coaBalances?: COABalance[]): boolean; /** * Get the balances array (report period + additional balances) from balances slice * @param balancesSlice balances slice * @param numOfBalances expected number of balances in the output if the input balanceSlice is null. Default -1. */ export declare function getBalances(balancesSlice: COABalancesSlice | undefined, orderBy?: COABalancesOrder, numOfBalances?: number, includeAdditionalBalances?: boolean): { balances: (COABalance | null)[]; thisPeriodIndex: number; }; /** * Get the balances array (report period + additional balances+ total balance) from balances slice * @param balancesSlice balances slice * @param numOfBalances expected number of balances in the output if the input balanceSlice is null. Default -1. */ export declare function getBalancesWithTotals(balancesSlice: COABalancesSlice | undefined, orderBy?: COABalancesOrder, numOfBalances?: number, includeAdditionalBalances?: boolean): { balances: (COABalance | null)[]; thisPeriodIndex: number; }; /** * * @param balances * @param displayOrder * @returns this function based on the display order will reverse the timeframe default balances * only when the display order is set to descending. */ export declare function getTimeframeBalancesInOrder(balances: COABalance[], displayOrder: COABalancesOrder): COABalance[]; export declare function nullForEmpty(balances: COABalance[], numOfBalances: number): (COABalance | null)[];