export declare function validateInitSlug(value: string): void; export declare function parseFlagValue(args: string[], flag: string): string | undefined; /** * The ONE workspace-root resolver for CLI handlers. Precedence: * 1. an explicit `--workspace-root` / `--root` flag value, else * 2. the environment (`VCLAW_WORKSPACE` / `VIDEOCLAW_WORKSPACE`), else * 3. the canonical home (`~/videoclaw`). * * Replaces the old `parseFlagValue(args, '--root') ?? process.cwd()` fallback * every handler used, so a bare `vclaw video ...` (no --root, run from any * directory) operates on the single canonical home instead of whatever cwd the * shell happened to be in. Pass the handler's `args` to honor the flags; call * with no args for the env-or-home default. */ export declare function resolveWorkspaceRoot(args?: string[]): string; /** * Parse `--project ` (or another slug-bearing flag) and validate the * value against `isProjectSlug`, so a flag-looking token (`--project --json`) * or malformed slug fails fast as `invalid_slug` instead of being silently * accepted as a project name. Returns undefined when the flag is absent — * callers still decide whether the flag is required. */ export declare function parseProjectSlugFlag(args: string[], flag?: string): string | undefined; export declare function parseRepeatableFlag(args: string[], flag: string): string[]; export declare function parsePositiveIntegerFlag(args: string[], flag: string): number | undefined; export declare function parseNonNegativeIntegerFlag(args: string[], flag: string): number | undefined; export declare function parseSceneIndexFlag(args: string[]): number; export declare function parseSceneCharacters(args: string[]): Map; /** * Parse `--scene-color :` assignments into a sceneIndex → * grade-id map. The grade id is validated against {@link GRADE_FILTER_IDS} so a * typo fails fast rather than silently rendering ungraded. This is the authoring * front door for the narrative color language (the colorState the preview shows * and assemble applies per scene). */ export declare function parseSceneColorStates(args: string[]): Map; /** * Parse `--scene-voice :` assignments into a sceneIndex → * voice-preset map. The preset is a Flow v1 voice-narration name routed to the * veo-useapi transport's `flow.ts --voice` (omni-flash-only at the provider). */ export declare function parseSceneVoicePresets(args: string[]): Map; /** * Parse `--scene-ref-video :` assignments into a * sceneIndex → V2V edit source-media-id map (veo-useapi `flow.ts --ref-video`, * omni-flash-only). This is the dedicated video-to-video reference, NOT the * scene-chaining seed. */ export declare function parseSceneRefVideos(args: string[]): Map; /** * Parse `--scene-first-frame [,...]` (repeatable) into a * Set of scene indices that should use omni-flash First-Frame (startImage / I2V) * mode — gated by VCLAW_OMNI_FIRST_FRAME at execution time (build-ahead). Each * value may be a single index or a comma-separated list. */ export declare function parseSceneFirstFrames(args: string[]): Set; export declare function slugifyProject(value: string): string; export declare function shellQuote(value: string): string; export declare function requireSpendConfirmation(args: string[], dryRun: boolean, command: string, provider: string): void; export declare function parseExecutionProfileFlags(args: string[]): Record; export declare function applyPlatformExecutionProfileDefaults(platform: string | undefined, profile: Record): Record; export declare function buildBriefEventPayload(input: { artifactPath: string; title: string; targetRuntimeSeconds?: number; clipDurationSeconds?: number; genre?: string; platform?: string; executionProfile?: Record; source?: string; }): Record; //# sourceMappingURL=args.d.ts.map