The following declarations are provided by module GoogleHomeSDK.
- `


  ### [AnyBitmap](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AnyBitmap)


  ` A type-erased `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Bitmap`

  #### Declaration

  Swift

      struct AnyBitmap

      extension AnyBitmap : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Bitmap, Equatable, ExpressibleByArrayLiteral, Hashable, OptionSet, RawRepresentable, Sendable, SendableMetatype, SetAlgebra

- `


  ### [AnyEnum](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AnyEnum)


  ` A type-erased `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Enum`

  #### Declaration

  Swift

      struct AnyEnum

      extension AnyEnum : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Enum, Equatable, Hashable, RawRepresentable, Sendable, SendableMetatype

- `


  ### [AnyEvent](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AnyEvent)


  ` Struct holding information about a generic, encoded event that has yet to be parsed into its
  corresponding concrete type.

  #### Declaration

  Swift

      struct AnyEvent

      extension AnyEvent : Sendable, SendableMetatype

- `


  ### [AnyField](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AnyField)


  ` A type-erased `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Field`.

  #### Declaration

  Swift

      struct AnyField

      extension AnyField : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Field, Hashable, RawRepresentable, Sendable, SendableMetatype

- `


  ### [AnyStruct](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AnyStruct)


  ` A type-erased `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable`

  #### Declaration

  Swift

      struct AnyStruct

      extension AnyStruct : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Equatable, Hashable, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [AnyAutomationEntity](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/AnyAutomationEntity)


  ` Undocumented

  #### Declaration

  Swift

      enum AnyAutomationEntity

      extension AnyAutomationEntity : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Equatable, Equatable, Escapable, Hashable, Hashable, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [AnyAutomationValue](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/AnyAutomationValue)


  ` Represents a constant value in the automation graph.

  #### Declaration

  Swift

      enum AnyAutomationValue

      extension AnyAutomationValue : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [AutomationValue](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP)


  ` Supported automation value types.

  #### Declaration

  Swift

      protocol AutomationValue : Hashable, Sendable

- `


  ### [AutomationEntry](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AutomationEntry)


  ` Undocumented

  #### Declaration

  Swift

      struct AutomationEntry

      extension AutomationEntry : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [AutomationMap](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/AutomationMap)


  ` Map of automation values.

  #### Declaration

  Swift

      protocol AutomationMap : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP

- `


  ### [AutomationValueArray](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK20AutomationValueArrayP)


  ` Array of automation values.

  #### Declaration

  Swift

      protocol AutomationValueArray : Collection where Self.Element : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP

- `


  ### [OptionalAutomationValueArray](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/OptionalAutomationValueArray)


  ` Optional array of automation values.

  #### Declaration

  Swift

      protocol OptionalAutomationValueArray

- `


  ### [OptionalAutomationValue](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/OptionalAutomationValue)


  ` Optional-wrapped automation value.

  #### Declaration

  Swift

      protocol OptionalAutomationValue

- `


  ### [OptionalComparable](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK18OptionalComparableP)


  ` Optional-wrapped comparable type.

  #### Declaration

  Swift

      protocol OptionalComparable

- `


  ### [OptionalNumeric](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15OptionalNumericP)


  ` Optional-wrapped numeric type.

  #### Declaration

  Swift

      protocol OptionalNumeric

- `


  ### [OptionalSignedInteger](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK21OptionalSignedIntegerP)


  ` Optional-wrapped signed integer type.

  #### Declaration

  Swift

      protocol OptionalSignedInteger

- `


  ### [OptionalUnsignedInteger](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK23OptionalUnsignedIntegerP)


  ` Optional-wrapped unsigned integer type.

  #### Declaration

  Swift

      protocol OptionalUnsignedInteger

- `


  ### [AnyNodeCandidate](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AnyNodeCandidate)


  ` Undocumented

  #### Declaration

  Swift

      struct AnyNodeCandidate

      extension AnyNodeCandidate : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [AppManagedAutomationConfig](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AppManagedAutomationConfig)


  ` Configuration for app-managed automations.

  Unlike user-managed automations, app-managed automations are characterized by:
  - Structure Ownership: They execute using structure-based credentials at runtime instead of being tied to the credentials of the user who originally created them.
  - Household-wide Management: They can be viewed, updated, or deleted by any active member authorized on the structure.

  #### Declaration

  Swift

      struct AppManagedAutomationConfig

      extension AppManagedAutomationConfig : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [AttributeFieldDetails](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeFieldDetails)


  ` Details about an attribute field.

  #### Declaration

  Swift

      struct AttributeFieldDetails

      extension AttributeFieldDetails : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/FieldDetails, Hashable, Sendable, SendableMetatype

- `


  ### [BaseAutomation](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BaseAutomation)


  ` A base protocol for all `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Automation` instances.

  #### Declaration

  Swift

      protocol BaseAutomation : Identifiable, Sendable

- `


  ### [DraftAutomation](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15DraftAutomationa)


  ` User-specifiable fields of the `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Automation`. Used primarily for automation creation.

  #### Declaration

  Swift

      typealias DraftAutomation = https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BaseAutomation

- `


  ### [Automation](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Automation)


  ` The main representation of an automation, containing metadata fields as well as the automation
  graph containing automation nodes, including `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Starter`, `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Condition`, and `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Action`
  instances, and more.

  #### Declaration

  Swift

      protocol Automation : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BaseAutomation, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/CustomAppDataSupporting

- `


  ### [MutableAutomationData](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Classes/MutableAutomationData)


  ` Undocumented

  #### Declaration

  Swift

      final class MutableAutomationData

- `


  ### [AnyNode](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AnyNode)


  ` A type-erased `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node`

  #### Declaration

  Swift

      struct AnyNode

      extension AnyNode : Equatable, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, Sendable, SendableMetatype

- `


  ### [Node](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node)


  ` A base protocol representing a 'node' for the automation graph.
  All parts of the automation graph must conform to the `Node` protocol.

  #### Declaration

  Swift

      protocol Node : Hashable, Identifiable, Sendable where Self.ID == String

      extension Node : Equatable, SendableMetatype

- `


  ### [Flow](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Flow)


  ` A base protocol for all 'Flow' Nodes.

  #### Declaration

  Swift

      protocol Flow : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node

- `


  ### [SequentialFlow](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/SequentialFlow)


  ` A set of one or more Automation Nodes that execute sequentially.

  #### Declaration

  Swift

      struct SequentialFlow

      extension SequentialFlow : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Flow, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, Sendable, SendableMetatype

- `


  ### [ParallelFlow](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ParallelFlow)


  ` A set of one or more Automation Nodes that execute in parallel.

  #### Declaration

  Swift

      struct ParallelFlow

      extension ParallelFlow : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Flow, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, Sendable, SendableMetatype

- `


  ### [SelectFlow](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/SelectFlow)


  ` A node that, when it contains more than one `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node`, allows only one `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node` to execute.

  #### Declaration

  Swift

      struct SelectFlow

      extension SelectFlow : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Flow, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, Sendable, SendableMetatype

- `


  ### [IfFlow](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/IfFlow)


  ` A `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node` that executes a sequence of nodes if a condition is true.
  If the if-then condition is false, it will evaluate the else-if clauses in order.
  If none of the clauses execute, the else-then clause will execute if it is defined.
  Otherwise, the next `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node` in the parent flow will execute.

  `IfFlow` nodes are not permitted within a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ParallelFlow`.

  #### Declaration

  Swift

      struct IfFlow

      extension IfFlow : Equatable, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, Sendable, SendableMetatype

- `


  ### [IfChain](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/IfChain)


  ` A chain of `https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6IfThenV` clauses that can be extended with `elseIf` or ended with `orElse`.

  #### Declaration

  Swift

      struct IfChain

      extension IfChain : Equatable, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, Sendable, SendableMetatype

- `


  ### [ManualStarter](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ManualStarter)


  ` A starter that allows the user to manually activate an automation.

  #### Declaration

  Swift

      struct ManualStarter

      extension ManualStarter : Equatable, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, Sendable, SendableMetatype

- `


  ### [Delay](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Delay)


  ` A `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node` that will delay execution for a specified length of time.

  #### Declaration

  Swift

      struct Delay

      extension Delay : Equatable, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, Sendable, SendableMetatype

- `


  ### [Suppression](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Suppression)


  ` A `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node` that will terminate execution of all the following nodes
  if the automation is triggered again within the specified time range.

  #### Declaration

  Swift

      struct Suppression

      extension Suppression : Equatable, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, Sendable, SendableMetatype

- `


  ### [Starter](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Starter)


  ` Base protocol for all Starters in the automation graph.

  #### Declaration

  Swift

      protocol Starter : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeWithOutput

- `


  ### [EventStarter](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter)


  ` Struct for all event-based starters, relying on an event to trigger the automation.

  #### Declaration

  Swift

      struct EventStarter

      extension EventStarter : Copyable, CustomStringConvertible, Equatable, Escapable, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeWithOutput, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Starter

- `


  ### [AttributeStarter](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter)


  ` Struct for all attribute-based starters relying on the value of a trait.

  #### Declaration

  Swift

      struct AttributeStarter

      extension AttributeStarter : Copyable, CustomStringConvertible, Equatable, Escapable, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeWithOutput, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Starter

- `


  ### [Condition](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Condition)


  ` Base struct for all conditions in the automation graph.

  #### Declaration

  Swift

      struct Condition

      extension Condition : Copyable, Equatable, Escapable, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, Sendable, SendableMetatype

- `


  ### [Action](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Action)


  ` Base struct for all actions in the automation graph.

  #### Declaration

  Swift

      struct Action

      extension Action : Copyable, CustomStringConvertible, Equatable, Escapable, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, Sendable, SendableMetatype

- `


  ### [ActionBehavior](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/ActionBehavior)


  ` Represents the behavior of an action.

  #### Declaration

  Swift

      protocol ActionBehavior : Sendable

- `


  ### [AutomationCommand](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AutomationCommand)


  ` A trait command used in an automation action.

  #### Declaration

  Swift

      struct AutomationCommand

      extension AutomationCommand : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/ActionBehavior, Copyable, Copyable, CustomStringConvertible, Equatable, Escapable, Escapable, Sendable, SendableMetatype

- `


  ### [Update](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Update)


  ` Trait attribute update used in an automation action.

  #### Declaration

  Swift

      struct Update

      extension Update : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/ActionBehavior, Copyable, Copyable, CustomStringConvertible, Equatable, Escapable, Escapable, Sendable, SendableMetatype

- `


  ### [StateReader](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader)


  ` A class that accesses a trait's state, used for `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Condition` instances.

  #### Declaration

  Swift

      struct StateReader

      extension StateReader : Equatable, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeWithOutput, Sendable, SendableMetatype

- `


  ### [NodeWithOutput](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeWithOutput)


  ` A protocol that specifies when a node that can produce output,
  such as `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Starter` or `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader`.

  #### Declaration

  Swift

      protocol NodeWithOutput : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node

- `


  ### [Parameter](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Parameter)


  ` A Parameter contains the identifier and value of a parameter for a starter, command, or event.

  #### Declaration

  Swift

      struct Parameter

      extension Parameter : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [JoinSemanticType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/JoinSemanticType)


  ` Enum to define the ways of coordinating the execution of multiple concurrent
  operations in a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ParallelFlow`.

  #### Declaration

  Swift

      enum JoinSemanticType

      extension JoinSemanticType : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [Assignment](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Assignment)


  ` Struct that represents the assignment of a value to a variable.

  #### Declaration

  Swift

      struct Assignment

      extension Assignment : Equatable, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeWithOutput, Sendable, SendableMetatype

