import { Effect, Option } from "effect"; import { Chat, Prompt, Response, Tool } from "effect/unstable/ai"; import { type Controller, type Interface } from "../model/active-model-response.js"; import { type CompletedModelResponse } from "../model/model-response-builder.js"; import type { AttemptCompleted } from "../model/model-operation.js"; type PartIdentity = Pick; type Authority = ReturnType; /** @internal Own one provider attempt builder and its optional Run-visible authority. */ export declare const makeAttemptResponse: (input: { readonly service: Option.Option; readonly operationKey?: string; readonly turn: number; }) => { setSessionParentId: (value: string | null) => string | null; accept: (identity: PartIdentity, part: Response.StreamPart>) => void; complete: (identity: PartIdentity) => CompletedModelResponse>; authority: () => Authority | undefined; discard: () => void; }; export declare const replayMessages: (input: { readonly chat: Chat.Service; readonly activePrompt: Prompt.Prompt; readonly replayFromHistory: boolean; }) => Effect.Effect>; export declare const clearCommittedResponse: (input: { readonly service: Option.Option; readonly authority: Authority | undefined; }) => void; export {};