/// <reference types="node" />
import { AutorestSyncLogger } from "./logger";
import { LoggerSink, LogInfo, ProgressTracker } from "./types";
export interface ConsoleLoggerSinkOptions {
    /**
     * Stream to use for output. (@default stdout)
     */
    stream?: NodeJS.WritableStream;
    format?: "json" | "regular";
    color?: boolean;
    timestamp?: boolean;
    /**
     * Enable output for non TTY output(e.g. file) for the progress file.
     */
    progressNoTTYOutput?: boolean;
}
/**
 * Logger sink to output logs to the console.
 */
export declare class ConsoleLoggerSink implements LoggerSink {
    private options;
    private formatter;
    private currentProgressBar;
    private bars;
    private pendingLogs;
    private format;
    private stream;
    constructor(options?: ConsoleLoggerSinkOptions);
    log(log: LogInfo): void;
    startProgress(initialName?: string): ProgressTracker;
    private isTTY;
    private startProgressBar;
    private writeLine;
}
/**
 * Simple logger which takes log info as it is and logs it.
 * Doesn't resolve original source locations.
 */
export declare class ConsoleLogger extends AutorestSyncLogger {
    constructor(options?: ConsoleLoggerSinkOptions);
}
//# sourceMappingURL=console-logger-sink.d.ts.map