import type { ChangeEvent } from './git-sync-adapter.js';
import type { Database } from '../db/database.js';
export declare class ChangeTracker {
    private static instance;
    private syncAdapters;
    private enabled;
    private db;
    private constructor();
    static getInstance(): ChangeTracker;
    initialize(db: Database): void;
    disable(): void;
    enable(): void;
    recordChange(change: Omit<ChangeEvent, 'id' | 'timestamp' | 'deviceId'>, realmId?: string): Promise<void>;
    recordLoreChange(operation: ChangeEvent['operation'], loreId: string, realmId: string, data?: any): Promise<void>;
    recordRealmChange(operation: ChangeEvent['operation'], realmId: string, data?: any): Promise<void>;
    recordRelationChange(operation: ChangeEvent['operation'], fromLoreId: string, toLoreId: string, type: string, realmId: string, data?: any): Promise<void>;
    cleanup(): Promise<void>;
}
//# sourceMappingURL=change-tracker.d.ts.map