import { EventEmitter, OnInit, OnDestroy } from '@angular/core';
import { TrendData } from '../../../services/ai-instrumentation.service';
import { GlobalFilterState } from '../../../interfaces/analytics-preferences.interface';
import { TimeSeriesConfig } from '../../charts/time-series-chart.component';
import { BaseAngularComponent } from '@memberjunction/ng-base-types';
import * as i0 from "@angular/core";
interface KpiDisplayCard {
    Label: string;
    Value: string;
    SparklineData: number[];
    DeltaPercent: number;
    DeltaDirection: 'up' | 'down' | 'stable';
    IsImprovement: boolean;
    BorderColor: string;
}
interface TopConsumer {
    Rank: number;
    Type: 'agent' | 'prompt';
    Name: string;
    Cost: number;
    Proportion: number;
}
interface ErrorHotspot {
    Source: string;
    ErrorMessage: string;
    Count: number;
}
export declare class AnalyticsExecutiveSummaryComponent extends BaseAngularComponent implements OnInit, OnDestroy {
    private _timeRange;
    set TimeRange(value: string);
    get TimeRange(): string;
    Filters: GlobalFilterState;
    TimeRangeChange: EventEmitter<string>;
    FiltersChange: EventEmitter<GlobalFilterState>;
    SectionNavigate: EventEmitter<string>;
    private instrumentationService;
    private cdr;
    KpiCards: KpiDisplayCard[];
    TrendsData: TrendData[];
    TopConsumers: TopConsumer[];
    ErrorHotspots: ErrorHotspot[];
    IsLoading: boolean;
    ComparisonEnabled: boolean;
    PeriodLabel: string;
    TimeSeriesConfig: TimeSeriesConfig;
    private destroy$;
    private isInitialized;
    private previousKpis;
    ngOnInit(): void;
    ngOnDestroy(): void;
    OnTimeRangeChange(range: string): void;
    OnFiltersChange(filters: GlobalFilterState): void;
    OnCompareToggled(active: boolean): void;
    OnRefresh(): void;
    OnConsumerClick(item: TopConsumer): void;
    FormatCost(cost: number): string;
    private latestKpis;
    private subscribeToStreams;
    private applyDateRange;
    private computeDateRange;
    private getPeriodLabel;
    private loadComparisonData;
    private rebuildKpiCards;
    private buildKpiCard;
    private computeDelta;
    private isDirectionGood;
    private extractSparkline;
    private getMetricFromTrend;
    private buildTopConsumers;
    private buildErrorHotspots;
    private formatNumber;
    private formatLatency;
    static ɵfac: i0.ɵɵFactoryDeclaration<AnalyticsExecutiveSummaryComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AnalyticsExecutiveSummaryComponent, "app-analytics-executive-summary", never, { "TimeRange": { "alias": "TimeRange"; "required": false; }; "Filters": { "alias": "Filters"; "required": false; }; }, { "TimeRangeChange": "TimeRangeChange"; "FiltersChange": "FiltersChange"; "SectionNavigate": "SectionNavigate"; }, never, never, false, never>;
}
export declare function LoadAnalyticsExecutiveSummary(): void;
export {};
//# sourceMappingURL=executive-summary.component.d.ts.map