/**
 * Command parser and handler utilities for Yarn Spinner commands.
 * Commands like <<command_name arg1 arg2>> or <<command_name "arg with spaces">>
 */
import type { ExpressionEvaluator as Evaluator } from "./evaluator";
export interface ParsedCommand {
    name: string;
    args: string[];
    raw: string;
}
/**
 * Parse a command string like "command_name arg1 arg2" or "set variable value"
 */
export declare function parseCommand(content: string): ParsedCommand;
/**
 * Built-in command handlers for common Yarn Spinner commands.
 */
export declare class CommandHandler {
    private handlers;
    private variables;
    constructor(variables?: Record<string, unknown>);
    /**
     * Register a command handler.
     */
    register(name: string, handler: (args: string[], evaluator?: Evaluator) => void | Promise<void>): void;
    /**
     * Execute a parsed command.
     */
    execute(parsed: ParsedCommand, evaluator?: Evaluator): Promise<void>;
    private registerBuiltins;
}
