# AvailableArmLevels

    struct AvailableArmLevels

The supported security levels of the device. If this attribute is not reported, the device
supports only one level.
- `


  ### [levels](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Google/ArmDisarmTrait/AvailableArmLevels#/s:15GoogleHomeTypes0A0O14ArmDisarmTraitV09AvailableD6LevelsV6levelsSayAE0H0VGvp)


  ` The available security levels supported by the device.

  #### Declaration

  Swift

      let levels: [https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Google.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Google/ArmDisarmTrait.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Google/ArmDisarmTrait/Levels.html]

- `


  ### [ordered](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Google/ArmDisarmTrait/AvailableArmLevels#/s:15GoogleHomeTypes0A0O14ArmDisarmTraitV09AvailableD6LevelsV7orderedSbvp)


  ` If set to `true`, additional grammar for increase or decrease logic applies, in the order
  of the levels array. If this value is set to `false`, additional grammar for increase or
  decrease logic is not supported.

  #### Declaration

  Swift

      let ordered: Bool

- `


  ### [init(decoder:)](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Google/ArmDisarmTrait/AvailableArmLevels#/s:15GoogleHomeTypes0A0O14ArmDisarmTraitV09AvailableD6LevelsV7decoderAG0aB3SDK0F7DecoderV_tKcfc)


  ` Creates a new Struct instance using data read from the given `TraitDecoder`.
  Throws
  `HomeError.parseError` when parsing fails.

  #### Declaration

  Swift

      init(decoder: TraitDecoder) throws

  #### Parameters

  |---|---|
  | ` decoder ` | The raw data representing this Struct. |

- `


  ### [encode(with:)](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Google/ArmDisarmTrait/AvailableArmLevels#/s:15GoogleHomeTypes0A0O14ArmDisarmTraitV09AvailableD6LevelsV6encode4withy0aB3SDK0F7EncoderC_tKF)


  ` Writes this Struct to the given `TraitEncoder`.
  Throws `HomeError.parseError` if the data could not be encoded.

  #### Declaration

  Swift

      func encode(with encoder: TraitEncoder) throws

- `


  ### [structField(id:)](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Google/ArmDisarmTrait/AvailableArmLevels#/s:15GoogleHomeTypes0A0O14ArmDisarmTraitV09AvailableD6LevelsV11structField2id0aB3SDK0J0_pSgs6UInt32V_tFZ)


  ` Returns the field corresponding to the given field ID.

  #### Declaration

  Swift

      static func structField(id: UInt32) -> (any Field)?