---
title: HMEvent
framework: homekit
role: symbol
role_heading: Class
path: homekit/hmevent
---

# HMEvent

The abstract base class for a HomeKit event.

## Declaration

```swift
class HMEvent
```

## Topics

### Getting information about the event

- [uniqueIdentifier](homekit/hmevent/uniqueidentifier.md)
- [isSupported(for:)](homekit/hmevent/issupported(for:).md)

### Initializers

- [init()](homekit/hmevent/init().md)

### Type Methods

- [new()](homekit/hmevent/new().md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Inherited By

- [HMCharacteristicEvent](homekit/hmcharacteristicevent.md)
- [HMCharacteristicThresholdRangeEvent](homekit/hmcharacteristicthresholdrangeevent.md)
- [HMLocationEvent](homekit/hmlocationevent.md)
- [HMPresenceEvent](homekit/hmpresenceevent.md)
- [HMTimeEvent](homekit/hmtimeevent.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Setting trigger events

- [events](homekit/hmeventtrigger/events.md)
- [updateEvents(_:completionHandler:)](homekit/hmeventtrigger/updateevents(_:completionhandler:).md)
- [Location events](homekit/location-events.md)
- [Time events](homekit/time-events.md)
- [Characteristic events](homekit/characteristic-events.md)
- [Presence events](homekit/presence-events.md)
