import type { InstrumentationAttemptScope, InstrumentationHooks, InstrumentationParentLineage, InstrumentationTraceContext } from "#instrumentation/lifecycle.js"; import type { ResolvedInputBatch } from "#harness/input-request-resolution.js"; import type { HandleEventFn } from "#harness/types.js"; import type { ChannelAudience } from "#shared/channel-audience.js"; export interface CreateInstrumentationHandleEventInput { readonly isFrameworkTool?: (name: string) => boolean; readonly traceSessionId?: string; readonly agentName?: string; readonly channelKind?: string; readonly channelAudience?: ChannelAudience; readonly getAttemptScope?: () => InstrumentationAttemptScope | undefined; readonly handleEvent?: HandleEventFn; readonly hooks?: InstrumentationHooks; readonly parentLineage?: InstrumentationParentLineage; readonly parentTraceContext?: InstrumentationTraceContext; readonly rootSessionId?: string; readonly scheduleId?: string; readonly sessionId: string; readonly title?: string; readonly turnId?: string; } /** Publishes eve-native lifecycle transitions after durable event acceptance. */ export declare function createInstrumentationHandleEvent(input: CreateInstrumentationHandleEventInput): HandleEventFn | undefined; /** Publishes accepted input resolutions against their original request scope. */ export declare function publishInputResolutions(input: { readonly batch: ResolvedInputBatch; readonly hooks: InstrumentationHooks; readonly sessionId: string; }): Promise;