/**
 * Collector Registry
 * Phase 8: Panel-to-collector integrity
 */
import { collectPosture } from '../collectors/collector_posture.js';
import { collectNetwork } from '../collectors/collector_network.js';
import { collectResources } from '../collectors/collector_resources.js';
import { collectAssets } from '../collectors/collector_assets.js';
import { collectCapabilities } from '../collectors/collector_capabilities.js';
import { collectFeed } from '../collectors/collector_feed.js';
import { collectGeo } from '../collectors/collector_geo.js';
import type { AppState } from '../store.js';
import type { CollectorResult } from './types.js';
/**
 * Collector registry - single source of truth
 * Maps panel IDs to collector functions
 */
export declare const collectorRegistry: {
    readonly posture: typeof collectPosture;
    readonly network: typeof collectNetwork;
    readonly resources: typeof collectResources;
    readonly assets: typeof collectAssets;
    readonly capabilities: typeof collectCapabilities;
    readonly feed: typeof collectFeed;
    readonly geo: typeof collectGeo;
};
/**
 * Panel-to-collector mapping
 * Every panel must reference a valid collector key
 */
export declare const panelToCollectorMap: Record<string, keyof typeof collectorRegistry>;
/**
 * Validate that all hub panels reference valid collectors
 */
export declare function validatePanelCollectorIntegrity(panelIds: string[], throwOnError?: boolean): {
    valid: boolean;
    errors: string[];
};
/**
 * Get collector function for a panel
 */
export declare function getCollectorForPanel(panelId: string): ((appState: AppState) => Promise<CollectorResult<any>>) | null;
//# sourceMappingURL=collectorRegistry.d.ts.map