import * as Effect from "effect/Effect"; import * as Layer from "effect/Layer"; import * as ServiceMap from "effect/Context"; import * as Stream from "effect/Stream"; import type { TerminalSize } from "./scene.js"; declare const CredentialDeliveryFailed_base: new = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & { readonly _tag: "CredentialDeliveryFailed"; } & Readonly; export declare class CredentialDeliveryFailed extends CredentialDeliveryFailed_base<{ readonly cause: unknown; }> { } export interface OutputStreamFacts extends TerminalSize { readonly stdoutIsTTY: boolean; readonly stderrIsTTY: boolean; } declare const OutputStreams_base: ServiceMap.ServiceClass Effect.Effect; readonly stderr: (content: string) => Effect.Effect; /** Write a credential and acknowledge the stream callback before succeeding. */ readonly credential: (content: string) => Effect.Effect; readonly facts: Effect.Effect; readonly resize: Stream.Stream; }>; export declare class OutputStreams extends OutputStreams_base { } export declare const OutputStreamsLive: Layer.Layer; /** Pre-runtime TTY fact for startup policy without exposing Node streams. */ export declare const stderrIsTTY: () => boolean; export interface TestOutputStreamsState { readonly stdout: Array; readonly stderr: Array; /** The terminal the streams report. A test narrows it, then offers a resize. */ size: TerminalSize; } export declare const makeTestOutputStreams: (options?: { readonly stdoutIsTTY?: boolean; readonly stderrIsTTY?: boolean; readonly columns?: number; readonly rows?: number; readonly resize?: Stream.Stream; }) => { readonly layer: Layer.Layer; readonly state: TestOutputStreamsState; }; export {}; //# sourceMappingURL=streams.d.ts.map