UNPKG

@mondopower/result-types

Version:

Library to use for result type of typescript functions and helper functions.

23 lines (22 loc) 656 B
export interface Success<ResponseType> { isErrored: false; data: ResponseType; } export interface SuccessVoid { isErrored: false; } export type ErrorType = string; export interface CustomError<T extends ErrorType> { message: string; errorType: T; } export interface Failure<T extends ErrorType> { isErrored: true; error: CustomError<T>; } export type Result<ResponseType, T extends ErrorType> = Success<ResponseType> | Failure<T>; export type ResultVoid<T extends ErrorType> = SuccessVoid | Failure<T>; export interface ResultArray<Data, Errors extends ErrorType> { successes: Data[]; failures: CustomError<Errors>[]; }