- `


  ### [automation(id:structureID:name:description:isActive:clientFeatureGroup:managingAppDisplayNames:maxExecutionCount:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK10automation2id11structureID4name11description8isActive18clientFeatureGroup23managingAppDisplayNames17maxExecutionCount_AA14BaseAutomation_pSS_S3SSbSSSgSayAA13LocalizedTextVGs5Int32VSgSayAA4Node_pGyXEtF)


  ` Build an automation.

  #### Declaration

  Swift

      func automation(id: String = "", structureID: String = "", name: String = "", description: String = "UNSPECIFIED_DESCRIPTION", isActive: Bool = true, clientFeatureGroup: String? = nil, managingAppDisplayNames: [https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/LocalizedText] = [], maxExecutionCount: Int32? = nil, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder _ sequentialNodes: () -> [any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node]) -> any https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15DraftAutomationa

  #### Parameters

  |---|---|
  | ` id ` | The ID of the automation. Defaults to empty string. If empty, the automation will be considered as a new automation. |
  | ` structureID ` | The structure ID of the automation. Defaults to empty string. If empty, will be populated with the structure ID of the current structure on create/update. |
  | ` name ` | The name of the automation, must be specified and not empty. |
  | ` description ` | The description of the automation. |
  | ` isActive ` | Whether the automation is active; defaults to true. |
  | ` clientFeatureGroup ` | Unique identifier of the client feature group that the automation belongs to. Assigning a `clientFeatureGroup` allows the automation to be application-managed. |
  | ` managingAppDisplayNames ` | Localized human readable names of the managing applications. When an application creates or manages an automation on behalf of a user, it should set this field so that automation activity can be attributed to the application. When the automation executes, the platform uses these localized names to display clear branding and attribution to end users. Defaults to empty array if not set. |
  | ` maxExecutionCount ` | The maximum number of times the automation can be executed. Defaults to nil if not set. |

- `


  ### [sequential(_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK10sequentialyAA14SequentialFlowVSayAA4Node_pGyXEF)


  ` Build a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/SequentialFlow` from a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder`.

  #### Declaration

  Swift

      func sequential(https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder _ nodes: () -> [any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node]) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/SequentialFlow

- `


  ### [parallel(_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK8parallelyAA12ParallelFlowVSayAA4Node_pGyXEF)


  ` Build a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ParallelFlow` from a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder`.

  #### Declaration

  Swift

      func parallel(https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder _ nodes: () -> [any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node]) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ParallelFlow

- `


  ### [select(_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6selectyAA10SelectFlowVSayAA4Node_pGyXEF)


  ` Build a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/SelectFlow` from a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder`.

  #### Declaration

  Swift

      func select(https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder _ nodes: () -> [any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node]) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/SelectFlow

