@ocubist/error-alchemy
Version:
A powerful Node.js error-handling-framework with custom error types for easy debugging, enhanced error management, strong zod-support and useful quality-of-life-functionality for asserting and validating values.
77 lines • 2.77 kB
TypeScript
/// <reference types="node" />
import { ZodSchema } from "zod";
declare const craftMysticError: (props: {
name: string;
severity?: import("../../..").Severity | undefined;
cause?: string | undefined;
errorCode?: import("../../..").ErrorCode | undefined;
}) => {
new (props: {
message: string;
origin?: unknown;
payload?: Record<string, unknown> | undefined;
}): {
dynamicClassUuid: string;
instanceUuid: string;
name: string;
severity: import("../../..").Severity;
origin?: unknown;
cause?: string | undefined;
payload: Record<string, unknown>;
module?: string | undefined;
context?: string | undefined;
errorCode: import("../../..").ErrorCode;
readonly severityDescription: string;
readonly simpleGetter: string;
readonly identifier: string;
message: string;
stack?: string | undefined;
};
compare(err: unknown): boolean;
captureStackTrace(targetObject: object, constructorOpt?: Function | undefined): void;
prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
stackTraceLimit: number;
};
/**
* Type for AsyncParseFailedError.
*/
export type AsyncParseFailedError = InstanceType<ReturnType<typeof craftMysticError>>;
export declare const AsyncParseFailedError: {
new (props: {
message: string;
origin?: unknown;
payload?: Record<string, unknown> | undefined;
}): {
dynamicClassUuid: string;
instanceUuid: string;
name: string;
severity: import("../../..").Severity;
origin?: unknown;
cause?: string | undefined;
payload: Record<string, unknown>;
module?: string | undefined;
context?: string | undefined;
errorCode: import("../../..").ErrorCode;
readonly severityDescription: string;
readonly simpleGetter: string;
readonly identifier: string;
message: string;
stack?: string | undefined;
};
compare(err: unknown): boolean;
captureStackTrace(targetObject: object, constructorOpt?: Function | undefined): void;
prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
stackTraceLimit: number;
};
/**
* Asynchronously parses a value against a Zod schema.
*
* @template T
* @param {T} value - The value to parse.
* @param {ZodSchema<T>} schema - The Zod schema to parse against.
* @returns {Promise<T>} A promise that resolves to the parsed value.
* @throws {AsyncParseFailedError} If parsing fails.
*/
export declare const asyncParse: <T>(value: T, schema: ZodSchema<T>) => Promise<T>;
export {};
//# sourceMappingURL=asyncParse.d.ts.map