import type { InstrumentationAttemptScope, InstrumentationHooks, InstrumentationParentLineage, InstrumentationTraceContext } from "#instrumentation/lifecycle.js";
import type { ResolvedInputBatch } from "#harness/input-requests.js";
import type { HandleEventFn } from "#harness/types.js";
import type { ChannelAudience } from "#shared/channel-audience.js";
import type { TaskView } from "#tasks/types.js";
export interface CreateInstrumentationHandleEventInput {
    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 sessionId: 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<void>;
/** Settles actions whose model-facing result was an admitted background-task receipt. */
export declare function publishBackgroundTaskSettlements(input: {
    readonly acceptedAtMs?: number;
    readonly hooks: InstrumentationHooks;
    readonly views: readonly TaskView[];
}): Promise<void>;
