whole_func_string: function addPlugin(useLevel, fn) {
    let pluginFn = fn;
    if (typeof fn === 'undefined' && typeof useLevel === 'function') {
      pluginFn = useLevel;
    }
  
    if (typeof pluginFn !== 'function') {
      throw new Error('Plugin must be a function!');
    }
  
    if (typeof useLevel === 'string') {
      pluginFn = (id, level, stats, ...rest) => {
        if (level === useLevel.toUpperCase()) {
          return fn(id, level, stats, ...rest);
        }
        return [id, level, stats, ...rest];
      };
    }
  
    pluginsRegistry.push(pluginFn);
  }
func_code_string: function addPlugin(useLevel, fn) {
    let pluginFn = fn;
    if (typeof fn === 'undefined' && typeof useLevel === 'function') {
      pluginFn = useLevel;
    }
  
    if (typeof pluginFn !== 'function') {
      throw new Error('Plugin must be a function!');
    }
  
    if (typeof useLevel === 'string') {
      pluginFn = (id, level, stats, ...rest) => {
        if (level === useLevel.toUpperCase()) {
          return fn(id, level, stats, ...rest);
        }
        return [id, level, stats, ...rest];
      };
    }
  
    pluginsRegistry.push(pluginFn);
  }
func_documentation_string: Add plugin function. Plugin function must return array with log argument values.