{
  "classes": [
    {
      "constants": [],
      "types": [
        {
          "lua_type": "type LogRecord = LoggingTypes.LogRecord",
          "name": "LogRecord",
          "tags": [],
          "source": {
            "path": "",
            "line": 16
          },
          "fields": [],
          "desc": ""
        },
        {
          "lua_type": "type LevelInput = LoggingTypes.LevelInput",
          "name": "LevelInput",
          "tags": [],
          "source": {
            "path": "",
            "line": 17
          },
          "fields": [],
          "desc": ""
        },
        {
          "lua_type": "type Handler = LoggingTypes.Handler",
          "name": "Handler",
          "tags": [],
          "source": {
            "path": "",
            "line": 18
          },
          "fields": [],
          "desc": ""
        },
        {
          "lua_type": "type Options = { level: LevelInput?, filter: (((record: LogRecord) → boolean))?, write: (((line: string, record: LogRecord) → ()))?, includeSource: boolean?, stderrLevel: number?, color: boolean? }",
          "name": "Options",
          "tags": [],
          "source": {
            "path": "",
            "line": 20
          },
          "fields": [
            {
              "lua_type": "level: LevelInput?",
              "name": "level",
              "desc": ""
            },
            {
              "lua_type": "filter: (((record: LogRecord) → boolean))?",
              "name": "filter",
              "desc": ""
            },
            {
              "lua_type": "write: (((line: string, record: LogRecord) → ()))?",
              "name": "write",
              "desc": ""
            },
            {
              "lua_type": "includeSource: boolean?",
              "name": "includeSource",
              "desc": ""
            },
            {
              "lua_type": "stderrLevel: number?",
              "name": "stderrLevel",
              "desc": ""
            },
            {
              "lua_type": "color: boolean?",
              "name": "color",
              "desc": ""
            }
          ],
          "desc": ""
        }
      ],
      "name": "@eryx/logging/ConsoleHandler",
      "tags": [],
      "functions": [
        {
          "source": {
            "path": "",
            "line": 102
          },
          "is_method": false,
          "signature": "ConsoleHandler.new(\n    options: Options?  -- Optional handler options (level/filter/custom writer/etc.).\n) → (\n    Handler  -- A logging handler suitable for `logging.addHandler`. \n)",
          "owner": "ConsoleHandler",
          "desc": "Creates a console-backed logging handler.\n\nBy default:\n- messages at level >= warning are written to stderr\n- lower levels are written to stdout\n- colours are auto-enabled when a TTY is detected\n",
          "tags": [],
          "name": "new",
          "return_str": "Handler",
          "function_type": "Function",
          "returns": [
            {
              "lua_type": "Handler",
              "desc": "A logging handler suitable for `logging.addHandler`. "
            }
          ],
          "params": [
            {
              "lua_type": "Options?",
              "name": "options",
              "desc": "Optional handler options (level/filter/custom writer/etc.)."
            }
          ]
        }
      ],
      "properties": [],
      "source": {
        "path": "",
        "line": 0
      },
      "desc": "Console log handler.\n\nWrites formatted text records to stdout/stderr, with optional\nANSI colour output and optional source metadata rendering.\n\n`stderrLevel` controls when records are routed to stderr.\n"
    }
  ]
}