import { Effect, Stream } from "effect"; import { AiError, Response } from "effect/unstable/ai"; /** @experimental */ export type Method = "generateText" | "generateObject" | "streamText"; /** @experimental */ export interface FailureInput { readonly error: unknown; readonly method: Method; } /** @experimental */ export type FailureResolver = (input: FailureInput) => AiError.AiError; interface ModelResponse { readonly content: ReadonlyArray; } /** @experimental */ export declare const defaultResolveFailure: FailureResolver; /** @experimental */ export declare const promoteResponseFailure: { (method: Exclude, resolve: FailureResolver): (response: A) => Effect.Effect; (response: A, method: Exclude, resolve: FailureResolver): Effect.Effect; }; /** @experimental */ export declare const promoteStreamFailures: { (resolve: FailureResolver): (stream: Stream.Stream) => Stream.Stream; (stream: Stream.Stream, resolve: FailureResolver): Stream.Stream; }; export {};