export declare class RaindropCliError extends Error { code: string; details?: Record | undefined; exitCode: number; constructor(message: string, code: string, details?: Record | undefined, exitCode?: number); toJSON(): object; } export declare class UsageError extends RaindropCliError { constructor(message: string, details?: Record); } export declare class ConfigError extends RaindropCliError { constructor(message: string, details?: Record); } export declare class ApiError extends RaindropCliError { statusCode?: number | undefined; constructor(message: string, statusCode?: number | undefined, details?: Record); } export declare class RateLimitError extends RaindropCliError { limit: number; resetTime: number; constructor(limit: number, resetTime: number); } export declare class TimeoutError extends RaindropCliError { timeoutSeconds: number; constructor(timeoutSeconds: number, details?: Record); } /** * Type guard to check if an error is a RaindropCliError. * Use this for safe type narrowing in catch blocks. */ export declare function isCliError(error: unknown): error is RaindropCliError; /** * Handle and output an error, then exit. * * When --debug is enabled: * - Shows error details for RaindropCliError * - Shows stack traces for all errors * * @param error - The error to handle * @param debugOverride - Override the global debug flag (for testing) */ export declare function handleError(error: unknown, debugOverride?: boolean): never; //# sourceMappingURL=errors.d.ts.map