import type { DeviceFeaturesRaw, DeviceState, DeviceStateIdentity, DeviceStatePatch, DeviceStateUpdateSource } from '../types'; type StoredDeviceState = DeviceState & { raw?: DeviceFeaturesRaw; }; export type DeviceStateUpdateResult = { state: StoredDeviceState; revision: number; source: DeviceStateUpdateSource; changedKeys: string[]; }; export declare function createEmptyDeviceState(identity?: Partial): StoredDeviceState; export declare class DeviceStateStore { private state; constructor(initial?: StoredDeviceState); getState(): StoredDeviceState | undefined; replace(state: StoredDeviceState, source: DeviceStateUpdateSource): DeviceStateUpdateResult; update(patch: DeviceStatePatch, source: DeviceStateUpdateSource): DeviceStateUpdateResult; } export declare const createPublicDeviceState: (state: StoredDeviceState) => DeviceState; export {}; //# sourceMappingURL=DeviceStateStore.d.ts.map