import { Duration, Stream } from "effect"; import { AiError, Response } from "@batonfx/core"; import type { TruncatedStep, TurnStep } from "./test-model.js"; /** @experimental */ export declare const emptyUsage: () => Response.Usage; declare const finish: (reason: Response.FinishReason, usage: Response.Usage) => Response.FinishPartEncoded; declare const compileGenerate: (step: TurnStep, requestIndex: number) => Array; /** @experimental A compiled provider stream plus the per-part pacing delay, when scripted. */ export interface CompiledStream { readonly parts: ReadonlyArray; readonly partDelay?: Duration.Input; } /** @experimental */ declare const compileStreamFor: (step: TurnStep | TruncatedStep, requestIndex: number) => CompiledStream | AiError.AiError; /** @experimental */ declare const paceParts: (parts: ReadonlyArray, partDelay: Duration.Input) => Stream.Stream; /** @experimental */ export declare const compile: { emptyUsage: typeof emptyUsage; finish: typeof finish; compileGenerate: typeof compileGenerate; compileStreamFor: typeof compileStreamFor; paceParts: typeof paceParts; }; export {};