/**
 * IO / Network / Wakelock / Wakeup Aggregator (Spark Plan 15)
 *
 * Combines four orthogonal attribution facets into one
 * `IoNetworkWakeupContract`. All facets optional; missing facets surface
 * as `unsupportedReason` rather than zero-fill.
 */
import { type IoBlockEvent, type IoNetworkWakeupContract, type NetworkAttribution, type NsTimeRange, type SchedulerWakeupEdge, type WakelockBaselineRow } from '../types/sparkContracts';
export interface IoNetworkWakeupOptions {
    range: NsTimeRange;
    ioEvents?: IoBlockEvent[];
    networkAttribution?: NetworkAttribution[];
    wakelockBaseline?: WakelockBaselineRow[];
    wakeupEdges?: SchedulerWakeupEdge[];
}
export declare function buildIoNetworkWakeup(options: IoNetworkWakeupOptions): IoNetworkWakeupContract;
/**
 * Helper: aggregate network attribution rows by endpoint to surface
 * top hosts for diagnostic UIs.
 */
export declare function aggregateNetworkByEndpoint(rows: NetworkAttribution[] | undefined): Array<{
    endpoint: string;
    totalDurNs: number;
    totalBytes: number;
    rowCount: number;
}>;
//# sourceMappingURL=ioNetworkWakeup.d.ts.map