import type { StreamChartCapability, StreamSchema, StreamSuggestion } from "./streamingTypes";
import type { IntentId } from "./intents";
export declare function registerStreamChartCapability(capability: StreamChartCapability): void;
export declare function unregisterStreamChartCapability(component: string): void;
export declare function getStreamCapabilities(): ReadonlyArray<StreamChartCapability>;
export interface SuggestStreamChartsOptions {
    intent?: IntentId | IntentId[];
    allow?: ReadonlyArray<string>;
    deny?: ReadonlyArray<string>;
    maxResults?: number;
    minScore?: number;
    capabilities?: ReadonlyArray<StreamChartCapability>;
}
/**
 * Suggest realtime charts for a schema, ranked by intent.
 *
 * Parallel to `suggestCharts` but operates on a `StreamSchema` (fields +
 * throughput/retention hints) rather than row data. Use for live dashboards,
 * monitoring views, anywhere events arrive over time rather than as a bounded
 * table.
 *
 * @example
 * const suggestions = suggestStreamCharts({
 *   fields: [
 *     { name: "ts", kind: "date" },
 *     { name: "latency_ms", kind: "numeric" },
 *     { name: "endpoint", kind: "categorical" },
 *   ],
 *   throughput: "high",
 *   retention: "windowed",
 * }, { intent: "trend" })
 * // → [{ component: "RealtimeHeatmap", ... }, { component: "RealtimeWaterfallChart", ... }]
 */
export declare function suggestStreamCharts(schema: StreamSchema, options?: SuggestStreamChartsOptions): StreamSuggestion[];
