import type { ClusterStateMap, EndpointType, MatterAccessory } from 'homebridge'; import type { OmniLinkPlatform } from '../../platform.js'; export interface BaseMatterAccessoryConfig { UUID: string; displayName: string; deviceType: EndpointType; context?: Record; clusters?: MatterAccessory['clusters']; handlers?: MatterAccessory['handlers']; parts?: MatterAccessory['parts']; } export declare abstract class MatterAccessoryBase implements MatterAccessory { protected readonly platform: OmniLinkPlatform; readonly UUID: string; readonly displayName: string; readonly deviceType: EndpointType; readonly serialNumber: string; readonly manufacturer: string; readonly model: string; readonly firmwareRevision: string; readonly hardwareRevision: string; readonly context: Record; readonly clusters?: MatterAccessory['clusters']; readonly handlers?: MatterAccessory['handlers']; readonly parts?: MatterAccessory['parts']; constructor(platform: OmniLinkPlatform, config: BaseMatterAccessoryConfig); protected updateState(cluster: K, attributes: Partial, partId?: string): Promise; protected updateState(cluster: string, attributes: Record, partId?: string): Promise; protected readState(cluster: K, partId?: string): Promise | undefined>; protected readState(cluster: string, partId?: string): Promise | undefined>; } //# sourceMappingURL=MatterAccessoryBase.d.ts.map