result-tsk
Version:
result tool to use with or without NodeTskeleton template project
36 lines (35 loc) • 1.45 kB
TypeScript
import { IBaseResult, Metadata } from "../Result.interface";
import { ResultExecutionPromise } from "../Types";
import { IResult } from "./Result.interface";
import { ResultDto } from "../ResultDto";
export declare class Result<T> implements IResult<T> {
#private;
data: T | string;
statusCode: number | string;
success: boolean;
message: string;
error: string;
setMetadata(metadata: Metadata): IResult<T>;
addMetadata(key: string, value: string | number): IResult<T>;
addHeader(name: string, value: string): IResult<T>;
getHeaders(): Record<string, string> | null;
getMetadata(): Metadata;
hasMetadata(): boolean;
setStatusCode(statusCode: number | string, success: boolean): IResult<T>;
getStatusCode(): number | string;
setMessage(message: string, statusCode: number | string): IResult<T>;
setError(error: string, statusCode: number | string): IResult<T>;
setSuccess(): void;
isSuccess(): boolean;
fromResult(result: IBaseResult): IResult<T>;
hasError(): boolean;
hasMessage(): boolean;
hasData(): boolean;
setOnlyData(data: string | T): IResult<T>;
setData(data: string | T, statusCode: number | string, message?: string): IResult<T>;
execute<RO>(promise: ResultExecutionPromise<RO>): Promise<IResult<T> & {
value: RO;
}>;
toResultDto(): ResultDto;
static fromSuccess<T>(data: T, statusCode: string | number): IResult<T>;
}