import { Option } from "./option"; export interface ResultArms { Err(err: E): A; Ok(ok: T): A; } export declare class Result { #private; private constructor(); static Err(value: E): Result; static Ok(value: T): Result; static from(value: T | null | undefined): Result; static fromNever(fn: () => T): Result; static fromPromise(promise: Promise): Promise>; static fromAsync(fn: () => Promise): Promise>; match(arms: ResultArms): A; isErr(): boolean; isErrAnd(f: (value: E) => boolean): boolean; isOk(): boolean; isOkAnd(f: (value: T) => boolean): boolean; ok(): Option; err(): Option; unwrap(): T; unwrapOr(value: T): T; unwrapOrElse(f: (err: E) => T): T; unwrapErr(): E; expect(message: string): T; intoOk(): T; intoErr(): E; intoOption(): Option; map(predicate: (ok: T) => F): Result; mapOr(value: V, f: (ok: T) => V): V; mapOrElse(defaultF: (err: E) => V, f: (ok: T) => V): V; mapErr(predicate: (err: E) => F): Result; flatten(): Result; transpose(): Option>; inspect(f: (ok: T) => any): Result; inspectErr(f: (err: E) => any): Result; and(res: Result): Result; andThen(f: (ok: T) => Result): Result; or(res: Result): Result; orElse(f: (err: E) => Result): Result; [Symbol.iterator](): Generator; iter(): (T | E)[]; } export declare const Err: typeof Result.Err; export declare const Ok: typeof Result.Ok;