import type { Branded } from '../../libs/standard-branded'; export declare type Ok = Branded<{ ok: T; }, 'ok'>; export declare type Failure = Branded<{ failure: T; }, 'failure'>; export declare type Result = Failure | Ok; export declare type ExtractFailure> = T extends Failure ? FailureType : never; export declare type ExtractOk> = T extends Ok ? OkType : never; export declare const ok: (input: T) => Ok; export declare const fail: (input: T) => Failure; export declare const isOk: (input: Result) => input is Ok; export declare const isFailure: (input: Result) => input is Failure; export declare const isResult: (input: unknown) => input is Result;