import type { PluginConfig } from "./config"; import type { Logger } from "./logger"; import type { OpenCodeClient } from "./opencode-client"; import type { DtcState } from "./dtc/state"; interface StateDeps { state: DtcState; logger: Logger; } /** The verified host calls compacting immediately before the summary transform. */ export declare function createSessionCompactingHandler(deps: StateDeps): (input: { sessionID: string; }, _output?: unknown) => Promise; /** * An empty/unidentified summary history cannot consume the skip. The later * compaction params call clears it without observing or changing model options. * If the host aborts before both hooks, the next identified transform skips once * and clears the flag; this loses no information and does not persist a mode. */ export declare function createChatParamsHandler(deps: StateDeps): (input: { sessionID: string; agent?: string; }, _output?: unknown) => Promise; export interface TransformHandlerDeps extends StateDeps { client: OpenCodeClient; config: PluginConfig["dtc"]; } /** Build a private projection, then commit only to prevalidated ordinary slots. */ export declare function createTransformHandler(deps: TransformHandlerDeps): (_input: unknown, output: { messages: unknown[]; }) => Promise; export declare function createEventHandler(deps: StateDeps): (input: { event: { type: string; properties?: Record; }; }) => Promise; export {}; //# sourceMappingURL=hooks.d.ts.map