- `


  ### [starter(_:_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA16AttributeStarterVGAA0B6DeviceV_AA0I4Type_pXpxmtAA5TraitRzlF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to a device-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter` from the given `device`,
  `deviceType`, and `trait`.

  The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` can be provided to a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder` to add the underlying `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter`
  to a flow and used to select the field to read from the corresponding trait.

  #### Declaration

  Swift

      func starter<T>(_ device: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/HomeDevice, _ deviceType: any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DeviceType.Type, _ trait: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

- `


  ### [starter(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA16AttributeStarterVGAA18AutomationPartPathV_xmtAA5TraitRzlF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to a device-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter` from the given `path`, and
  `trait`.

  The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` can be provided to a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder` to add the underlying
  `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter` to a flow and used to select the field to read from the corresponding
  trait.

  #### Declaration

  Swift

      func starter<T>(_ path: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AutomationPartPath, _ trait: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

- `


  ### [starter(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA16AttributeStarterVGAA0E10ExpressionVyAA19AnyAutomationEntityOG_xmtAA5TraitRzlF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to an expression-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter`.

  The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` can be provided to a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder` to add the underlying `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter`
  to a flow and used to select the field to read from the corresponding trait.

  #### Declaration

  Swift

      func starter<T>(_ entityExpression: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/AnyAutomationEntity>, _ trait: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

- `


  ### [starter(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA16AttributeStarterVGAA0E10ExpressionVySayAA0E12EntityDeviceVGG_xmtAA5TraitRzlF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to a list-returning expression-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter`.

  The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` can be provided to a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder` to add the underlying `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter`
  to a flow and used to select the field to read from the corresponding trait.

  #### Declaration

  Swift

      func starter<T>(_ entityExpression: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<[https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK17TypedEntityDeviceV]>, _ trait: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

- `


  ### [starter(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA16AttributeStarterVGAA9StructureV_xmtAA5TraitRzlF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to a structure-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter` from the given `structure`
  and `trait`.

  The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` can be provided to a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder` to add the underlying `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter`
  to a flow and used to select the field to read from the corresponding trait.

  #### Declaration

  Swift

      func starter<T>(_ structure: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Structure, _ trait: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AttributeStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

- `


  ### [starter(_:_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA12EventStarterVGAA0B6DeviceV_AA0I4Type_pXpxmtAA0G0RzlF)


  ` Creates a device-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter` from the given `device`, `deviceType`, and `event`.

  #### Declaration

  Swift

      func starter<T>(_ device: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/HomeDevice, _ deviceType: any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DeviceType.Type, _ event: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event

- `


  ### [starter(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA12EventStarterVGAA18AutomationPartPathV_xmtAA0G0RzlF)


  ` Creates a device-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter` from the given `path`, and `event`.

  #### Declaration

  Swift

      func starter<T>(_ path: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AutomationPartPath, _ event: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event

- `


  ### [starter(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA12EventStarterVGAA0E10ExpressionVyAA19AnyAutomationEntityOG_xmtAA0G0RzlF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to a expression-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter`.

  #### Declaration

  Swift

      func starter<T>(_ entityExpression: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/AnyAutomationEntity>, _ event: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event

- `


  ### [starter(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA12EventStarterVGAA0E10ExpressionVySayAA0E12EntityDeviceVGG_xmtAA0G0RzlF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to a expression-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter`.

  #### Declaration

  Swift

      func starter<T>(_ entityExpression: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<[https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK17TypedEntityDeviceV]>, _ event: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event

  #### Parameters

  |---|---|
  | ` entityExpression ` | The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression` representing the entity or entities to associate with the starter. |
  | ` event ` | The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event` associated with the starter. |

  #### Return Value

  The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to the `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter`.
- `


  ### [starter(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA12EventStarterVGAA9StructureV_xmtAA0G0RzlF)


  ` Creates a structure-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter` from the given `structure` and `event`.

  #### Declaration

  Swift

      func starter<T>(_ structure: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Structure, _ event: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event

- `


  ### [starter(_:_:_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA12EventStarterVGAA0B6DeviceV_AA0I4Type_pXpxmSayAA9ParameterVGyXEtAA0G0RzlF)


  ` Creates a device-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter` from the given `device`, `deviceType`, `event`, and
  `parameters`.

  #### Declaration

  Swift

      func starter<T>(_ device: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/HomeDevice, _ deviceType: any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DeviceType.Type, _ event: T.Type, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ParameterBuilder<T> _ parameters: () -> [https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Parameter]) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event

- `


  ### [starter(_:_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA12EventStarterVGAA18AutomationPartPathV_xmSayAA9ParameterVGyXEtAA0G0RzlF)


  ` Creates a device-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter` from the given `path`, `event`, and
  `parameters`.

  #### Declaration

  Swift

      func starter<T>(_ path: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AutomationPartPath, _ event: T.Type, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ParameterBuilder<T> _ parameters: () -> [https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Parameter]) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event

- `


  ### [starter(_:_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA12EventStarterVGAA0E10ExpressionVyAA19AnyAutomationEntityOG_xmSayAA9ParameterVGyXEtAA0G0RzlF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to a expression-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter` with the given `parameters`.

  #### Declaration

  Swift

      func starter<T>(_ entityExpression: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/AnyAutomationEntity>, _ event: T.Type, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ParameterBuilder<T> _ parameters: () -> [https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Parameter]) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event

- `


  ### [starter(_:_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA12EventStarterVGAA0E10ExpressionVySayAA0E12EntityDeviceVGG_xmSayAA9ParameterVGyXEtAA0G0RzlF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to a expression-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter` with the given `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Parameter` array.

  #### Declaration

  Swift

      func starter<T>(_ entityExpression: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<[https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK17TypedEntityDeviceV]>, _ event: T.Type, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ParameterBuilder<T> _ parameters: () -> [https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Parameter]) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event

  #### Parameters

  |---|---|
  | ` entityExpression ` | The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression` representing the entity or entities to associate with the starter. |
  | ` event ` | The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event` associated with the starter. |
  | ` parameters ` | The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Parameter` array to associate with the starter. |

  #### Return Value

  The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to the `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter`.
- `


  ### [starter(_:_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK7starteryAA14TypedReferenceVyxAA12EventStarterVGAA9StructureV_xmSayAA9ParameterVGyXEtAA0G0RzlF)


  ` Creates a structure-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter` from the given `structure`, `event`, and `parameters`.

  #### Declaration

  Swift

      func starter<T>(_ structure: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Structure, _ event: T.Type, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ParameterBuilder<T> _ parameters: () -> [https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Parameter]) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventStarter> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event

- `


  ### [stateReader(_:_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK11stateReaderyAA14TypedReferenceVyxAA05StateE0VGAA0B6DeviceV_AA0I4Type_pXpxmtAA5TraitRzlF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to a device-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader` from the given `device`,
  `deviceType`, and `trait`.

  The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` can be provided to a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder` to add the underlying `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader`
  to a flow and used to select the field to read from the corresponding trait.

  #### Declaration

  Swift

      func stateReader<T>(_ device: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/HomeDevice, _ deviceType: any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DeviceType.Type, _ trait: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

- `


  ### [stateReader(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK11stateReaderyAA14TypedReferenceVyxAA05StateE0VGAA18AutomationPartPathV_xmtAA5TraitRzlF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader` from the given `path`, and `trait`.

  The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` can be provided to a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder` to add the underlying `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader`
  to a flow and used to select the field to read from the corresponding trait.

  #### Declaration

  Swift

      func stateReader<T>(_ path: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AutomationPartPath, _ trait: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

- `


  ### [stateReader(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK11stateReaderyAA14TypedReferenceVyxAA05StateE0VGAA0F10ExpressionVyAA19AnyAutomationEntityOG_xmtAA5TraitRzlF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to an expression-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader` from the given `expression`,
  and `trait`.

  The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` can be provided to a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder` to add the underlying `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader`
  to a flow and used to select the field to read from the corresponding trait.

  #### Declaration

  Swift

      func stateReader<T>(_ entityExpression: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/AnyAutomationEntity>, _ trait: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

- `


  ### [stateReader(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK11stateReaderyAA15TypedExpressionVySDyAA0F12EntityDeviceVAA0F5TraitVyxGGGADySayAFGG_xmtAA0J0RzlF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to an expression-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader` from the given `expression`,
  and `trait`.

  The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` can be provided to a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder` to add the underlying `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader`
  to a flow and used to select the field to read from the corresponding trait.

  #### Declaration

  Swift

      func stateReader<T>(_ entityExpression: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<[https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK17TypedEntityDeviceV]>, _ trait: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<[https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK17TypedEntityDeviceV : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK10TypedTraitV<T>]> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

- `


  ### [stateReader(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK11stateReaderyAA14TypedReferenceVyxAA05StateE0VGAA9StructureV_xmtAA5TraitRzlF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to a structure-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader` from the given `structure`
  and `trait`.

  The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` can be provided to a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder` to add the underlying `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader`
  to a flow and used to select the field to read from the corresponding trait.

  #### Declaration

  Swift

      func stateReader<T>(_ structure: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Structure, _ trait: T.Type) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

- `


  ### [variable()](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK8variableAA14TypedReferenceVyxAA10AssignmentVGylF)


  ` Creates a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` to a structure-based `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Assignment` with given `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait`.
  The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference` can be provided to a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder` to add the underlying `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Assignment`
  to a flow and used to assign expression to the corresponding trait.
  `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UnknownExpression` with empty Data() is assigned by default.
  In order to assign expression or value, call '.assign'
  to already created TypedReference

  #### Declaration

  Swift

      func variable<T>() -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Assignment>

- `


  ### [condition(for:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK9condition3for_AA9ConditionVs8DurationVSg_AA15TypedExpressionVySbGyXEtF)


  ` Creates a condition.

  #### Declaration

  Swift

      func condition(for duration: Duration? = nil, _ expression: () -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<Bool>) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Condition

  #### Parameters

  |---|---|
  | ` expression ` | Builder for the boolean `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression` of the condition. |

  #### Return Value

  The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Condition` node.
- `


  ### [fieldSelect(from:selectedField:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK11fieldSelect4from13selectedFieldAA15TypedExpressionVyq0_GAA0I9ReferenceVyxq_G_AA0H0_ptAA14NodeWithOutputR_AA15AutomationValueR0_r1_lF)


  ` Internal API exposed for codegen. Do NOT use.

  #### Declaration

  Swift

      func fieldSelect<T, N, V>(from selectFrom: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference<T, N>, selectedField: any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Field) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<V> where N : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeWithOutput, V : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP

- `


  ### [fieldSelect(from:selectedField:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK11fieldSelect4from13selectedFieldAA15TypedExpressionVyq_GAFyxG_AA0H0_ptAA15AutomationValueRzAaJR_r0_lF)


  ` Internal API exposed for codegen. Do NOT use.

  #### Declaration

  Swift

      func fieldSelect<T, V>(from selectFrom: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<T>, selectedField: any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Field) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<V> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, V : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP

- `


  ### [fieldSelect(from:selectedField:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK11fieldSelect4from13selectedFieldAA15TypedExpressionVyxGAA0J0_p_AA0H0_ptAA15AutomationValueRzlF)


  ` Internal API exposed for codegen. Do NOT use.

  #### Declaration

  Swift

      func fieldSelect<V>(from selectFrom: any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, selectedField: any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Field) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<V> where V : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP

- `


  ### [manualStarter()](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK13manualStarterAA06ManualE0VyF)


  ` Build a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ManualStarter` node.

  #### Declaration

  Swift

      func manualStarter() -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ManualStarter

- `


  ### [delay(for:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK5delay3forAA5DelayVs8DurationV_tF)


  ` Build a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Delay` node with the given `duration`.

  #### Declaration

  Swift

      func delay(for duration: Duration) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Delay

- `


  ### [suppress(for:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK8suppress3forAA11SuppressionVs8DurationV_tF)


  ` Build a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Suppression` node with the given `duration`.

  #### Declaration

  Swift

      func suppress(for duration: Duration) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Suppression

- `


  ### [ifThen(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ifThenyAA7IfChainVAA15TypedExpressionVySbG_AA4Node_pyctF)


  ` Builds an `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/IfChain` starting with an `ifThen` clause.

  #### Declaration

  Swift

      func ifThen(_ condition: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<Bool>, _ node: @escaping () -> any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/IfChain

  #### Parameters

  |---|---|
  | ` condition ` | The boolean `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression` that must be true to proceed with `node`. |
  | ` node ` | A closure returning the `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node` to proceed with if the `condition` is true. |

  #### Return Value

  An `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/IfChain` which can be optionally extended with `elseIf` or ended with `orElse`.
- `


  ### [action(_:_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6actionyAA6ActionVAA0B6DeviceV_AA0F4Type_pXpAA0E8Behavior_pyXEtF)


  ` Build a device-based action with the given `device`, `deviceType`, and `behavior`.

  #### Declaration

  Swift

      func action(_ device: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/HomeDevice, _ deviceType: any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DeviceType.Type, _ behavior: () -> any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/ActionBehavior) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Action

- `


  ### [action(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6actionyAA6ActionVAA18AutomationPartPathV_AA0E8Behavior_pyXEtF)


  ` Build a device-based action with the given `path`, and `behavior`.

  #### Declaration

  Swift

      func action(_ path: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AutomationPartPath, _ behavior: () -> any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/ActionBehavior) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Action

- `


  ### [action(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6actionyAA6ActionVAA15TypedExpressionVyAA19AnyAutomationEntityOG_AA0E8Behavior_pyXEtF)


  ` Build an expression-based action with the given `expression` and `behavior`.

  #### Declaration

  Swift

      func action(_ entityExpression: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/AnyAutomationEntity>, _ behavior: () -> any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/ActionBehavior) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Action

- `


  ### [action(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6actionyAA6ActionVAA15TypedExpressionVySayAA0F12EntityDeviceVGG_AA0E8Behavior_pyXEtF)


  ` Build an expression-based action with the given list-based `expression` and `behavior`.

  #### Declaration

  Swift

      func action(_ entityExpression: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<[https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK17TypedEntityDeviceV]>, _ behavior: () -> any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/ActionBehavior) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Action

- `


  ### [action(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6actionyAA6ActionVAA9StructureV_AA0E8Behavior_pyXEtF)


  ` Build a structure-based action with the given `structure` and `behavior`.

  #### Declaration

  Swift

      func action(_ structure: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Structure, _ behavior: () -> any https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/ActionBehavior) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Action

- `


  ### [update(_:_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6updateyAA6UpdateVxm_yAA7UpdaterCyxGXEtAA5TraitRzlF)


  ` Add an attribute update action for the given `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait`.

  #### Declaration

  Swift

      func update<T>(_ trait: T.Type = T.self, _ block: (https://developers.home.google.com/reference/swift/GoogleHomeSDK/Classes/Updater<T>) -> Void) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Update where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

- `


  ### [Updater](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Classes/Updater)


  ` A builder for `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait` attribute updates.

  Methods will be surfaced, based on the associated `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait`, to allow setting the writable
  attributes.

  #### Declaration

  Swift

      final class Updater<T> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

- `


  ### [FlowBuilder](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FlowBuilder)


  ` A result builder that builds a list of nodes for a flow.

  #### Declaration

  Swift

      @resultBuilder
      struct FlowBuilder

- `


  ### [TypedReference](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedReference)


  ` A typed reference to a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeWithOutput` (`https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Starter`, `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateReader` or `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Assignment`).

  #### Declaration

  Swift

      struct TypedReference<T, N> where N : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeWithOutput

      extension TypedReference : Sendable, SendableMetatype

- `


  ### [TypedParameter](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedParameter)


  ` Undocumented

  #### Declaration

  Swift

      struct TypedParameter<Container>

- `


  ### [ParameterBuilder](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ParameterBuilder)


  ` Undocumented

  #### Declaration

  Swift

      @resultBuilder
      struct ParameterBuilder<Container>

- `


  ### [AutomationManager](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/AutomationManager)


  ` A protocol for handling `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Automation` objects. This protocol will support the various
  CRUD operations that can be performed on an automation including lifecycle and management.

  #### Declaration

  Swift

      @MainActor
      protocol AutomationManager : Sendable

- `


  ### [AutomationPartPath](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AutomationPartPath)


  ` A client facing object for representing a device part.

  #### Declaration

  Swift

      struct AutomationPartPath

      extension AutomationPartPath : Equatable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeObject, Identifiable, Sendable, SendableMetatype

- `


  ### [AutomationSourceMetadata](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AutomationSourceMetadata)


  ` Information about how the automation was created.

  #### Declaration

  Swift

      struct AutomationSourceMetadata

      extension AutomationSourceMetadata : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [AutomationSuggestion](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AutomationSuggestion)


  ` The main representation of an automation suggestion.

  #### Declaration

  Swift

      struct AutomationSuggestion

      extension AutomationSuggestion : Sendable, SendableMetatype

- `


  ### [SuggestionMetadata](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/SuggestionMetadata)


  ` Metadata about an automation suggestion.

  #### Declaration

  Swift

      struct SuggestionMetadata

      extension SuggestionMetadata : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [SuggestionType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/SuggestionType)


  ` Category of an automation suggestion.

  #### Declaration

  Swift

      enum SuggestionType

      extension SuggestionType : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [SuggestionSource](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/SuggestionSource)


  ` Source of an automation suggestion.

  #### Declaration

  Swift

      enum SuggestionSource

      extension SuggestionSource : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [FeedbackType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/FeedbackType)


  ` The feedback for the suggestion.

  #### Declaration

  Swift

      enum FeedbackType

      extension FeedbackType : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [AutomationValidationIssue](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AutomationValidationIssue)


  ` Validation issues that makes the automation invalid.
  A valid automation should have the following properties:
  - Semantic correctness: The automation graph should follow some rules in order to be executed as expected,
  - Valid expression tree : The expression should be compilable and evalable.
  - Prevent abuse: Automation Platform Abuse Prevention. All operations should be supported by the entity capabilities.

  #### Declaration

  Swift

      struct AutomationValidationIssue

      extension AutomationValidationIssue : Equatable, Sendable, SendableMetatype

- `


  ### [BehaviorID](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/BehaviorID)


  ` The ID of a behavior, which can be a command, event or trait.

  #### Declaration

  Swift

      enum BehaviorID

      extension BehaviorID : Equatable, Sendable, SendableMetatype

- `


  ### [AttributeID](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/AttributeID)


  ` The identifier of a matter attribute.

  #### Declaration

  Swift

      enum AttributeID

      extension AttributeID : Equatable, Sendable, SendableMetatype

- `


  ### [ValidationIssueSeverity](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/ValidationIssueSeverity)


  ` The severity of the validation issue.

  #### Declaration

  Swift

      enum ValidationIssueSeverity

      extension ValidationIssueSeverity : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [ValidationIssueType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/ValidationIssueType)


  ` The possible validation issues that may occur.

  #### Declaration

  Swift

      enum ValidationIssueType

      extension ValidationIssueType : Equatable, Sendable, SendableMetatype

- `


  ### [OutputTypeMismatch](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/OutputTypeMismatch)


  ` The output variable has been defined in multiple nodes with different types.

  #### Declaration

  Swift

      struct OutputTypeMismatch

      extension OutputTypeMismatch : Equatable, Sendable, SendableMetatype

- `


  ### [OutputReinitialized](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/OutputReinitialized)


  ` The output variable has been reinitialized in multiple nodes.

  #### Declaration

  Swift

      struct OutputReinitialized

      extension OutputReinitialized : Equatable, Sendable, SendableMetatype

- `


  ### [DuplicateStarterNode](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/DuplicateStarterNode)


  ` The `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Starter` node is listening to the same trait change or event as other `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Starter` nodes.

  #### Declaration

  Swift

      struct DuplicateStarterNode

      extension DuplicateStarterNode : Equatable, Sendable, SendableMetatype

- `


  ### [InvalidArgumentCount](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/InvalidArgumentCount)


  ` The expression contains an invalid number of arguments.

  #### Declaration

  Swift

      struct InvalidArgumentCount

      extension InvalidArgumentCount : Equatable, Sendable, SendableMetatype

- `


  ### [InvalidOperand](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/InvalidOperand)


  ` The expression uses an invalid operand.

  #### Declaration

  Swift

      struct InvalidOperand

      extension InvalidOperand : Equatable, Sendable, SendableMetatype

- `


  ### [InvalidArgumentsForOperator](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/InvalidArgumentsForOperator)


  ` The arguments for the operator are not valid.

  #### Declaration

  Swift

      struct InvalidArgumentsForOperator

      extension InvalidArgumentsForOperator : Equatable, Sendable, SendableMetatype

- `


  ### [InvalidConditionType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/InvalidConditionType)


  ` The condition type is not valid.

  #### Declaration

  Swift

      struct InvalidConditionType

      extension InvalidConditionType : Equatable, Sendable, SendableMetatype

- `


  ### [InvalidDurationExpressionType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/InvalidDurationExpressionType)


  ` The duration expression type is not valid.

  #### Declaration

  Swift

      struct InvalidDurationExpressionType

      extension InvalidDurationExpressionType : Equatable, Sendable, SendableMetatype

- `


  ### [InvalidEntityExpressionType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/InvalidEntityExpressionType)


  ` The entity expression type is not valid.

  #### Declaration

  Swift

      struct InvalidEntityExpressionType

      extension InvalidEntityExpressionType : Equatable, Sendable, SendableMetatype

- `


  ### [InvalidField](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/InvalidField)


  ` The `FIELD_SELECT` expression uses an invalid field.

  #### Declaration

  Swift

      struct InvalidField

      extension InvalidField : Equatable, Sendable, SendableMetatype

- `


  ### [InvalidReference](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/InvalidReference)


  ` The "reference," which refers to output produced by a preceding node, is unknown.

  #### Declaration

  Swift

      struct InvalidReference

      extension InvalidReference : Equatable, Sendable, SendableMetatype

- `


  ### [UnsupportedCandidateReason](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UnsupportedCandidateReason)


  ` Reasons why a candidate node is not supported.

  #### Declaration

  Swift

      struct UnsupportedCandidateReason

      extension UnsupportedCandidateReason : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [PresenceSensingSetupType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/PresenceSensingSetupType)


  ` The type of presence sensing setup that is missing.

  #### Declaration

  Swift

      enum PresenceSensingSetupType

      extension PresenceSensingSetupType : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [UnsupportedCandidateReasonType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/UnsupportedCandidateReasonType)


  ` The reason why a candidate is not supported.

  #### Declaration

  Swift

      enum UnsupportedCandidateReasonType

      extension UnsupportedCandidateReasonType : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [InvalidEntityReasonType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/InvalidEntityReasonType)


  ` Undocumented

  #### Declaration

  Swift

      enum InvalidEntityReasonType

      extension InvalidEntityReasonType : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [InvalidQueryReasonType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/InvalidQueryReasonType)


  ` Undocumented

  #### Declaration

  Swift

      enum InvalidQueryReasonType

      extension InvalidQueryReasonType : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [CommandCandidate](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/CommandCandidate)


  ` Represents automation candidate nodes corresponding to a command. These can be used in actions.

  #### Declaration

  Swift

      struct CommandCandidate

      extension CommandCandidate : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15ActionCandidateP, Copyable, Equatable, Equatable, Escapable, Hashable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeCandidate, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeCandidate, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [CommandFieldDetails](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/CommandFieldDetails)


  ` Details about a command field.

  #### Declaration

  Swift

      struct CommandFieldDetails

      extension CommandFieldDetails : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/FieldDetails, Hashable, Sendable, SendableMetatype

- `


  ### [Constraint](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/Constraint)


  ` Constraints on a trait attribute, command parameter or event field. Represents the possible
  values that an attribute, parameter or field can have.

  #### Declaration

  Swift

      enum Constraint

      extension Constraint : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [StringEnumConstraint](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StringEnumConstraint)


  ` Represents a list of allowed string enum values.

  #### Declaration

  Swift

      struct StringEnumConstraint

      extension StringEnumConstraint : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [StringEnumValue](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StringEnumValue)


  ` Represents a single string enum value.

  #### Declaration

  Swift

      struct StringEnumValue

      extension StringEnumValue : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [UIntEnumConstraint](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UIntEnumConstraint)


  ` Represents a list of uint enum values.

  #### Declaration

  Swift

      struct UIntEnumConstraint

      extension UIntEnumConstraint : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [UintEnumValue](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UintEnumValue)


  ` Represents a single uint enum value.

  #### Declaration

  Swift

      struct UintEnumValue

      extension UintEnumValue : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [CombinedBitsDescriptor](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK22CombinedBitsDescriptorV)


  ` Represents a group of bits in a bitmap - with start and end positions along with a name.

  This is an EXPERIMENTAL feature that may be removed or changed without notice.

  #### Declaration

  Swift

      struct CombinedBitsDescriptor

      extension CombinedBitsDescriptor : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [StructFieldConstraint](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StructFieldConstraint)


  ` Constraint for fields of the struct.

  #### Declaration

  Swift

      struct StructFieldConstraint

      extension StructFieldConstraint : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [BaseUnit](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/BaseUnit)


  ` Represents the base unit of a measurement.

  #### Declaration

  Swift

      enum BaseUnit

      extension BaseUnit : Equatable, Hashable, RawRepresentable, Sendable, SendableMetatype

- `


  ### [ConstraintUnit](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ConstraintUnit)


  ` Represents a unit of measurement which consists of a base unit and a scale.

  For example, if a field has the unit centi-celsius, the base unit would be Celsius and the
  multiplier would be 0.01.

  #### Declaration

  Swift

      struct ConstraintUnit

      extension ConstraintUnit : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [DiscoveryController](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DiscoveryController)


  ` Manages Discovery Candidates for all Structures in a User Account.

  This protocol is used to manage the Discovery Candidates for all Structures in a User Account.
  This includes fetching, caching and freshing the candidates.
  Note
  This protocol exists to facilitate eventual SRL migration.

  #### Declaration

  Swift

      protocol DiscoveryController : Sendable

- `


  ### [EntityType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/EntityType)


  ` Undocumented

  #### Declaration

  Swift

      enum EntityType

      extension EntityType : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Equatable, Equatable, Escapable, Hashable, Hashable, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [EventCandidate](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventCandidate)


  ` Represents automation candidate nodes corresponding to an event. These can be used in starters.

  #### Declaration

  Swift

      struct EventCandidate

      extension EventCandidate : Copyable, Equatable, Equatable, Escapable, Hashable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeCandidate, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeCandidate, Sendable, Sendable, SendableMetatype, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK16StarterCandidateP

- `


  ### [EventFieldDetails](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/EventFieldDetails)


  ` Details about an event field.

  #### Declaration

  Swift

      struct EventFieldDetails

      extension EventFieldDetails : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/FieldDetails, Hashable, Sendable, SendableMetatype

- `


  ### [Expression](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression)


  ` An expression which evaluates to a value.

  Depending on the concrete type, it may represent:
  - Simple literal expressions including a constant or a reference.
  - Complex expressions with one operator and one or more operand(s), such as a logical expression, a comparison expression, a struct traversal expression.

  #### Declaration

  Swift

      protocol Expression : Sendable

- `


  ### [AnyExpression](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AnyExpression)


  ` Typed-erased Expression.

  #### Declaration

  Swift

      struct AnyExpression

      extension AnyExpression : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Sendable, SendableMetatype

- `


  ### [IdentifiableExpression](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression)


  ` Represent a complex expression with one operator and one or more operand(s).

  Depending on the operator type, it may represent:
  - Arithmetic (plus, minus, etc.) expressions,
  - Comparison (equals, greaterThan, etc.) expressions,
  - Logical (and, or, etc.) expressions,
  - Struct traversal (fieldSelect) expressions,
  - List accessor (listSize, listContains, etc.) expressions,
  - Comprehension (listAnyMatch, listFilter, etc.) expressions.

  #### Declaration

  Swift

      protocol IdentifiableExpression : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable where Self.ID == String

- `


  ### [BinaryExpression](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BinaryExpression)


  ` Represent a binary expression with two operands.

  The full expression is represented as: `operand1` `operator` `operand2`.

  #### Declaration

  Swift

      protocol BinaryExpression : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression

- `


  ### [TernaryExpression](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/TernaryExpression)


  ` Represent a ternary expression with three operands.

  #### Declaration

  Swift

      protocol TernaryExpression : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression

- `


  ### [UnaryExpression](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/UnaryExpression)


  ` Represent a unary expression with one operand.

  The full expression is represented as: `operator` `operand`.

  #### Declaration

  Swift

      protocol UnaryExpression : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression

- `


  ### [Constant](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Constant)


  ` Represents a constant.

  Constant is often used as the second operand in expressions.
  For instance: Equals(operand1: Reference() , operand2: Constant(true)).

  #### Declaration

  Swift

      struct Constant

      extension Constant : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Sendable, SendableMetatype

- `


  ### [Reference](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Reference)


  ` Represent a reference, to the previously defined node in the automation graph.

  Reference is often used as the first operand in expressions.
  for instance: Equals(operand1: Reference() , operand2: Constant(true)).

  #### Declaration

  Swift

      struct Reference

      extension Reference : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Sendable, SendableMetatype

- `


  ### [ReferenceDeclaration](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ReferenceDeclaration)


  ` Represents a reference declaration. Only valid in a list comprehension expression.

  #### Declaration

  Swift

      struct ReferenceDeclaration

      extension ReferenceDeclaration : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Sendable, SendableMetatype

- `


  ### [Plus](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Plus)


  ` The plus operator, which evaluates to `operand1` + `operand2`.

  #### Declaration

  Swift

      struct Plus

      extension Plus : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BinaryExpression, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [Minus](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Minus)


  ` The minus operator, which evaluates to `operand1` - `operand2`.

  #### Declaration

  Swift

      struct Minus

      extension Minus : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BinaryExpression, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [Multiply](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Multiply)


  ` The multiply operator, which evaluates to `operand1` \* `operand2`.

  #### Declaration

  Swift

      struct Multiply

      extension Multiply : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BinaryExpression, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [Divide](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Divide)


  ` The divide operator, which evaluates to `operand1` / `operand2`.

  #### Declaration

  Swift

      struct Divide

      extension Divide : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BinaryExpression, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [Equals](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Equals)


  ` The equality operator, which evaluates to `true` when `operand1` equals `operand2`.

  #### Declaration

  Swift

      struct Equals

      extension Equals : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BinaryExpression, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [NotEquals](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/NotEquals)


  ` The equality operator, which evaluates to `true` when `operand1` not equals to `operand2`.

  #### Declaration

  Swift

      struct NotEquals

      extension NotEquals : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BinaryExpression, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [Between](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Between)


  ` The between operator, which evaluates to `true` when `operand1` is between `operand2` and
  `operand3`.

  #### Declaration

  Swift

      struct Between

      extension Between : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/TernaryExpression

- `


  ### [BetweenTimes](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/BetweenTimes)


  ` The between times operator, which evaluates to `true` when `operand1` is between `operand2` and
  `operand3`.

  NOTE: Only valid for `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TimeOfDay`-based expressions.

  #### Declaration

  Swift

      struct BetweenTimes

      extension BetweenTimes : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/TernaryExpression

- `


  ### [GreaterThan](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/GreaterThan)


  ` The comparison operator, which evaluates to `true` when `operand1` `>` `operand2`.

  #### Declaration

  Swift

      struct GreaterThan

      extension GreaterThan : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BinaryExpression, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [LessThan](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/LessThan)


  ` The comparison operator, which evaluates to `true` when `operand1` `<` `operand2`.

  #### Declaration

  Swift

      struct LessThan

      extension LessThan : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BinaryExpression, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [GreaterThanOrEquals](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/GreaterThanOrEquals)


  ` The comparison operator, which evaluates to `true` when `operand1` `>=` `operand2`.

  #### Declaration

  Swift

      struct GreaterThanOrEquals

      extension GreaterThanOrEquals : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BinaryExpression, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [LessThanOrEquals](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/LessThanOrEquals)


  ` The comparison operator, which evaluates to `true` when `operand1` `>=` `operand2`.

  #### Declaration

  Swift

      struct LessThanOrEquals

      extension LessThanOrEquals : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BinaryExpression, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [FieldSelect](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/FieldSelect)


  ` Selects an attribute, an event field or struct field(s) from a reference expression.

  #### Declaration

  Swift

      struct FieldSelect

      extension FieldSelect : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [And](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/And)


  ` The logical AND operator which evaluates to `true` when both `operand1` and `operand2` are
  `true`.

  #### Declaration

  Swift

      struct And

      extension And : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BinaryExpression, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [Or](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Or)


  ` The logical OR operator which evaluates to `true` when either `operand1` or `operand2` is
  `true`.

  #### Declaration

  Swift

      struct Or

      extension Or : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/BinaryExpression, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [Not](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Not)


  ` The logical NOT operator which evaluates to `true` when `operand` is `false`.

  #### Declaration

  Swift

      struct Not

      extension Not : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/UnaryExpression

- `


  ### [ListSize](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListSize)


  ` Represents the "size" operation on a list expression.

  #### Declaration

  Swift

      struct ListSize

      extension ListSize : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [ListIn](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListIn)


  ` Represents the "in" operation on a list expression. Returns `true` if the element is in the
  list.

  #### Declaration

  Swift

      struct ListIn

      extension ListIn : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [ListContains](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListContains)


  ` Represents the "contains" operation on a list expression. Returns `true` if the element is in the
  list.

  #### Declaration

  Swift

      struct ListContains

      extension ListContains : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [ListGet](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListGet)


  ` Represents the "get" operation on a list expression. Returns the element at the given index.

  #### Declaration

  Swift

      struct ListGet

      extension ListGet : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [Comprehension](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Comprehension)


  ` Represents list comprehension expressions.

  #### Declaration

  Swift

      protocol Comprehension : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression

- `


  ### [ListAllMatch](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListAllMatch)


  ` Represents the "all match" operation on a list expression.

  #### Declaration

  Swift

      struct ListAllMatch

      extension ListAllMatch : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Comprehension, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [ListAnyMatch](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListAnyMatch)


  ` Represents the "any match" operation on a list expression.

  #### Declaration

  Swift

      struct ListAnyMatch

      extension ListAnyMatch : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Comprehension, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [ListNoneMatch](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListNoneMatch)


  ` Represents the "none match" operation on a list expression.

  #### Declaration

  Swift

      struct ListNoneMatch

      extension ListNoneMatch : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Comprehension, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [ListMap](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListMap)


  ` Represents the map operation on a list expression.

  #### Declaration

  Swift

      struct ListMap

      extension ListMap : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Comprehension, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [ListFilter](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListFilter)


  ` Represents the "filter" operation on a list expression.

  #### Declaration

  Swift

      struct ListFilter

      extension ListFilter : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Comprehension, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [MapKeys](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/MapKeys)


  ` Represents the "keys" operation on a map expression.

  #### Declaration

  Swift

      struct MapKeys

      extension MapKeys : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [MapValues](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/MapValues)


  ` Represents the "values" operation on a map expression.

  #### Declaration

  Swift

      struct MapValues

      extension MapValues : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [MapSize](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/MapSize)


  ` Represents the "size" operation on a map expression.

  #### Declaration

  Swift

      struct MapSize

      extension MapSize : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [MapFilter](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/MapFilter)


  ` Represents the "filter" operation on a map expression. Returns a new map with the filtered
  entries.

  #### Declaration

  Swift

      struct MapFilter

      extension MapFilter : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [ListOf](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListOf)


  ` Represents the "list of" operation on a list expression.

  #### Declaration

  Swift

      struct ListOf

      extension ListOf : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [GetDevicesOfType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/GetDevicesOfType)


  ` Represents the "get devices of type" operation on a structure or room.

  #### Declaration

  Swift

      struct GetDevicesOfType

      extension GetDevicesOfType : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [UnknownExpression](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UnknownExpression)


  ` Undocumented

  #### Declaration

  Swift

      struct UnknownExpression

      extension UnknownExpression : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/IdentifiableExpression, Sendable, SendableMetatype

- `


  ### [FieldDetails](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/FieldDetails)


  ` Basic information about a Trait field.

  #### Declaration

  Swift

      protocol FieldDetails : Hashable

- `


  ### [IfThen](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6IfThenV)


  ` An `IfThen` object represents a conditional statement within the `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/IfFlow` node
  that executes the then node if the condition is true.

  #### Declaration

  Swift

      struct IfThen

      extension IfThen : Sendable, SendableMetatype

- `


  ### [LocalDate](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/LocalDate)


  ` Represents a date.

  This struct doesn't include any time zone related information.

  #### Declaration

  Swift

      struct LocalDate

      extension LocalDate : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Comparable, Copyable, Copyable, Decodable, Encodable, Equatable, Equatable, Equatable, Escapable, Escapable, Hashable, Hashable, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [LocalizedText](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/LocalizedText)


  ` Represents a localized string and its corresponding locale.

  This struct maps to `Google_Type_LocalizedText`, defined here:
  google3/google/type/localized_text.proto.

  #### Declaration

  Swift

      struct LocalizedText

      extension LocalizedText : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Decodable, Encodable, Equatable, Hashable, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [MonthDay](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/MonthDay)


  ` Represents month and day.

  This struct doesn't include any time zone related information.

  #### Declaration

  Swift

      struct MonthDay

      extension MonthDay : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Decodable, Encodable, Equatable, Equatable, Escapable, Hashable, Hashable, Sendable, Sendable, SendableMetatype, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [NodeCandidate](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeCandidate)


  ` Defines the common attributes of all Automations Discovery candidates.

  #### Declaration

  Swift

      protocol NodeCandidate : Hashable, Sendable

- `


  ### [StarterCandidate](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK16StarterCandidateP)


  ` Defines the common attributes of all Automations Discovery candidates that can be converted to
  a Starter.

  #### Declaration

  Swift

      protocol StarterCandidate : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeCandidate

- `


  ### [StateReaderCandidate](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK20StateReaderCandidateP)


  ` Defines the common attributes of all Automations Discovery candidates that can be converted to
  a StateReader.

  #### Declaration

  Swift

      protocol StateReaderCandidate : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeCandidate

- `


  ### [ActionCandidate](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15ActionCandidateP)


  ` Defines the common attributes of all Automations Discovery candidates that can be converted to
  an Action.

  #### Declaration

  Swift

      protocol ActionCandidate : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeCandidate

- `


  ### [SolarTime](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/SolarTime)


  ` The time of a daily solar event such as sunrise, noon, and sunset.

  #### Declaration

  Swift

      struct SolarTime

      extension SolarTime : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Decodable, Encodable, Equatable, Equatable, Escapable, Hashable, Hashable, Sendable, Sendable, SendableMetatype, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [TimeOfDay](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TimeOfDay)


  ` Represents a time of day. The date and time zone are either not significant or are specified
  elsewhere.

  #### Declaration

  Swift

      struct TimeOfDay

      extension TimeOfDay : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Decodable, Encodable, Equatable, Equatable, Escapable, Hashable, Hashable, Sendable, Sendable, SendableMetatype, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [TraitAttributesCandidate](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TraitAttributesCandidate)


  ` Represents automation candidate nodes corresponding to a trait's attributes. These can be used
  in starters, state readers and actions.

  #### Declaration

  Swift

      struct TraitAttributesCandidate

      extension TraitAttributesCandidate : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15ActionCandidateP, Copyable, Copyable, Copyable, Equatable, Equatable, Equatable, Equatable, Escapable, Escapable, Escapable, Hashable, Hashable, Hashable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeCandidate, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeCandidate, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeCandidate, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NodeCandidate, Sendable, Sendable, Sendable, Sendable, SendableMetatype, SendableMetatype, SendableMetatype, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK16StarterCandidateP, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK20StateReaderCandidateP

- `


  ### [TypedEntity](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK11TypedEntityP)


  ` A protocol for defining typed entities for use in TypedExpressions

  These are used for ensuring compile time type safety for TypedExpressions where HomeObjectType
  enum is not sufficiently specific.

  #### Declaration

  Swift

      protocol TypedEntity : Hashable, Sendable

- `


  ### [TypedEntityStructure](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK20TypedEntityStructureV)


  ` Undocumented

  #### Declaration

  Swift

      struct TypedEntityStructure

      extension TypedEntityStructure : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Equatable, Equatable, Escapable, Hashable, Hashable, Sendable, Sendable, SendableMetatype, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK11TypedEntityP

- `


  ### [TypedEntityRoom](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15TypedEntityRoomV)


  ` Undocumented

  #### Declaration

  Swift

      struct TypedEntityRoom

      extension TypedEntityRoom : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Equatable, Equatable, Escapable, Hashable, Hashable, Sendable, Sendable, SendableMetatype, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK11TypedEntityP

- `


  ### [TypedEntityDevice](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK17TypedEntityDeviceV)


  ` Undocumented

  #### Declaration

  Swift

      struct TypedEntityDevice

      extension TypedEntityDevice : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Equatable, Equatable, Escapable, Hashable, Hashable, Sendable, Sendable, SendableMetatype, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK11TypedEntityP

- `


  ### [listOf(_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6listOfyAA15TypedExpressionVySayxGGADyxGd_tAA15AutomationValueRzlF)


  ` Performs the `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListOf` operation on the list.

  #### Declaration

  Swift

      func listOf<V>(_ elements: https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<V>...) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<[V]> where V : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP

  #### Parameters

  |---|---|
  | ` elements ` | The elements, represented as a typed expression, to create the list. |

  #### Return Value

  `[V.Element]` typed expression representing the `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListOf` operation.
- `


  ### [listOf(_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6listOfyAA15TypedExpressionVySayxGGSayADyxGGAA15AutomationValueRzlF)


  ` Performs the `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListOf` operation on the list.

  #### Declaration

  Swift

      func listOf<V>(_ elements: [https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<V>]) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<[V]> where V : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP

  #### Parameters

  |---|---|
  | ` elements ` | The elements, represented as a list of typed expressions, to create the list. |

  #### Return Value

  `[V.Element]` typed expression representing the `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListOf` operation.
- `


  ### [listOf(_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6listOfyAA15TypedExpressionVySayxGGxd_tAA15AutomationValueRzlF)


  ` Performs the `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListOf` operation on the list.

  #### Declaration

  Swift

      func listOf<V>(_ elements: V...) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<[V]> where V : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP

  #### Parameters

  |---|---|
  | ` elements ` | The elements, represented as a list of constant values, to create the list. |

  #### Return Value

  `[V.Element]` typed expression representing the `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListOf` operation.
- `


  ### [listOf(_:)](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6listOfyAA15TypedExpressionVySayxGGAeA15AutomationValueRzlF)


  ` Performs the `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListOf` operation on the list.

  #### Declaration

  Swift

      func listOf<V>(_ elements: [V]) -> https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression<[V]> where V : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP

  #### Parameters

  |---|---|
  | ` elements ` | The elements, represented as a list of constant values, to create the list. |

  #### Return Value

  `[V.Element]` typed expression representing the `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ListOf` operation.
- `


  ### [TypedExpression](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TypedExpression)


  ` Wraps an `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Expression` with an associated value type.

  #### Declaration

  Swift

      struct TypedExpression<V> where V : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP

      extension TypedExpression : Sendable, SendableMetatype

- `


  ### [TypedTrait](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK10TypedTraitV)


  ` A wrapper around a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait` that provides compile-time type safety.

  #### Declaration

  Swift

      struct TypedTrait<T> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

      extension TypedTrait : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Equatable, Equatable, Escapable, Hashable, Hashable, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [UnknownNode](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UnknownNode)


  ` Represents an unknown node in the automation graph.

  #### Declaration

  Swift

      struct UnknownNode

      extension UnknownNode : Equatable, Hashable, Identifiable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Node, Sendable, SendableMetatype

- `


  ### [YearMonth](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/YearMonth)


  ` Represents year and month.

  This struct doesn't include any time zone related information.

  #### Declaration

  Swift

      struct YearMonth

      extension YearMonth : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Comparable, Copyable, Copyable, Decodable, Encodable, Equatable, Equatable, Equatable, Escapable, Escapable, Hashable, Hashable, Sendable, Sendable, SendableMetatype, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [BatchCommandRequestInfo](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/BatchCommandRequestInfo)


  ` A structure that holds all the necessary parameters to send a command.

  #### Declaration

  Swift

      struct BatchCommandRequestInfo

      extension BatchCommandRequestInfo : Sendable, SendableMetatype

- `


  ### [BatchableCommand](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/BatchableCommand)


  ` Represents a command that can be batched with other commands. It captures the request info and
  a closure to transform the response.
  ResponseType can be any type, including Void. It is typically a subtype of CommandResponse.

  #### Declaration

  Swift

      struct BatchableCommand<ResponseType>

      extension BatchableCommand : Sendable, SendableMetatype

- `


  ### [Command](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Command)


  ` Basic interface for Trait commands.

  #### Declaration

  Swift

      protocol Command : Sendable

- `


  ### [CommandBatcher](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Classes/CommandBatcher)


  ` A class that batches commands and sends them. It serves as both a proxy and a transaction
  holder.

  #### Declaration

  Swift

      class CommandBatcher

- `


  ### [MatterCommissioningUtils](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Classes/MatterCommissioningUtils)


  ` Undocumented

  #### Declaration

  Swift

      final class MatterCommissioningUtils

- `


  ### [MatterSuggestedUserAction](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/MatterSuggestedUserAction)


  ` Suggested user actions to potentially resolve a commissioning failure.

  #### Declaration

  Swift

      enum MatterSuggestedUserAction

      extension MatterSuggestedUserAction : CaseIterable, Equatable, Hashable, RawRepresentable, Sendable, SendableMetatype

- `


  ### [MatterUnsuccessfulCommissioningResult](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/MatterUnsuccessfulCommissioningResult)


  ` The result of a failed Matter Commissioning attempt.

  #### Declaration

  Swift

      struct MatterUnsuccessfulCommissioningResult

      extension MatterUnsuccessfulCommissioningResult : Sendable, SendableMetatype

- `


  ### [HomePlatformOAuthScope](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/HomePlatformOAuthScope)


  ` 3P available OAuth scope enum.

  #### Declaration

  Swift

      enum HomePlatformOAuthScope

      extension HomePlatformOAuthScope : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [HomeClientConfiguration](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/HomeClientConfiguration)


  ` Publicly-visible Configuration for GoogleHomeSDK.

  #### Declaration

  Swift

      @MainActor
      struct HomeClientConfiguration

      extension HomeClientConfiguration : Sendable, SendableMetatype

- `


  ### [ReferencedAutomationTypes](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Classes/ReferencedAutomationTypes)


  ` The list of traits and device types to be used by the Automations SDK.

  #### Declaration

  Swift

      @MainActor
      final class ReferencedAutomationTypes

      extension ReferencedAutomationTypes : Sendable, SendableMetatype

- `


  ### [ConnectivityState](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/ConnectivityState)


  ` Undocumented

  #### Declaration

  Swift

      enum ConnectivityState

      extension ConnectivityState : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [CustomAppData](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/CustomAppData)


  ` A controller for interacting with custom App Data.

  #### Declaration

  Swift

      struct CustomAppData

      extension CustomAppData : Sendable, SendableMetatype

- `


  ### [CustomAppDataSupporting](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/CustomAppDataSupporting)


  ` Indicates an object supports custom app data.

  #### Declaration

  Swift

      protocol CustomAppDataSupporting

- `


  ### [DeviceGroup](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/DeviceGroup)


  ` A group of smart home devices that can be controlled together.

  #### Declaration

  Swift

      struct DeviceGroup

      extension DeviceGroup : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HasParts, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeEntity, HomeEntityImpl, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeObject, HomeObjectImpl, Identifiable, ObjectDataRepresentable, Sendable, SendableMetatype

- `


  ### [DeviceType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DeviceType)


  ` Protocol implemented by all the generated `DeviceType` structs.

  A device type represents a collection of traits with connected functionality.

  #### Declaration

  Swift

      protocol DeviceType : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HasParts, CustomDebugStringConvertible, Hashable

      extension DeviceType : Equatable, Sendable, SendableMetatype

- `


  ### [DeviceTypeCollection](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Classes/DeviceTypeCollection)


  ` A collection of already fetched `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DeviceType` data.

  Provides subscript access to `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DeviceType`s by their types.

  #### Declaration

  Swift

      final class DeviceTypeCollection

      extension DeviceTypeCollection : ComponentPartProviding, Copyable, Equatable, Escapable, Hashable, Sendable, SendableMetatype

- `


  ### [DeviceTypeController](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Classes/DeviceTypeController)


  ` Controller to access concrete `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DeviceType`s for a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/HomeDevice`.

  #### Declaration

  Swift

      final class DeviceTypeController

      extension DeviceTypeController : Sendable, SendableMetatype

- `


  ### [DeviceTypeMetadata](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/DeviceTypeMetadata)


  ` Additional information about a device type.

  #### Declaration

  Swift

      struct DeviceTypeMetadata

      extension DeviceTypeMetadata : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [Event](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event)


  ` Basic interface for Trait events.

  Events contain a record of past state transitions and other data that cannot easily be modeled
  by attributes.

  #### Declaration

  Swift

      protocol Event : CustomDebugStringConvertible, Sendable

      extension Event : SendableMetatype

- `


  ### [EventController](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/EventController)


  ` Controller for subscribing to events from a particular object.

  #### Declaration

  Swift

      protocol EventController : Sendable

- `


  ### [EventImportance](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/EventImportance)


  ` The reported importance level of an `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event`.

  These correspond to Matter event priority levels, with some additional levels providing extra
  granularity.

  #### Declaration

  Swift

      enum EventImportance

      extension EventImportance : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [Field](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Field)


  ` Describes a field of a Trait, Command, Event, etc.

  #### Declaration

  Swift

      protocol Field : Hashable, RawRepresentable, Sendable where Self.RawValue == UInt32

- `


  ### [FieldType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/FieldType)


  ` The possible value types for a field.

  #### Declaration

  Swift

      enum FieldType

      extension FieldType : Equatable, Sendable, SendableMetatype

- `


  ### [ForceReadableTrait](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/ForceReadableTrait)


  ` Undocumented

  #### Declaration

  Swift

      protocol ForceReadableTrait : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

- `


  ### [HasParts](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HasParts)


  ` An object in the smart home graph that contains functional parts.

  #### Declaration

  Swift

      protocol HasParts : Sendable

      extension HasParts : SendableMetatype

- `


  ### [HistoryController](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/HistoryController)


  ` The entry point for interacting with the history API.

  #### Declaration

  Swift

      struct HistoryController

      extension HistoryController : Sendable, SendableMetatype

- `


  ### [HistoryItem](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/HistoryItem)


  ` A single history item.

  #### Declaration

  Swift

      struct HistoryItem

      extension HistoryItem : Equatable, Hashable, Identifiable, Sendable, SendableMetatype

- `


  ### [HistoryItemVisitor](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Classes/HistoryItemVisitor)


  ` A visitor for history items.

  Use this class to register handlers for specific event types and/or a default handler for
  history items. When a history item is visited, the visitor will find the matching handler and
  call it with the event payload and the history item.

  #### Declaration

  Swift

      final class HistoryItemVisitor<Result> where Result : Sendable

      extension HistoryItemVisitor : Sendable, SendableMetatype

- `


  ### [HistoryQuery](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Classes/HistoryQuery)


  ` A query for history items.

  #### Declaration

  Swift

      final class HistoryQuery

- `


  ### [PagedHistoryStream](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/PagedHistoryStream)


  ` An asynchronous sequence of pages of history items.

  This stream handles the pagination logic, allowing you to iterate through pages of history results.

  #### Declaration

  Swift

      struct PagedHistoryStream

      extension PagedHistoryStream : AsyncSequence

- `


  ### [StateChangeEvent](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StateChangeEvent)


  ` A state change event for a given trait.

  #### Declaration

  Swift

      struct StateChangeEvent<T> where T : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

- `


  ### [ValueChange](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ValueChange)


  ` A change in a specific value or attribute.

  #### Declaration

  Swift

      struct ValueChange<Value> where Value : Equatable, Value : Sendable

      extension ValueChange : Equatable, Sendable, SendableMetatype

- `


  ### [CloudAccountLinkingAgentMetadata](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/CloudAccountLinkingAgentMetadata)


  ` Metadata describing an available linkable cloud agent.

  #### Declaration

  Swift

      struct CloudAccountLinkingAgentMetadata

      extension CloudAccountLinkingAgentMetadata : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [CloudAccountLinkingAvailableAgentsPage](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/CloudAccountLinkingAvailableAgentsPage)


  ` A paginated response containing available linkable 3P agents and a pagination token.

  #### Declaration

  Swift

      struct CloudAccountLinkingAvailableAgentsPage

      extension CloudAccountLinkingAvailableAgentsPage : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [Home](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Classes/Home)


  ` Top-level entry to the GoogleHomeSDK.

  #### Declaration

  Swift

      final class Home

      extension Home : Sendable, SendableMetatype

- `


  ### [HomeBriefsController](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeBriefsController)


  ` Controller for fetching home briefs.

  #### Declaration

  Swift

      protocol HomeBriefsController : Sendable

- `


  ### [HomeBrief](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/HomeBrief)


  ` A domain model representing a generated Home Brief.

  #### Declaration

  Swift

      struct HomeBrief

      extension HomeBrief : Equatable, Sendable, SendableMetatype

- `


  ### [BasicCameraEventDetails](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/BasicCameraEventDetails)


  ` A camera event for the purpose of a home brief.

  #### Declaration

  Swift

      struct BasicCameraEventDetails

      extension BasicCameraEventDetails : Equatable, Sendable, SendableMetatype

- `


  ### [PagedHomeBriefsStream](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/PagedHomeBriefsStream)


  ` An asynchronous sequence of pages of home briefs.

  This stream handles the pagination logic, allowing you to iterate through pages of briefs.

  #### Declaration

  Swift

      struct PagedHomeBriefsStream

      extension PagedHomeBriefsStream : AsyncSequence

- `


  ### [HomeDevice](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/HomeDevice)


  ` A single smart home device.

  #### Declaration

  Swift

      struct HomeDevice

      extension HomeDevice : Copyable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/CustomAppDataSupporting, Equatable, Escapable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeObject, HomeObjectImpl, Identifiable, ObjectDataRepresentable, Sendable, SendableMetatype

- `


  ### [HomeEntity](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeEntity)


  ` A trait-based smart home entity in the Google Home Platform (Data 2.0).

  #### Declaration

  Swift

      protocol HomeEntity : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HasParts, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeObject

- `


  ### [HomeError](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/HomeError)


  ` Base type for all errors thrown by the GoogleHomeSDK.

  #### Declaration

  Swift

      struct HomeError

      extension HomeError : Copyable, CustomNSError, Equatable, Error, Error, Escapable, Hashable, LocalizedError, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [MatterError](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/MatterError)


  ` Undocumented

  #### Declaration

  Swift

      struct MatterError

      extension MatterError : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [GalError](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/GalError)


  ` Errors specific to Google Account Linking.

  #### Declaration

  Swift

      enum GalError

      extension GalError : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [DecommissionError](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/DecommissionError)


  ` Decommission specific errors.

  #### Declaration

  Swift

      enum DecommissionError

      extension DecommissionError : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [HubActivationError](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/HubActivationError)


  ` Hub activation specific errors.

  #### Declaration

  Swift

      enum HubActivationError

      extension HubActivationError : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [PermissionError](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/PermissionError)


  ` User-granted permission specific errors.

  #### Declaration

  Swift

      enum PermissionError

      extension PermissionError : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [HomeObjectType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/HomeObjectType)


  ` Discriminator for specific subclass of `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeObject`.

  #### Declaration

  Swift

      enum HomeObjectType

      extension HomeObjectType : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [HomeObject](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeObject)


  ` Base protocol for all entity classes returned from the GoogleHomeSDK.

  #### Declaration

  Swift

      protocol HomeObject : Hashable, Identifiable, Sendable where Self.ID == String

      extension HomeObject : Equatable, SendableMetatype

- `


  ### [AnyHomeObject](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AnyHomeObject)


  ` Type-erased `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeObject` wrapper.

  #### Declaration

  Swift

      struct AnyHomeObject

      extension AnyHomeObject : Equatable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeObject, Identifiable, Sendable, SendableMetatype

- `


  ### [Hub](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Hub)


  ` Represents a hub discovered by mDNS service discovery.

  #### Declaration

  Swift

      struct Hub

      extension Hub : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [AccountID](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AccountID)


  ` An object that represents a User account.

  #### Declaration

  Swift

      struct AccountID

      extension AccountID : Equatable, Hashable, Identifiable, Sendable, SendableMetatype

- `


  ### [ExternalIdentityProvider](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/ExternalIdentityProvider)


  ` Interface required to participate in Identity flows.

  NOTE: Method calls are externally synchronized, but may occur on any thread.

  #### Declaration

  Swift

      protocol ExternalIdentityProvider : Sendable

- `


  ### [IdentityResult](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/IdentityResult)


  ` The result of an Identity operation.

  #### Declaration

  Swift

      enum IdentityResult

      extension IdentityResult : Sendable, SendableMetatype

- `


  ### [AccessToken](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/AccessToken)


  ` The access token returned by the `accessToken` method.

  #### Declaration

  Swift

      enum AccessToken

      extension AccessToken : Sendable, SendableMetatype

- `


  ### [UserInfo](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UserInfo)


  ` Information about a user account.

  #### Declaration

  Swift

      struct UserInfo

      extension UserInfo : Sendable, SendableMetatype

- `


  ### [ClusterID](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK9ClusterIDa)


  ` Undocumented

  #### Declaration

  Swift

      typealias ClusterID = String

- `


  ### [NamespaceProvider](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NamespaceProvider)


  ` Undocumented

  #### Declaration

  Swift

      protocol NamespaceProvider

- `


  ### [ScopedCommandID](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ScopedCommandID)


  ` The GHP-specific trait id for a command within a cluster.

  Example: home.matter.0000.clusters.0006.00000001

  #### Declaration

  Swift

      struct ScopedCommandID

      extension ScopedCommandID : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NamespaceProvider, Sendable, SendableMetatype

- `


  ### [ScopedEventID](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/ScopedEventID)


  ` The GHP-specific trait ID for an event within a cluster.

  Matter Example: home.matter.0000.clusters.0045.00000000
  --\> The StateChange Event (ID 0x0000) of the Boolean State Cluster (ID 0x0045).

  Non-Matter Example: home.platform.traits.TimeTrait.ScheduledEvent
  --\> The ScheduledEvent Event (ID "ScheduledEvent") of the TimeTrait (ID "TimeTrait").

  #### Declaration

  Swift

      struct ScopedEventID

      extension ScopedEventID : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NamespaceProvider, Sendable, SendableMetatype

- `


  ### [CommandRequest](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/CommandRequest)


  ` A protocol for the request of a Matter command.

  #### Declaration

  Swift

      protocol CommandRequest : Sendable

- `


  ### [CommandResponse](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/CommandResponse)


  ` A protocol for the response of a Matter command.

  #### Declaration

  Swift

      protocol CommandResponse : Sendable

- `


  ### [InteractionProxy](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/InteractionProxy)


  ` Abstraction for the Interaction Client.

  #### Declaration

  Swift

      protocol InteractionProxy : Sendable

      extension InteractionProxy : SendableMetatype

- `


  ### [LocalityType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/LocalityType)


  ` Network locality of request.

  #### Declaration

  Swift

      enum LocalityType

      extension LocalityType : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [PartID](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6PartIDa)


  ` Undocumented

  #### Declaration

  Swift

      typealias PartID = String

- `


  ### [StructureScopedPermissionsController](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/StructureScopedPermissionsController)


  ` A controller for managing structure scoped permissions.

  #### Declaration

  Swift

      struct StructureScopedPermissionsController

      extension StructureScopedPermissionsController : Sendable, SendableMetatype

- `


  ### [DeviceTypeGrants](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/DeviceTypeGrants)


  ` The set of device types that the user has granted this application permission to access.

  When a user grants permission to a device type, the application gains access to all devices of
  that type within the structure.

  #### Declaration

  Swift

      struct DeviceTypeGrants

      extension DeviceTypeGrants : Sendable, SendableMetatype

- `


  ### [UserScopedPermissionsController](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UserScopedPermissionsController)


  ` A Controller class for interacting with user-scoped permissions.

  #### Declaration

  Swift

      struct UserScopedPermissionsController

      extension UserScopedPermissionsController : Sendable, SendableMetatype

- `


  ### [Query](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Query)


  ` Represents a query against the User's home graph.

  #### Declaration

  Swift

      protocol Query<Element> : Sendable

- `


  ### [HomeObjectUpdate](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/HomeObjectUpdate)


  ` Represents individual object updates.

  #### Declaration

  Swift

      enum HomeObjectUpdate<Element> where Element : Hashable, Element : Sendable

      extension HomeObjectUpdate : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [Room](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Room)


  ` Represents a single room in the User's home graph.

  #### Declaration

  Swift

      struct Room

      extension Room : Copyable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/CustomAppDataSupporting, Equatable, Escapable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeObject, HomeObjectImpl, Identifiable, ObjectDataRepresentable, Sendable, SendableMetatype

- `


  ### [SemanticTag](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/SemanticTag)


  ` Undocumented

  #### Declaration

  Swift

      struct SemanticTag

      extension SemanticTag : Copyable, Equatable, Escapable, Hashable, Identifiable, Sendable, SendableMetatype

- `


  ### [SourceConnectivity](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/SourceConnectivity)


  ` Connectivity metadata for a trait.

  #### Declaration

  Swift

      struct SourceConnectivity

      extension SourceConnectivity : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [Structure](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Structure)


  ` Represents a structure in the User's home graph.

  #### Declaration

  Swift

      struct Structure

      extension Structure : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/AutomationManager, Copyable, Copyable, Copyable, CustomDebugStringConvertible, Equatable, Escapable, Escapable, Escapable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeObject, HomeObjectImpl, Identifiable, ObjectDataRepresentable, Sendable, Sendable, SendableMetatype, SendableMetatype, Updatable

- `


  ### [MutableStructureData](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/MutableStructureData)


  ` Undocumented

  #### Declaration

  Swift

      protocol MutableStructureData : AnyObject

- `


  ### [StructuresController](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructuresController)


  ` Provides access to the user's structures and structure related operations.

  #### Declaration

  Swift

      protocol StructuresController : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Query where Self.Element == https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Structure

- `


  ### [SubscriptionError](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Enums/SubscriptionError)


  ` Errors that cause a subscription to fail.

  #### Declaration

  Swift

      enum SubscriptionError

      extension SubscriptionError : Error, Sendable, SendableMetatype

- `


  ### [SyncNodesRequest](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/SyncNodesRequest)


  ` Represents a request to sync nodes.

  See: google3/google/internal/home/platform/mesh/interaction/v1/hub_connection_service.proto

  #### Declaration

  Swift

      struct SyncNodesRequest

      extension SyncNodesRequest : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Equatable, Hashable, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [NodeNotification](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/NodeNotification)


  ` Represents a notification for a node.

  Maps to `TraitSubscriberNotification` in `interaction_api.proto`.

  #### Declaration

  Swift

      struct NodeNotification

      extension NodeNotification : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Equatable, Hashable, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [NodeNotificationPayload](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/NodeNotificationPayload)


  ` Represents the object data in a notification.

  Maps to `ObjectData` in `interaction_api.proto`.

  #### Declaration

  Swift

      struct NodeNotificationPayload

      extension NodeNotificationPayload : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Equatable, Hashable, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [NodeMetadata](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/NodeMetadata)


  ` Represents metadata for a node.

  See: google3/google/internal/home/platform/mesh/interaction/v1/hub_connection_service.proto

  #### Declaration

  Swift

      struct NodeMetadata

      extension NodeMetadata : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Equatable, Hashable, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [Trait](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait)


  ` Basic interface for object Traits.

  #### Declaration

  Swift

      protocol Trait : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/TraitEncodable, CustomStringConvertible, Hashable, Sendable

      extension Trait : Equatable, SendableMetatype

- `


  ### [TagID](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK5TagIDa)


  ` Tag identifies the field for a single attribute. Both JSON and Protobuf encoding use UInt32
  to identify the encoding fields.

  #### Declaration

  Swift

      typealias TagID = UInt32

- `


  ### [Scalar](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP)


  ` Supported Scalar types.

  #### Declaration

  Swift

      protocol Scalar : Hashable, Sendable

- `


  ### [DefaultConstructible](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible)


  ` Undocumented

  #### Declaration

  Swift

      protocol DefaultConstructible

- `


  ### [BitmapStorage](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK13BitmapStorageP)


  ` Supported Bitmap types.

  #### Declaration

  Swift

      protocol BitmapStorage : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP, UnsignedInteger

- `


  ### [Bitmap](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Bitmap)


  ` Undocumented

  #### Declaration

  Swift

      protocol Bitmap : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, OptionSet where Self.RawValue : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK13BitmapStorageP

      extension Bitmap : Equatable, ExpressibleByArrayLiteral, Hashable, RawRepresentable, Sendable, SendableMetatype, SetAlgebra

- `


  ### [Enum](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Enum)


  ` Undocumented

  #### Declaration

  Swift

      protocol Enum : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, RawRepresentable where Self.RawValue == UInt64

- `


  ### [Enum8](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Enum8)


  ` Undocumented

  #### Declaration

  Swift

      protocol Enum8 : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Enum

- `


  ### [Enum16](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Enum16)


  ` Undocumented

  #### Declaration

  Swift

      protocol Enum16 : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Enum

- `


  ### [Enum32](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Enum32)


  ` Undocumented

  #### Declaration

  Swift

      protocol Enum32 : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Enum

- `


  ### [PlatformEnum](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/PlatformEnum)


  ` Interface for enumerations in Platform traits.

  #### Declaration

  Swift

      protocol PlatformEnum : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Enum32

- `


  ### [StructDataRepresentable](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable)


  ` Serializable abstraction for Structure data objects.

  #### Declaration

  Swift

      protocol StructDataRepresentable : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP

      extension StructDataRepresentable : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [TraitAttribute](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TraitAttribute)


  ` Property wrapper for trait attributes, which contains metadata about the attribute.

  #### Declaration

  Swift

      @propertyWrapper
      struct TraitAttribute<Value> where Value : Sendable

      extension TraitAttribute : Sendable, SendableMetatype

- `


  ### [TraitCollection](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Classes/TraitCollection)


  ` `TraitCollection` is a collection of already-fetched trait data.

  #### Declaration

  Swift

      final class TraitCollection

      extension TraitCollection : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [TraitController](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/TraitController)


  ` Controller for accessing traits on an object.

  #### Declaration

  Swift

      protocol TraitController : Sendable

- `


  ### [TraitDecoder](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TraitDecoder)


  ` Public interface for decoding Trait data.

  #### Declaration

  Swift

      struct TraitDecoder

- `


  ### [TraitEncodable](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/TraitEncodable)


  ` Basic interface for entities that can be encoded as Traits.

  #### Declaration

  Swift

      protocol TraitEncodable

- `


  ### [TraitEncoder](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Classes/TraitEncoder)


  ` Public interface for encoding Trait data.

  #### Declaration

  Swift

      final class TraitEncoder

- `


  ### [TraitMetadata](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TraitMetadata)


  ` General metadata about a `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait`.

  #### Declaration

  Swift

      struct TraitMetadata

      extension TraitMetadata : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [TraitPayload](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/TraitPayload)


  ` Container representing an encoded trait payload.

  #### Declaration

  Swift

      struct TraitPayload

      extension TraitPayload : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Equatable, Equatable, Escapable, Hashable, Hashable, Sendable, Sendable, SendableMetatype, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [LatLng](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/LatLng)


  ` Represents a latitude/longitude pair.

  #### Declaration

  Swift

      struct LatLng

      extension LatLng : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Decodable, Encodable, Equatable, Hashable, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [MatterCommissionableDevice](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/MatterCommissionableDevice)


  ` Model representing a Commissionable Matter device, corresponding to the proto used by the
  MatterCommissionerTrait.

  #### Declaration

  Swift

      struct MatterCommissionableDevice

      extension MatterCommissionableDevice : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Decodable, Encodable, Equatable, Hashable, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [MatterTrait](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/MatterTrait)


  ` An internal protocol to encapsulate logic shared across Matter cluster classes.

  #### Declaration

  Swift

      protocol MatterTrait : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait

      extension MatterTrait : CustomStringConvertible, Equatable, Hashable, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/TraitEncodable

- `


  ### [Money](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/Money)


  ` A monetary value with a currency code.

  #### Declaration

  Swift

      struct Money

      extension Money : Equatable, Hashable, Sendable, SendableMetatype

- `


  ### [AutomationExecutionTrait](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/AutomationExecutionTrait)


  ` Platform trait carrying attributes and events related to automation execution status.

  #### Declaration

  Swift

      struct AutomationExecutionTrait

      extension AutomationExecutionTrait : Copyable, CustomStringConvertible, Equatable, Escapable, Hashable, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/TraitEncodable

- `


  ### [PostalAddress](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/PostalAddress)


  ` Represents a postal address, such as for postal delivery or payments addresses.

  #### Declaration

  Swift

      struct PostalAddress

      extension PostalAddress : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Decodable, Encodable, Equatable, Hashable, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [UnknownBitmap](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UnknownBitmap)


  ` Represents an unknown bitmap.

  #### Declaration

  Swift

      struct UnknownBitmap

      extension UnknownBitmap : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Bitmap, Equatable, ExpressibleByArrayLiteral, Hashable, OptionSet, RawRepresentable, Sendable, SendableMetatype, SetAlgebra

- `


  ### [UnknownCommand](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UnknownCommand)


  ` Represents an unknown `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Command`

  #### Declaration

  Swift

      struct UnknownCommand

      extension UnknownCommand : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Command, Sendable, SendableMetatype

- `


  ### [UnknownDeviceType](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UnknownDeviceType)


  ` A struct that represents an unknown device type.

  #### Declaration

  Swift

      struct UnknownDeviceType

      extension UnknownDeviceType : CustomDebugStringConvertible, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DeviceType, Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HasParts, Hashable, Sendable, SendableMetatype

- `


  ### [UnknownEnum](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UnknownEnum)


  ` Represents an unknown enum.

  #### Declaration

  Swift

      struct UnknownEnum

      extension UnknownEnum : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Enum, Equatable, Hashable, RawRepresentable, Sendable, SendableMetatype

- `


  ### [UnknownEvent](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UnknownEvent)


  ` Represents an unknown `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event`

  #### Declaration

  Swift

      struct UnknownEvent

      extension UnknownEvent : CustomDebugStringConvertible, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Event, Sendable, SendableMetatype

- `


  ### [UnknownField](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UnknownField)


  ` Represents an unknown field.

  #### Declaration

  Swift

      struct UnknownField

      extension UnknownField : Equatable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Field, Hashable, RawRepresentable, Sendable, SendableMetatype

- `


  ### [UnknownHomeObject](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UnknownHomeObject)


  ` Represents an unknown `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeObject`

  #### Declaration

  Swift

      struct UnknownHomeObject

      extension UnknownHomeObject : Equatable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/HomeObject, Identifiable, Sendable, SendableMetatype

- `


  ### [UnknownStruct](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UnknownStruct)


  ` Represents an unknown struct.

  #### Declaration

  Swift

      struct UnknownStruct

      extension UnknownStruct : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Equatable, Hashable, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [UnknownTrait](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Structs/UnknownTrait)


  ` Represents an unknown `https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait`.

  #### Declaration

  Swift

      struct UnknownTrait

      extension UnknownTrait : CustomStringConvertible, Equatable, Hashable, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/Trait, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/TraitEncodable

- `


  ### [UserStructureController](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/UserStructureController)


  ` A controller for managing user-structure relationships.

  #### Declaration

  Swift

      protocol UserStructureController : Sendable

- `


  ### [Data](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:10Foundation4DataV)


  `

  #### Declaration

  Swift

      extension Data : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Copyable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible, Equatable, Equatable, Escapable, Escapable, Hashable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [Date](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Extensions/Date)


  `

  #### Declaration

  Swift

      extension Date : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Equatable, Escapable, Hashable, Sendable, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [Locale](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Extensions/Locale)


  `
- `


  ### [UserDefaults](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/c:objc(cs)NSUserDefaults)


  `

  #### Declaration

  Swift

      extension UserDefaults : Sendable, SendableMetatype

- `


  ### [Array](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:Sa)


  `

  #### Declaration

  Swift

      extension Array : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK20AutomationValueArrayP, Collection, Copyable, Copyable, Equatable, Escapable, Escapable, Hashable, Sendable, SendableMetatype, Sequence where Element : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP

- `


  ### [Bool](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:Sb)


  `

  #### Declaration

  Swift

      extension Bool : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Copyable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible, Equatable, Equatable, Escapable, Escapable, Hashable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [Dictionary](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:SD)


  `

  #### Declaration

  Swift

      extension Dictionary : https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/AutomationMap, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Equatable, Escapable, Hashable, Sendable, SendableMetatype where Key : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Value : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP

      extension Dictionary : Copyable, DeviceTraitProvider, Escapable, Sendable, SendableMetatype where Key == String, Value == Google.DeviceTrait

- `


  ### [Double](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:Sd)


  `

  #### Declaration

  Swift

      extension Double : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Copyable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible, Equatable, Equatable, Escapable, Escapable, Hashable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [Duration](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Extensions/Duration)


  `

  #### Declaration

  Swift

      extension Duration : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Copyable, Equatable, Equatable, Escapable, Escapable, Hashable, Hashable, Sendable, Sendable, SendableMetatype, SendableMetatype, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/StructDataRepresentable

- `


  ### [Float](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:Sf)


  `

  #### Declaration

  Swift

      extension Float : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Copyable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible, Equatable, Equatable, Escapable, Escapable, Hashable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [Int](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:Si)


  `

  #### Declaration

  Swift

      extension Int : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Equatable, Escapable, Hashable, Sendable, SendableMetatype

- `


  ### [Int16](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:s5Int16V)


  `

  #### Declaration

  Swift

      extension Int16 : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Copyable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible, Equatable, Equatable, Escapable, Escapable, Hashable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [Int32](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:s5Int32V)


  `

  #### Declaration

  Swift

      extension Int32 : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Copyable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible, Equatable, Equatable, Escapable, Escapable, Hashable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [Int64](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:s5Int64V)


  `

  #### Declaration

  Swift

      extension Int64 : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Copyable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible, Equatable, Equatable, Escapable, Escapable, Hashable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [Int8](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:s4Int8V)


  `

  #### Declaration

  Swift

      extension Int8 : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Copyable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible, Equatable, Equatable, Escapable, Escapable, Hashable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [Optional](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:Sq)


  `

  #### Declaration

  Swift

      extension Optional : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Copyable, Equatable, Escapable, Escapable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/OptionalAutomationValue, Sendable, SendableMetatype where Wrapped : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP

      extension Optional : Copyable, Escapable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/OptionalAutomationValueArray where Wrapped : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK20AutomationValueArrayP

      extension Optional : Copyable, Escapable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK18OptionalComparableP where Wrapped : Comparable

      extension Optional : Copyable, Escapable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15OptionalNumericP where Wrapped : Numeric

      extension Optional : Copyable, Escapable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK21OptionalSignedIntegerP where Wrapped : SignedInteger

      extension Optional : Copyable, Escapable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK23OptionalUnsignedIntegerP where Wrapped : UnsignedInteger

- `


  ### [String](https://developers.home.google.com/reference/swift/GoogleHomeSDK/Extensions/String)


  `

  #### Declaration

  Swift

      extension String : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Copyable, Copyable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible, Equatable, Equatable, Escapable, Escapable, Escapable, Hashable, Hashable, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/NamespaceProvider, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP, Sendable, Sendable, SendableMetatype, SendableMetatype

- `


  ### [UInt](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:Su)


  `

  #### Declaration

  Swift

      extension UInt : https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, Copyable, Equatable, Escapable, Hashable, Sendable, SendableMetatype

- `


  ### [UInt16](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:s6UInt16V)


  `

  #### Declaration

  Swift

      extension UInt16 : AdditiveArithmetic, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, BinaryInteger, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK13BitmapStorageP, Comparable, Copyable, Copyable, CustomStringConvertible, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible, Equatable, Equatable, Escapable, Escapable, ExpressibleByIntegerLiteral, Hashable, Hashable, Numeric, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP, Sendable, Sendable, SendableMetatype, SendableMetatype, Strideable, UnsignedInteger

- `


  ### [UInt32](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:s6UInt32V)


  `

  #### Declaration

  Swift

      extension UInt32 : AdditiveArithmetic, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, BinaryInteger, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK13BitmapStorageP, Comparable, Copyable, Copyable, CustomStringConvertible, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible, Equatable, Equatable, Escapable, Escapable, ExpressibleByIntegerLiteral, Hashable, Hashable, Numeric, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP, Sendable, Sendable, SendableMetatype, SendableMetatype, Strideable, UnsignedInteger

- `


  ### [UInt64](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:s6UInt64V)


  `

  #### Declaration

  Swift

      extension UInt64 : AdditiveArithmetic, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, BinaryInteger, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK13BitmapStorageP, Comparable, Copyable, Copyable, CustomStringConvertible, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible, Equatable, Equatable, Escapable, Escapable, ExpressibleByIntegerLiteral, Hashable, Hashable, Numeric, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP, Sendable, Sendable, SendableMetatype, SendableMetatype, Strideable, UnsignedInteger

- `


  ### [UInt8](https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:s5UInt8V)


  `

  #### Declaration

  Swift

      extension UInt8 : AdditiveArithmetic, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK15AutomationValueP, BinaryInteger, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK13BitmapStorageP, Comparable, Copyable, Copyable, CustomStringConvertible, https://developers.home.google.com/reference/swift/GoogleHomeSDK/Protocols/DefaultConstructible, Equatable, Equatable, Escapable, Escapable, ExpressibleByIntegerLiteral, Hashable, Hashable, Numeric, https://developers.home.google.com/reference/swift/GoogleHomeSDK/GoogleHomeSDK#/s:13GoogleHomeSDK6ScalarP, Sendable, Sendable, SendableMetatype, SendableMetatype, Strideable, UnsignedInteger