import type { ReplicationMetricsData, SyncStats } from './types.js'; import type { Logger } from 'pino'; import { EventEmitter } from 'events'; export declare class ReplicationMetrics extends EventEmitter { private readonly logger; private readonly metrics; private readonly syncHistory; private readonly maxHistorySize; constructor(logger: Logger); recordOperation(data: ReplicationMetricsData): void; recordSyncCompletion(stats: SyncStats): void; getReplicaMetrics(replicaId: string): { totalOperations: number; successfulOperations: number; failedOperations: number; averageDuration: number; operationsByType: Record; recentErrors: Array<{ timestamp: number; error: string; }>; }; getSyncStatistics(): { totalSyncs: number; successfulSyncs: number; failedSyncs: number; averageDuration: number; averageSyncedSessions: number; recentSyncs: SyncStats[]; }; clearReplicaMetrics(replicaId: string): void; clearAllMetrics(): void; exportMetrics(): { replicas: Record>; sync: ReturnType; }; } //# sourceMappingURL=replication-metrics.d.ts.map