import type { AgentHarnessRuntimeOptionsInput } from "@mono-agent/agent-harness"; import type { MonoAgentConfig } from "@mono-agent/config"; import type { ChannelId } from "./channels.js"; import type { MonitorsServiceHandle } from "./monitors-service.js"; import type { ProcessJobOriginRecord } from "./process-jobs-store.js"; import type { RuntimeOptionsExtension } from "./runtime-option-extensions.js"; /** Channel schemes whose adapters can deliver a monitor wake to an exact conversation. */ export declare const MONITOR_WAKE_CAPABLE_SCHEMES: ReadonlySet; export interface MonitorsRuntimeExtensionOptions { readonly next?: RuntimeOptionsExtension; /** Optional because monitors stay unavailable when their service cannot open. */ readonly service: MonitorsServiceHandle | undefined; readonly coreConfig: MonoAgentConfig; readonly channelId: ChannelId | undefined; readonly conversationScheme?: string | undefined; readonly routesOnlyPiNative?: (metadata: Record | undefined) => boolean; } /** Inject the monitor controller only for a Pi-native, wake-capable, allowed turn. */ export declare function createMonitorsRuntimeExtension(options: MonitorsRuntimeExtensionOptions): RuntimeOptionsExtension; /** Strict host-origin classifier narrowed to schemes that can deliver a wake. */ export declare function monitorOriginForRequest(input: Pick, channelId: ChannelId | undefined, conversationScheme?: string): ProcessJobOriginRecord | undefined; export interface MonitorsAvailabilityOptions { readonly service: MonitorsServiceHandle | undefined; readonly coreConfig: MonoAgentConfig; readonly channelId: ChannelId | undefined; readonly conversationScheme?: string | undefined; readonly routesOnlyPiNative?: (metadata: Record | undefined) => boolean; } /** * The same gate the extension applies, minus the checks that only exist once a * run is under way. Exported so prompt guidance and tool availability are * decided by one predicate; it errs strict, because telling the model it can * watch something it cannot is the worse failure. */ export declare function monitorsAvailableForRequest(input: Pick, options: MonitorsAvailabilityOptions): boolean; //# sourceMappingURL=monitors-runtime.d.ts.map