/** * @public */ export type ErrorDetailMap = Record; /** * @public */ export type ErrorMapLogger = (...args: any[]) => void; /** * @public */ export interface ErrorMap extends Pick, 'get' | 'has' | 'delete' | 'clear' | 'size' | 'values'> { /** * Error map as messages. * @returns string * * @public */ readonly messages: string; /** * Set an error by key. * @param key - The key. * @param error - The error. * * @public */ set(key: keyof TErrorDetailMap, error: Error): void; /** * The last set error if any. * @returns Error * * @public */ readonly lastError: Error; } /** * @public */ export declare class DefaultErrorMap implements ErrorMap { private logger; private map; /** {@inheritDoc ErrorMap.lastError} */ lastError: Error; /** * @param logger - A logger error method reference. */ constructor(logger: ErrorMapLogger); /** {@inheritDoc ErrorMap.set} */ set(key: keyof TErrorDetailMap, error: Error): void; /** * Get an error by key. * @param key - The key. * @returns The error if it exists, otherwise undefined. * * @public */ get(key: keyof TErrorDetailMap): Error | undefined; /** * Has an error for key. * @param key - The key. * @returns True if it exists, otherwise false. * * @public */ has(key: keyof TErrorDetailMap): boolean; /** * Delete an error. * @param key - The key. * @returns True if successful, otherwise false. * * @public */ delete(key: keyof TErrorDetailMap): boolean; /** * Clear errors. * @public */ clear(): void; /** * The size of the error map. * @returns number * * @public */ get size(): number; /** * @public */ values(): MapIterator; /** {@inheritDoc ErrorMap.messages} */ get messages(): string; } /** * A factory to create the error map. * @param logger - A logger error method reference. * @returns A ErrorMap instance. * * @public */ export declare const createErrorMap: (logger: ErrorMapLogger) => ErrorMap; //# sourceMappingURL=errorMap.d.ts.map