/**
 * Spinner interface for progress indication
 */
export interface Spinner {
    text: string;
    start(): void;
    stop(): void;
    succeed(text?: string): void;
    fail(text?: string): void;
    warn(text?: string): void;
}
/**
 * Steps interface for multi-step progress tracking
 */
export interface Steps {
    start(): void;
    succeed(step: string, details?: string): void;
    fail(step: string, details?: string): void;
    warn(step: string, details?: string): void;
    complete(summary?: string): void;
}
/**
 * Create a spinner for operations with unknown duration
 *
 * In TTY mode: Uses ora with elegant spinner animation
 * In non-TTY mode: Outputs timestamped messages to stderr
 * In quiet mode (--quiet): Returns no-op spinner (no output)
 *
 * Note: --json mode still shows spinners to stderr (use --quiet to suppress)
 *
 * @param text - Initial spinner text
 * @returns Spinner instance
 */
export declare function createSpinner(text: string): Spinner;
/**
 * Create a multi-step progress tracker
 *
 * Tracks progress through a known sequence of steps, showing success/failure
 * for each step and a final summary.
 *
 * @param steps - Array of step names
 * @returns Steps instance
 */
export declare function createSteps(steps: string[]): Steps;
/**
 * Formatting helpers for consistent, beautiful output
 */
export declare const format: {
    /**
     * Format a success message (green checkmark + white text)
     */
    success(message: string): void;
    /**
     * Format an error message (red X + text)
     */
    error(message: string): void;
    /**
     * Format a warning message (yellow warning + text)
     */
    warn(message: string): void;
    /**
     * Format an info message (blue info + text)
     */
    info(message: string): void;
    /**
     * Format an indented detail line
     */
    detail(message: string): void;
    /**
     * Format a section header
     */
    section(message: string): void;
    /**
     * Format a code snippet
     */
    code(message: string): void;
};
//# sourceMappingURL=progress.d.ts.map