import { Currency } from '../../commonStateTypes/amount'; import { FetchedState } from '../../commonStateTypes/common'; import { PerformanceReportKey } from './performanceHelper'; export interface PerformanceReportSummary { forecastAnnualSavings: { costSaved: number; timeSavedMinutes: number; }; subscriptionCost: number; totalCostSaved: number; totalTimeSavedMinutes: number; valueDelivered: number; valueMultiplier: number; } export interface EventGroupType { eventName: string; eventsCount: number; eventType: string; timeSavedInMinutes: number; totalCostSaved: number; } export interface AggregatedReportPersona { eventGroups: EventGroupType[]; personaName: string; personaType: string; totalCostSaved: number; totalTimeSavedMinutes: number; } export interface MonthlySummaryType { costSaved: number; month: PerformanceReportKey; timeSavedInHours: number; timeSavedMinutes: number; } export interface AggregatedReportSummary { forecastAnnualSavings: { costSaved: number; timeSavedMinutes: number; }; subscriptionCost: number; totalCostSaved: number; totalTimeSavedMinutes: number; valueDelivered: number; valueMultiplier: number; } export declare function toPerformanceReportKey(value: string): PerformanceReportKey; export type TimeSeriesKey = `from_month_${PerformanceReportKey}_to_month_${PerformanceReportKey}`; export interface DateRange { fromMonth: PerformanceReportKey; toMonth: PerformanceReportKey; } export interface AggregatedReportType extends FetchedState { currency: Currency; dateRange: DateRange; monthlySummary: MonthlySummaryType[]; personas: AggregatedReportPersona[]; summary: AggregatedReportSummary; } export interface AggregatedReportData { [key: TimeSeriesKey]: AggregatedReportType; } export interface AggregatedReportViewState { aggregatedReport: AggregatedReportData; selectedDateRange: DateRange; } export declare const initialState: AggregatedReportViewState;