/** * VersionMigration.ts * * Schema versioning and backward-compatible migration. * Automatically upgrades old scene data to the current version. * * @module scene */ export interface MigrationStep { fromVersion: number; toVersion: number; name: string; migrate: (data: Record) => Record; } export interface MigrationResult { success: boolean; fromVersion: number; toVersion: number; stepsApplied: string[]; warnings: string[]; data: Record; } export interface MigrationLog { timestamp: number; fromVersion: number; toVersion: number; stepsApplied: string[]; dataHash: string; } export declare const CURRENT_SCHEMA_VERSION = 5; export declare class VersionMigration { private migrations; private logs; constructor(); register(step: MigrationStep): void; getMigrations(): MigrationStep[]; getMigrationCount(): number; /** * Migrate data from its current version to the target version. */ migrate(data: Record, targetVersion?: number): MigrationResult; /** * Check if data needs migration. */ needsMigration(data: Record): boolean; /** * Get the version of the given data. */ getDataVersion(data: Record): number; getLogs(): MigrationLog[]; clearLogs(): void; private registerBuiltIns; private simpleHash; } //# sourceMappingURL=VersionMigration.d.ts.map