import { OnModuleDestroy } from '@nestjs/common'; import { DevicesService } from '../../devices/services/devices.service'; import { PlatformRegistryService } from '../../devices/services/platform.registry.service'; import { SpaceContextSnapshot } from './space-context-snapshot.service'; import { SpacesService } from './spaces.service'; export interface UndoEntry { id: string; spaceId: string; capturedAt: Date; snapshot: SpaceContextSnapshot; actionDescription: string; intentCategory: 'lighting' | 'climate' | 'covers' | 'media'; } export interface UndoResult { success: boolean; restoredDevices: number; failedDevices: number; message: string; } export declare class SpaceUndoHistoryService implements OnModuleDestroy { private readonly spacesService; private readonly devicesService; private readonly platformRegistryService; private readonly logger; private readonly config; private readonly undoStacks; private cleanupTimer; constructor(spacesService: SpacesService, devicesService: DevicesService, platformRegistryService: PlatformRegistryService); onModuleDestroy(): void; getEntryTtlMs(): number; pushSnapshot(snapshot: SpaceContextSnapshot, actionDescription: string, intentCategory: 'lighting' | 'climate' | 'covers' | 'media'): UndoEntry; peekUndoEntry(spaceId: string): UndoEntry | null; executeUndo(spaceId: string): Promise; clearSpace(spaceId: string): void; private restoreSnapshot; private restoreLightState; private restoreClimateState; private restoreCoverState; private buildLightRestoreCommands; private findProperty; private hexToRgb; private isExpired; private cleanupExpiredEntries; private generateId; }