interface ErrorOptions {
|
cause?: unknown;
|
}
|
export declare class CustomError extends Error {
|
name: string;
|
constructor(message?: string, options?: ErrorOptions);
|
}
|
export {};
|
export interface CustomErrorInterface extends Error {
|
}
|
export interface CustomErrorProperties {
|
[property: string]: any;
|
}
|
export interface CustomErrorConstructor<Properties extends CustomErrorProperties> extends ErrorConstructor {
|
readonly prototype: CustomErrorInterface;
|
new (...args: any[]): CustomErrorInterface & Properties;
|
(...args: any[]): CustomErrorInterface & Properties;
|
}
|
export declare type GenericErrorConstructor = ErrorConstructor | EvalErrorConstructor | RangeErrorConstructor | ReferenceErrorConstructor | SyntaxErrorConstructor | TypeErrorConstructor | URIErrorConstructor | CustomErrorConstructor<CustomErrorProperties>;
|
declare type CustomErrorFunction<Properties> = (this: Properties, ...args: any[]) => void;
|
export declare function customErrorFactory<Properties extends CustomErrorProperties>(fn: CustomErrorFunction<Properties>, parent?: GenericErrorConstructor): CustomErrorConstructor<Properties>;
|
export {};
|