import pino from "pino"; import { Elysia } from "elysia"; import type { Logger, ElysiaLogger, ElysiaLoggerOptions, StandaloneLoggerOptions, ElysiaFileLoggerOptions, ElysiaStreamLoggerOptions, _INTERNAL_Writeonly, _INTERNAL_ElysiaLoggerPlugin, _INTERNAL_ElysiaLoggerPluginAutoLoggingState, _INTERNAL_ElysiaLoggerPluginAutoLoggingEnabledOptions, _INTERNAL_ElysiaLoggerPluginAutoLoggingDisabledOptions } from "./types.js"; /** * The StreamLogger is used to write log entries to a stream such as the console output (default behavior). */ export declare function logger(options?: _INTERNAL_ElysiaLoggerPluginAutoLoggingEnabledOptions): _INTERNAL_ElysiaLoggerPlugin<_INTERNAL_ElysiaLoggerPluginAutoLoggingState>; export declare function logger(options?: _INTERNAL_ElysiaLoggerPluginAutoLoggingDisabledOptions): _INTERNAL_ElysiaLoggerPlugin; /** * A FileLogger lets you store log entries in a file. */ export declare function fileLogger(options: _INTERNAL_ElysiaLoggerPluginAutoLoggingEnabledOptions): _INTERNAL_ElysiaLoggerPlugin<_INTERNAL_ElysiaLoggerPluginAutoLoggingState>; export declare function fileLogger(options: _INTERNAL_ElysiaLoggerPluginAutoLoggingDisabledOptions): _INTERNAL_ElysiaLoggerPlugin; type ElysiaLoggerInstance = ElysiaLogger>; /** * Create a logger instance like the plugin. */ export declare function createPinoLogger(options?: StandaloneLoggerOptions): ElysiaLoggerInstance; export declare function wrap(logger: Logger, options?: ElysiaLoggerOptions): Elysia<"", { decorator: {}; store: {}; derive: { readonly log: pino.Logger; }; resolve: {}; }, { typebox: import("@sinclair/typebox").TModule<{}>; error: {}; }, { schema: {}; macro: {}; macroFn: {}; parser: {}; }, {}, { derive: {}; resolve: {}; schema: {}; }, { derive: {}; resolve: {}; schema: {}; }> | Elysia<"", { decorator: {}; store: _INTERNAL_Writeonly<_INTERNAL_ElysiaLoggerPluginAutoLoggingState>; derive: { readonly log: Logger; }; resolve: {}; }, { typebox: import("@sinclair/typebox").TModule<{}>; error: {}; }, { schema: import("elysia").MergeSchema, {}, "">; macro: {}; macroFn: {}; parser: {}; }, {}, { derive: {}; resolve: {}; schema: {}; }, { derive: {}; resolve: {}; schema: {}; }>; declare function into(this: Logger, options?: ElysiaLoggerOptions): Elysia<"", { decorator: {}; store: {}; derive: { readonly log: pino.Logger; }; resolve: {}; }, { typebox: import("@sinclair/typebox").TModule<{}>; error: {}; }, { schema: {}; macro: {}; macroFn: {}; parser: {}; }, {}, { derive: {}; resolve: {}; schema: {}; }, { derive: {}; resolve: {}; schema: {}; }> | Elysia<"", { decorator: {}; store: _INTERNAL_Writeonly<_INTERNAL_ElysiaLoggerPluginAutoLoggingState>; derive: { readonly log: Logger; }; resolve: {}; }, { typebox: import("@sinclair/typebox").TModule<{}>; error: {}; }, { schema: import("elysia").MergeSchema, {}, "">; macro: {}; macroFn: {}; parser: {}; }, {}, { derive: {}; resolve: {}; schema: {}; }, { derive: {}; resolve: {}; schema: {}; }>; export * from "./config/index.js"; export type { InferContext } from "./types.js"; export { pino };