import type { AuthoringContext, AuthoringDiagnostic } from "./authoringContract"; import { type ComponentSpec } from "./componentSchema"; export interface AuthoringValidationOptions { /** Component contract to validate against. Defaults to the package schema. */ schema?: Record; /** Runtime/site capabilities available to this authored tree. */ availableContexts?: readonly AuthoringContext[]; /** Optional page/tree budget expressed in normalized low/medium/high cost points. */ performanceBudget?: number; /** Diagnostic path prefix. */ path?: string; } export interface AuthoringValidationResult { diagnostics: AuthoringDiagnostic[]; performanceCost: number; } /** * Validate one authored component tree against the shared component/authoring contract. * The function is pure so Atlas, the browser preview, and the compiler can use the * same semantic rules without introducing another source of truth. */ export declare function validateAuthoringTree(root: unknown, options?: AuthoringValidationOptions): AuthoringValidationResult; //# sourceMappingURL=authoringValidation.d.ts.map