import * as plugins from '../plugins.js';
import * as interfaces from '../../dist_ts_interfaces/index.js';
export interface INetworkState {
    connections: interfaces.data.IConnectionInfo[];
    connectionsByIP: {
        [ip: string]: number;
    };
    throughputRate: {
        bytesInPerSecond: number;
        bytesOutPerSecond: number;
    };
    totalBytes: {
        in: number;
        out: number;
    };
    topIPs: Array<{
        ip: string;
        count: number;
    }>;
    topIPsByBandwidth: Array<{
        ip: string;
        count: number;
        bwIn: number;
        bwOut: number;
    }>;
    topASNs: interfaces.data.IAsnActivity[];
    throughputByIP: Array<{
        ip: string;
        in: number;
        out: number;
    }>;
    ipIntelligence: interfaces.data.IIpIntelligenceRecord[];
    domainActivity: interfaces.data.IDomainActivity[];
    throughputHistory: Array<{
        timestamp: number;
        in: number;
        out: number;
    }>;
    requestsPerSecond: number;
    requestsTotal: number;
    backends: interfaces.data.IBackendInfo[];
    frontendProtocols: interfaces.data.IProtocolDistribution | null;
    backendProtocols: interfaces.data.IProtocolDistribution | null;
    lastUpdated: number;
    isLoading: boolean;
    error: string | null;
}
export declare const networkStatePart: plugins.deesElement.domtools.plugins.smartstate.StatePart<string, INetworkState>;
export declare function refreshNetworkIpIntelligence(identity: interfaces.data.IIdentity, ipAddresses: string[]): void;
export declare const fetchNetworkStatsAction: plugins.deesElement.domtools.plugins.smartstate.StateAction<INetworkState, unknown>;
