/** * Stable error codes for vclaw CLI output. * * The TS enum + the JSON catalog at schemas/video/errors.json are kept in * sync by a test in cli-errors.test.ts. Add codes here AND in the JSON. * * Conventions: * - snake_case * - Specific over generic (prefer "image_not_found" over "not_found") * - Stable: never rename a code once shipped; deprecate and add a new one */ export declare const ALL_ERROR_CODES: readonly ["invalid_slug", "project_not_found", "missing_required_flag", "invalid_flag_value", "unknown_subcommand", "invalid_mode", "invalid_aspect_ratio", "image_not_found", "asset_not_found", "template_not_found", "character_not_found", "duplicate_project", "directory_not_writable", "invalid_role", "invalid_audio_format", "invalid_video_format", "unsupported_codec", "provider_unreachable", "adapter_command_failed", "env_var_missing", "native_transport_failed", "schema_validation_failed", "workspace_corrupt", "unexpected_internal_error", "tts_failed", "music_gen_failed", "soundtrack_no_backend", "pdf_parse_failed", "ffmpeg_failed", "audio_sync_drift", "storyboard_approval_required", "storyboard_review_stale", "execution_blocked_by_readiness", "spend_confirmation_required"]; export type ErrorCode = typeof ALL_ERROR_CODES[number]; /** * Maps each ErrorCode to its CLI exit code (1=user, 2=system, 3=gate). * Stays in sync with schemas/video/errors.json via the catalog test. */ export declare const EXIT_CODES: Record; export declare function exitCodeFor(code: ErrorCode): 1 | 2 | 3; export interface ErrorResponse { code: ErrorCode; message: string; details?: Record; } export declare function errorResponse(code: ErrorCode, message: string, details?: Record): ErrorResponse; /** * Throwable error that carries an ErrorCode. The top-level main() catch in * vclaw.ts unwraps VclawError into an ErrorResponse + appropriate ExitCode. */ export declare class VclawError extends Error { readonly code: ErrorCode; readonly details?: Record; constructor(code: ErrorCode, message: string, details?: Record); } //# sourceMappingURL=errors.d.ts.map