/** Log levels for Autlantic Billing SDK diagnostics. */ export type BillingLogLevel = "debug" | "info" | "warn" | "error"; export type BillingLogMeta = Record; /** * Pluggable logger used by `AutlanticBilling` when `debug` is on * or when you inject your own sink (Datadog, Pino, etc.). */ export type BillingLogger = { debug(message: string, meta?: BillingLogMeta): void; info(message: string, meta?: BillingLogMeta): void; warn(message: string, meta?: BillingLogMeta): void; error(message: string, meta?: BillingLogMeta): void; }; export type CreateConsoleLoggerOptions = { /** Minimum level to emit. Default `info` (or `debug` when `minLevel` omitted and env debug is on). */ minLevel?: BillingLogLevel; /** Prefix for every line. Default `[autlantic-billing]`. */ prefix?: string; /** Override writers (tests). */ writers?: Partial void>>; }; /** No-op logger (default when debug is off and no custom logger is provided). */ export declare const noopBillingLogger: BillingLogger; /** Console-backed logger suitable for local development. */ export declare function createConsoleBillingLogger(options?: CreateConsoleLoggerOptions): BillingLogger; /** Mask API keys / secrets for safe debug traces. */ export declare function redactSecret(value: string | null | undefined): string | null; /** Deep-ish redact of JSON-ish values for logging. */ export declare function redactForLog(value: unknown, depth?: number): unknown; export declare function redactHeadersForLog(headers: Headers): Record; export declare function parseBillingLogLevel(raw: string | undefined): BillingLogLevel | undefined; export declare function isBillingDebugEnv(env?: Record): boolean; /** * Resolve the effective logger for a client instance. * - Custom `logger` always wins. * - Else if `debug` / env debug: console logger at debug (or `logLevel`). * - Else: noop (silent). */ export declare function resolveBillingLogger(input: { logger?: BillingLogger; debug?: boolean; logLevel?: BillingLogLevel; env?: Record; }): BillingLogger; //# sourceMappingURL=logger.d.ts.map