import { type ScenePlanDiagnostic } from "../diagnostics/diagnostics.js"; import { type ScenePatchContext } from "../model/types.js"; export type SceneCheckInputKind = "scene" | "blueprint" | "patch"; export interface SceneCheckOptions { readonly inputKind?: "auto" | SceneCheckInputKind; readonly context?: ScenePatchContext; /** Compile a valid blueprint when every resource has a supplied binding. */ readonly compile?: boolean; } export interface SceneCheckRequirement { readonly id: string; readonly version: string; readonly required: boolean; } export interface SceneCheckSummary { readonly id?: string; readonly name?: string; readonly resources: number; readonly entities: number; readonly materials: number; readonly materialBindings: number; readonly flows: number; readonly operations: number; readonly compiled: boolean; readonly planHash?: string; } /** Pure, deterministic scene input preflight used by SDK and tooling surfaces. */ export interface SceneCheckReport { readonly version: 1; readonly status: "valid" | "invalid"; readonly inputKind: SceneCheckInputKind | "unknown"; readonly source: "object" | "json-string"; readonly diagnostics: readonly ScenePlanDiagnostic[]; readonly requirements: readonly SceneCheckRequirement[]; readonly summary: SceneCheckSummary; } export declare function checkSceneInput(input: unknown, options?: SceneCheckOptions): SceneCheckReport; //# sourceMappingURL=check-scene-input.d.ts.map