One Logo Pool Ball
AppIntents · IOS API REFERENCE

AppSchema.ClockEntity

protocol · iOS 27.0+ · SDK 27.1

protocol ClockEntity : AppSchema.Kind

Identifies entity schemas in the clock domain.

Members (3)

get · iOS 27.0+

alarm

Swift declaration
var alarm: some AppSchemaEntity { get }

An entity schema for an alarm. To make your app's content available to Apple Intelligence, conform your ``AppEntity`` to a schema that describes your content to the system. If your app's functionality aligns with the `clock` domain and its content matches the `alarm` schema, you can generate the properties and protocol conformance the schema requires for your app entity implementation with the `@AppEntity( .clock.alarm)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an app entity that conforms to the `alarm` schema: ```swift @AppEntity(schema: .clock.alarm) struct AlarmEntity { // MARK: Static static let defaultQuery = AlarmEntityQuery() // MARK: Properties let id: <#Identifiable.ID#> var time: DateComponents var isEnabled: Bool var label: String? var recurrenceDays: Calendar.RecurrenceRule? var canSnooze: Bool var triggerState: <#AlarmTriggerState#> var displayRepresentation: DisplayRepresentation { <#DisplayRepresentation#> } // MARK: Query struct AlarmEntityQuery: EntityQuery { func entities(for identifiers: [AlarmEntity.ID]) async throws -> [AlarmEntity] { <#code#> } } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 27.0+

timer

Swift declaration
var timer: some AppSchemaEntity { get }

An entity schema for a timer. To make your app's content available to Apple Intelligence, conform your ``AppEntity`` to a schema that describes your content to the system. If your app's functionality aligns with the `clock` domain and its content matches the `timer` schema, you can generate the properties and protocol conformance the schema requires for your app entity implementation with the `@AppEntity( .clock.timer)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an app entity that conforms to the `timer` schema: ```swift @AppEntity(schema: .clock.timer) struct TimerEntity { // MARK: Static static let defaultQuery = TimerEntityQuery() // MARK: Properties let id: <#Identifiable.ID#> var duration: Duration var durationRemaining: Duration var state: <#TimerState#> var label: String? var isSleepTimer: Bool var displayRepresentation: DisplayRepresentation { <#DisplayRepresentation#> } // MARK: Query struct TimerEntityQuery: EntityQuery { func entities(for identifiers: [TimerEntity.ID]) async throws -> [TimerEntity] { <#code#> } } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

get · iOS 27.0+

stopwatch

Swift declaration
var stopwatch: some AppSchemaEntity { get }

An entity schema for a stopwatch. To make your app's content available to Apple Intelligence, conform your ``AppEntity`` to a schema that describes your content to the system. If your app's functionality aligns with the `clock` domain and its content matches the `stopwatch` schema, you can generate the properties and protocol conformance the schema requires for your app entity implementation with the `@AppEntity( .clock.stopwatch)` Swift macro. To make your app work with Siri, see <doc://com.apple.documentation/documentation/appintents/apple-intelligence-and-siri-ai>. The following example shows an app entity that conforms to the `stopwatch` schema: ```swift @AppEntity(schema: .clock.stopwatch) struct StopwatchEntity { // MARK: Static static let defaultQuery = StopwatchEntityQuery() // MARK: Properties let id: <#Identifiable.ID#> var laps: [Duration] var startTime: Date var pauseTime: Date? var state: <#StopwatchState#> var displayRepresentation: DisplayRepresentation { <#DisplayRepresentation#> } // MARK: Query struct StopwatchEntityQuery: EntityQuery { func entities(for identifiers: [StopwatchEntity.ID]) async throws -> [StopwatchEntity] { <#code#> } } } ``` The schema supports the following system experiences: - Siri - Shortcuts For more information about the App Intents framework and the experiences it supports, see <doc://com.apple.documentation/documentation/appintents/getting-started-with-the-app-intents-framework>.

Skipped declarations

No declarations were skipped in this snapshot.

All AppIntents types →