import { OnInit, OnDestroy, AfterViewInit } from '@angular/core';
import { BaseResourceComponent } from '@memberjunction/ng-shared';
import { ResourceData } from '@memberjunction/core-entities';
import { IntegrationSummary, IntegrationKPIs, ActivityFeedItem, DailyRecordCount } from '../../services/integration-data.service';
import * as i0 from "@angular/core";
type StatusColorType = 'green' | 'amber' | 'red' | 'gray';
interface NotificationBanner {
    Type: 'success' | 'error';
    Message: string;
}
export declare class OverviewComponent extends BaseResourceComponent implements OnInit, OnDestroy, AfterViewInit {
    Summaries: IntegrationSummary[];
    KPIs: IntegrationKPIs;
    ActivityFeed: ActivityFeedItem[];
    DailyCounts: DailyRecordCount[];
    EntityMapCounts: Map<string, number>;
    IsLoading: boolean;
    RunningIntegrationID: string | null;
    Notification: NotificationBanner | null;
    private dataService;
    private cdr;
    private notificationTimer;
    ngOnInit(): Promise<void>;
    ngOnDestroy(): void;
    LoadData(): Promise<void>;
    Refresh(): Promise<void>;
    ngAfterViewInit(): void;
    private emitAgentContext;
    private registerAgentTools;
    /** Resolve a requested surface and route to it via NavigationService. */
    private toolSwitchSurface;
    /** Open a company-integration record (read-only nav) by id or name. */
    private toolOpenIntegrationRecord;
    /** Count of integrations whose health-status color matches. */
    private countByStatusColor;
    /** Count of entity-map "pipelines" (enabled maps) across all integrations. */
    private computePipelineCount;
    RunSync(integrationID: string): Promise<void>;
    IsRunning(integrationID: string): boolean;
    get SuccessRate(): number;
    get SuccessRateGradient(): string;
    get ActiveCount(): number;
    FormatDuration(ms: number | null): string;
    FormatNumber(value: number): string;
    GetIntegrationIcon(summary: IntegrationSummary): string;
    GetStatusDotClass(color: StatusColorType): string;
    GetStatusLabel(color: StatusColorType): string;
    GetEntityMapCount(integrationID: string): number;
    GetSparklineDotClass(run: {
        Status: string;
    }): string;
    GetCardBorderClass(color: StatusColorType): string;
    get MaxDailyRecords(): number;
    BarHeight(records: number): number;
    ActivityStatusIcon(status: string): string;
    DismissNotification(): void;
    GetResourceDisplayName(_data: ResourceData): Promise<string>;
    GetResourceIconClass(_data: ResourceData): Promise<string>;
    private loadEntityMapCounts;
    private loadAllEntityMaps;
    private countMapsByIntegration;
    private showNotification;
    private dismissNotification;
    private clearNotificationTimer;
    static ɵfac: i0.ɵɵFactoryDeclaration<OverviewComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<OverviewComponent, "app-integration-overview", never, {}, {}, never, never, false, never>;
}
export declare function LoadOverviewComponent(): void;
export {};
//# sourceMappingURL=overview.component.d.ts.map