import { DiagnosticsResult } from "./DiagnosticError.js"; export type Result = Ok | Err; type Ok = { kind: "OK"; value: T; }; type Err = { kind: "ERROR"; err: E; }; export declare function ok(value: T): Ok; export declare function err(err: E): Err; /** * Helper class for chaining together a series of `Result` operations. */ export declare class ResultPipe { private readonly _result; constructor(_result: Result); map(fn: (value: T) => T2): ResultPipe; mapErr(fn: (e: E) => E2): ResultPipe; andThen(fn: (value: T) => Result): ResultPipe; result(): Result; } export declare function collectResults(results: DiagnosticsResult[]): DiagnosticsResult; export declare function concatResults(result1: Result, result2: Result): Result<[T, U], E[]>; export {};