export declare function assert(condition: unknown, message: string): asserts condition; export declare function fail(message: string): never; export type Failure = { type: 'Failure'; reason: string; }; export type Success = { type: 'Success'; value: T; }; export type Result = Success | Failure; export declare function success(value: T): Success; export declare function success(value: void): Success; export declare function failure(reason: string): Failure; export declare function unwrap(result: Result): T; export declare function unwrapOr(result: Result, fallback: T): T; export type Accept = (result: T) => void; export type Reject = (reason: Error) => void;