export interface EventEntry {
    ts: string;
    project: string;
    component: string;
    action: string;
    entity: string;
    result: 'ok' | 'fail' | 'skip';
    meta?: Record<string, unknown>;
}
export declare class Logger {
    private component;
    private project;
    private logsDir;
    constructor(component: string, project?: string, logsDir?: string | null);
    info(msg: string): void;
    ok(msg: string): void;
    warn(msg: string): void;
    error(msg: string): void;
    debug(msg: string): void;
    private log;
    event(entry: Omit<EventEntry, 'ts' | 'project'>): void;
    /**
     * Rotate current log files on tick restart.
     * Renames pipeline-*.log and error-*.log to *.<timestamp>.log
     * so each tick session gets a clean log file.
     */
    rotateLogs(): void;
    private appendToFile;
}
//# sourceMappingURL=logger.d.ts.map