UNPKG

@synet/net

Version:

Network abstraction layer for Synet. visit https://syntehtism.ai for more information.

27 lines (26 loc) 904 B
import { ErrorType } from "../errors/wireguard-errors"; /** * Simplified Result pattern */ export declare class Result<T> { private readonly _isSuccess; private readonly _value?; private readonly _errorType?; private readonly _errorMessage?; private readonly _errorCause?; private constructor(); get isSuccess(): boolean; get isFailure(): boolean; get value(): T; get errorType(): ErrorType | undefined; get errorMessage(): string | undefined; get errorCause(): Error | undefined; static success<T>(value: T): Result<T>; static fail<T>(type: ErrorType, message: string, cause?: Error): Result<T>; onSuccess(fn: (value: T) => void): Result<T>; onFailure(fn: (type: ErrorType, message: string, cause?: Error) => void): Result<T>; /** * Maps a successful result to another type */ map<U>(fn: (value: T) => U): Result<U>; }