/**
 * Output Utilities
 * Consistent output handling across all commands with --json, --quiet, --verbose support
 */
export interface OutputOptions {
    json?: boolean;
    quiet?: boolean;
    verbose?: boolean;
}
export declare class OutputManager {
    private options;
    constructor(options?: OutputOptions);
    /**
     * Print success message
     */
    success(message: string, data?: any): void;
    /**
     * Print error message
     */
    error(message: string, error?: Error | any, code?: string): void;
    /**
     * Print warning message
     */
    warn(message: string, data?: any): void;
    /**
     * Print info message
     */
    info(message: string, data?: any): void;
    /**
     * Print debug message (only in verbose mode)
     */
    debug(message: string, data?: any): void;
    /**
     * Print JSON output
     */
    json(data: any): void;
    /**
     * Print table (only in non-JSON, non-quiet mode)
     */
    table(data: any[], headers?: string[]): void;
    /**
     * Print data (auto-detect format)
     */
    print(data: any): void;
    /**
     * Create a spinner (only in non-JSON, non-quiet mode)
     */
    spinner(text: string): any;
    /**
     * Check if should show output
     */
    get shouldShow(): boolean;
    /**
     * Check if JSON mode
     */
    get isJson(): boolean;
    /**
     * Check if verbose mode
     */
    get isVerbose(): boolean;
    /**
     * Check if quiet mode
     */
    get isQuiet(): boolean;
}
/**
 * Add global output options to a command
 */
export declare function addGlobalOptions(command: any): any;
/**
 * Create output manager from command options
 */
export declare function createOutput(options: any): OutputManager;
/**
 * Error codes for consistent error handling
 */
export declare enum ErrorCode {
    UNKNOWN = "UNKNOWN",
    INVALID_INPUT = "INVALID_INPUT",
    OPERATION_FAILED = "OPERATION_FAILED",
    NOT_GIT_REPO = "NOT_GIT_REPO",
    GIT_ERROR = "GIT_ERROR",
    NOT_INITIALIZED = "NOT_INITIALIZED",
    SYNC_REQUIRED = "SYNC_REQUIRED",
    CONFIG_ERROR = "CONFIG_ERROR",
    SERVICE_UNAVAILABLE = "SERVICE_UNAVAILABLE",
    FALKORDB_ERROR = "FALKORDB_ERROR",
    QDRANT_ERROR = "QDRANT_ERROR",
    NO_CREDENTIALS = "NO_CREDENTIALS",
    INVALID_CREDENTIALS = "INVALID_CREDENTIALS",
    AUTH_FAILED = "AUTH_FAILED",
    PLATFORM_ERROR = "PLATFORM_ERROR",
    API_ERROR = "API_ERROR",
    NETWORK_ERROR = "NETWORK_ERROR"
}
/**
 * Create a consistent error with code
 */
export declare class CVError extends Error {
    code: ErrorCode;
    details?: any | undefined;
    constructor(message: string, code?: ErrorCode, details?: any | undefined);
}
/**
 * Handle error consistently
 */
export declare function handleError(error: any, output: OutputManager): never;
//# sourceMappingURL=output.d.ts.map