/** * Create a new `EConstructor`, with the formatted `format` as a first argument. * * @template {Error} Fault * @template {new (reason: string) => Fault} Class * @param {Class} Constructor */ export function create< Fault extends Error, Class extends new (reason: string) => Fault >( Constructor: Class ): { (format?: string | null | undefined, ...values: unknown[]): Fault /** @type {string} */ displayName: string } export const fault: { (format?: string | null | undefined, ...values: unknown[]): Error /** @type {string} */ displayName: string } & { eval: { (format?: string | null | undefined, ...values: unknown[]): Error /** @type {string} */ displayName: string } range: { (format?: string | null | undefined, ...values: unknown[]): Error /** @type {string} */ displayName: string } reference: { (format?: string | null | undefined, ...values: unknown[]): Error /** @type {string} */ displayName: string } syntax: { (format?: string | null | undefined, ...values: unknown[]): Error /** @type {string} */ displayName: string } type: { (format?: string | null | undefined, ...values: unknown[]): Error /** @type {string} */ displayName: string } uri: { (format?: string | null | undefined, ...values: unknown[]): Error /** @type {string} */ displayName: string } }