export declare enum LogLevel {
    NONE = 0,
    ERROR = 1,
    WARN = 2,
    INFO = 3,
    DEBUG = 4,
    TRACE = 5
}
export type LogContext = {
    logLevel?: number | null;
    verbose?: boolean | null;
    request?: {
        debug?: boolean;
    } | null;
};
export declare const parseLogLevel: (value: unknown) => LogLevel | undefined;
export declare const getEnvLogLevel: () => LogLevel | undefined;
export declare const resolveLogLevel: (context?: LogContext) => LogLevel;
export declare const shouldLog: (requiredLevel: LogLevel, context?: LogContext) => boolean;
export declare const applyLogLevelDefaults: (config: {
    logLevel?: number | null;
    verbose?: boolean | null;
}, request?: {
    debug?: boolean;
} | null) => LogLevel;
export declare const getLogContext: (config: {
    logLevel?: number | null;
    verbose?: boolean | null;
}, request: {
    debug?: boolean;
} | null) => LogContext;
export declare const logWithLevel: (requiredLevel: LogLevel, context: LogContext | undefined, logger: (...args: any[]) => void, ...args: any[]) => void;
