import type { SpinnerResult, ProgressResult } from '@clack/prompts'; export type LogFormat = 'default' | 'json'; /** * GT_LOG_FORMAT: default | json. * - If default, logs will be pretty-printed using @clack/prompts. * - If json, logs will be written in JSON format to the console. * GT_LOG_FILE: If specified, logs will be written to the file. * GT_LOG_LEVEL: The level of logs to write. If not specified, defaults to 'info'. * - Valid levels: debug, info, warn, error. */ declare class Logger { private static instance; private pinoLogger; private fileLogger; private logFormat; private constructor(); static getInstance(): Logger; trace(message: string): void; debug(message: string): void; info(message: string): void; warn(message: string): void; error(message: string): void; fatal(message: string): void; silent(message: string): void; success(message: string): void; step(message: string): void; message(message: string, symbol?: string): void; createSpinner(indicator?: 'dots' | 'timer'): SpinnerResult; createProgressBar(total: number): ProgressResult; startCommand(message: string): void; endCommand(message: string): void; flush(): void; } export declare const logger: Logger; export {};