/** * Spinner Component * * Animated loading spinner for async operations */ import { Writable } from 'stream'; import { SpinnerConfig } from './types'; /** * Alternative spinner styles */ export declare const SPINNER_STYLES: { dots: string[]; line: string[]; arc: string[]; circle: string[]; square: string[]; bounce: string[]; arrow: string[]; clock: string[]; moon: string[]; dots2: string[]; }; /** * Create a spinner that can be controlled externally */ export declare class Spinner { private engine; private frames; private interval; private state; private tickTimer; private output; private lastLineCount; private isRunning; constructor(config: SpinnerConfig, output?: Writable); /** * Start the spinner */ start(): this; /** * Update the spinner text */ text(text: string): this; /** * Stop with success */ succeed(text?: string): this; /** * Stop with error */ fail(text?: string): this; /** * Stop with warning */ warn(text?: string): this; /** * Stop with info */ info(text?: string): this; /** * Stop the spinner */ stop(status?: 'success' | 'error' | 'warning' | 'info', text?: string): this; /** * Render the current state */ private render; } /** * Create and start a spinner */ export declare function createSpinner(text: string, options?: Partial): Spinner;