export interface LogDumpOptions {
    logsDirectory: string;
    retentionDays: number;
    emailConfig: {
        url: string;
        fromEmail: string;
        toEmail: string;
    };
}
export interface LogEntry {
    timestamp: string;
    level: string;
    message: string;
    service?: string;
    workspaceId?: string;
    type?: string;
    typeId?: string;
    cost?: number;
    tokenUsage?: any;
    metadata?: any;
    [key: string]: any;
}
export declare class LogDumpService {
    private options;
    private logsDirectory;
    constructor(options: LogDumpOptions);
    private ensureLogsDirectory;
    /**
     * Creates a timestamped JSON file with all logs and sends it via email
     */
    dumpLogsToFile(logs: LogEntry[]): Promise<string>;
    /**
     * Reads all log files and combines them into a single array
     */
    readAllLogs(): Promise<LogEntry[]>;
    private readPrivateLogs;
    private readDefaultLogs;
    private readOtherLogFiles;
    private parseLogLine;
    /**
     * Purges logs older than the specified retention period
     */
    purgeOldLogs(): Promise<void>;
    /**
     * Gets the size of the logs directory
     */
    getLogsDirectorySize(): Promise<number>;
}
//# sourceMappingURL=logDumpService.d.ts.map