@neuroequality/neuroadapt-core
Version:
Core sensory, cognitive, and preference management for NeuroAdapt SDK
34 lines (33 loc) • 1.05 kB
TypeScript
import { Preferences } from './schemas.js';
/**
* Migration function type
*/
export type MigrationFunction = (preferences: unknown) => Promise<unknown> | unknown;
/**
* Migration registry for handling schema version changes
*/
export declare class MigrationRegistry {
private readonly migrations;
/**
* Register a migration from one version to another
*/
registerMigration(fromVersion: string, migration: MigrationFunction): void;
/**
* Apply migrations to bring preferences to current schema version
*/
migrate(preferences: unknown): Promise<Preferences>;
/**
* Get the migration path from source to target version
*/
private getMigrationPath;
/**
* Ensure preferences have valid structure with defaults for missing fields
*/
private ensureValidStructure;
/**
* Get default preferences for current schema version
*/
private getDefaultPreferences;
}
export declare const defaultMigrationRegistry: MigrationRegistry;
//# sourceMappingURL=migration.d.ts.map