import type { ConfigManager } from '../config/manager.js';
import type { ConversationFollowUpItem } from '../core/conversation-follow-ups.js';
import type { RuntimeEventBus } from './events/index.js';
import type { createDomainDispatch } from './store/index.js';
import type { WrfcController } from '../agents/wrfc-controller.js';
import type { AgentManager } from '../tools/agent/index.js';
export interface HostRuntimeMessageRouter {
    low(message: string): void;
    high(message: string): void;
    wrfc(message: string): void;
}
export interface HostRuntimeEventBridgeOptions {
    readonly runtimeBus: RuntimeEventBus;
    readonly domainDispatch: ReturnType<typeof createDomainDispatch>;
    readonly getSystemMessageRouter: () => HostRuntimeMessageRouter | null;
    readonly queueConversationFollowUp?: ((item: ConversationFollowUpItem) => void) | undefined;
    readonly requestRender: () => void;
    readonly configManager: ConfigManager;
    readonly agentManager: AgentManager;
    readonly wrfcController: WrfcController;
}
export declare function registerHostRuntimeEvents(options: HostRuntimeEventBridgeOptions): {
    unsubs: Array<() => void>;
    agentStatusIntervalRef: {
        value: ReturnType<typeof setInterval> | null;
    };
};
export type BootstrapRuntimeEventBridgeOptions = HostRuntimeEventBridgeOptions;
export declare const registerBootstrapRuntimeEvents: typeof registerHostRuntimeEvents;
//# sourceMappingURL=bootstrap-runtime-events.d.ts.map