/** * Normalize the small set of SceneAsset fields emitted by the 0.1.27 * ScriptablePack template before the current keyed runtime validates them. * * This is deliberately a boundary migration. Current authoring and runtime * types stay keyed and use `shadowFilter`; only old payloads carry numeric * ChildOf addresses or `pcfKernelSize`. */ export declare function migrateLegacySceneComponentFields(componentName: string, source: Record, addressByLocalId?: ReadonlyMap): Record; /** * Lift the pre-keyed SceneAsset array into the current keyed shape. * * The 0.1.27 template used `localId` for storage and `bindingKey` for the * gameplay-facing names. Keeping the binding key is essential: the runtime * resolves `player`, `camera`, and joints by that name, not by the old number. * This function is intentionally structural and accepts `unknown` only at the * compatibility boundary; current authoring types remain keyed. */ export declare function normalizeLegacySceneAsset(scene: unknown): import('@forgeax/engine-types').SceneAsset; //# sourceMappingURL=legacy.d.ts.map