import type { MotionPlan } from './artifacts.ts'; export type MotionCoverageOptions = { requiredRoutes?: string[]; operatorOff?: boolean; sections?: Record; }; /** Deliberately separate authoring responsibility from runtime/operator policy. */ export declare function motionCompositionPolicy(root: string, routes: string[]): MotionCoverageOptions; export declare function validateRouteComposition(plan: MotionPlan | undefined, routes: string[] | undefined, options?: MotionCoverageOptions): string[]; export declare function compositionBindingFailures(plan: MotionPlan | undefined, route: string, html: string): string[]; /** This is an incompleteness flag, never an aesthetic score or a positional quota. */ export declare function concentrationFailures(route: string, sections: { id: string; top: number; bottom: number; }[], scenes: { id: string; sectionId: string | null; top: number; bottom: number; active: boolean; }[], viewport: number): string[];