import { Effect } from "effect"; import { Prompt, Response, Tool } from "effect/unstable/ai"; import { type Completed, type TurnCompleted } from "./agent-event.js"; import type { RunBudgetExhausted } from "../durable/run-budget.js"; import type { RunError } from "./agent.js"; import type { AgentRunState } from "./agent-run-state.js"; export declare const turnCompletedEvent: { (turn: number, transcript: Prompt.Prompt): (state: AgentRunState) => TurnCompleted; (state: AgentRunState, turn: number, transcript: Prompt.Prompt): TurnCompleted; }; export declare const terminalCompletedEvent: { (turn: number, transcript: Prompt.Prompt): (state: AgentRunState) => Completed; (state: AgentRunState, turn: number, transcript: Prompt.Prompt): Completed; }; export declare const chargeAttemptUsageWith: { (state: Pick): (interpreter: import("../durable/driver-interpreter.js").Interface) => Effect.Effect; (interpreter: import("../durable/driver-interpreter.js").Interface, state: Pick): Effect.Effect; }; export declare const chargeAttemptUsage: (state: Pick) => Effect.Effect; export declare const captureFinishPart: { (part: Response.FinishPart): (state: AgentRunState) => Effect.Effect; (state: AgentRunState, part: Response.FinishPart): Effect.Effect; }; export declare const captureStructuredUsage: { (content: ReadonlyArray>>): (state: AgentRunState) => Effect.Effect; (state: AgentRunState, content: ReadonlyArray>>): Effect.Effect; };