import type { SummarizeConfig } from "../config.js";
export type DaemonLogLevel = "debug" | "info" | "warn" | "error";
export type DaemonLogFormat = "json" | "pretty";
export type DaemonLoggingConfig = {
    enabled: true;
    level: DaemonLogLevel;
    format: DaemonLogFormat;
    file: string;
    maxBytes: number;
    maxFiles: number;
};
export type DaemonLogWriter = {
    debug: (payload: Record<string, unknown>) => void;
    info: (payload: Record<string, unknown>) => void;
    warn: (payload: Record<string, unknown>) => void;
    error: (payload: Record<string, unknown>) => void;
};
export type DaemonLogger = {
    enabled: boolean;
    config: DaemonLoggingConfig | null;
    logger: DaemonLogWriter | null;
    getSubLogger: (name: string, logObj?: Record<string, unknown>) => DaemonLogWriter | null;
};
export declare function resolveDaemonLoggingConfig({ env, config, }: {
    env: Record<string, string | undefined>;
    config: SummarizeConfig | null;
}): DaemonLoggingConfig | null;
export declare function createDaemonLogger({ env, config, }: {
    env: Record<string, string | undefined>;
    config: SummarizeConfig | null;
}): DaemonLogger;
