import { BaseAppender } from "../../appenders/class/BaseAppender.js"; import { AppenderConfiguration } from "../../appenders/interfaces/AppenderConfiguration.js"; import { LogLevel } from "../../core/LogLevel.js"; export interface LoggerAppender { name: string; instance: any; config: AppenderConfiguration; } export declare class LoggerAppenders { private _appenders; private _lvls; get size(): number; /** * The `has() method returns a boolean indicating whether an element with the specified configuration name exists or not. * @param name Required. The key of the element to test for presence in the Map object.` * @returns {boolean} */ has(name: string): boolean; /** * The `get() method returns a specified element from a loggerAppenders. * @param name Required. The configuration of the element to return from the Map object. * @returns {LoggerAppender} */ get(name: string): LoggerAppender; /** * The `set()` method adds or updates an element with a specified key and value to a loggerAppenders object. * @param name Required. The key of the element to add to the loggerAppenders object. * @param config Required. The config of the element to add to the loggerAppenders object. * @returns {LoggerAppender} */ set(name: string, config: Omit & { type: string | any; options?: any; }): LoggerAppenders; /** * Remove all configuration that match with the `name`. * @param name Required. The key of the element to remove from the loggerAppenders object. * @returns {boolean} Returns true if an element in the Map object existed and has been removed, or false if the element does not exist. */ delete(name: string): boolean; /** * The `clear() method removes all elements from a loggerAppenders object. */ clear(): void; /** * The `forEach()` method executes a provided function once per each key/value pair in the loggerAppenders object, in insertion order. * @param callback Function to execute for each element. * @param thisArg Value to use as this when executing callback. */ forEach(callback: (value: LoggerAppender, key: string, map: Map) => void, thisArg?: any): void; /** * * @returns {Array} */ toArray(): any[]; /** * Return all appenders that match with the given loggingLevel. * @param loggingLevel * @returns {[BaseAppender]} */ byLogLevel(loggingLevel: LogLevel): BaseAppender[]; }