# Feature

    struct Feature

DoorLock cluster FeatureMap. Some behaviors of these features are described in the cluster
attributes and commands. For complete details of these features, see the [Matter
Specification](https://csa-iot.org/developer-resource/specifications-download-request/).
- `


  ### [rawValue](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV8rawValues6UInt32Vvp)


  ` The corresponding value of the raw type.

  A new instance initialized with `rawValue` will be equivalent to this
  instance. For example:

      enum PaperSize: String {
          case A4, A5, Letter, Legal
      }

      let selectedSize = PaperSize.Letter
      print(selectedSize.rawValue)
      // Prints "Letter"

      print(selectedSize == PaperSize(rawValue: selectedSize.rawValue)!)
      // Prints "true"

  #### Declaration

  Swift

      let rawValue: UInt32

- `


  ### [init(rawValue:)](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV8rawValueAGs6UInt32V_tcfc)


  ` Creates a new option set from the given raw value.

  This initializer always succeeds, even if the value passed as `https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature.html#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV8rawValues6UInt32Vvp`
  exceeds the static properties declared as part of the option set. This
  example creates an instance of `ShippingOptions` with a raw value beyond
  the highest element, with a bit mask that effectively contains all the
  declared static members.

      let extraOptions = ShippingOptions(rawValue: 255)
      print(extraOptions.isStrictSuperset(of: .all))
      // Prints "true"

  #### Declaration

  Swift

      init(rawValue: UInt32)

  #### Parameters

  |---|---|
  | ` rawValue ` | The raw value of the option set to create. Each bit of `https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature.html#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV8rawValues6UInt32Vvp` potentially represents an element of the option set, though raw values may include bits that are not defined as distinct values of the `OptionSet` type. |

- `


  ### [pinCredential](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV13pinCredentialAGvpZ)


  ` Lock supports PIN credentials using the keypad or over the air.

  #### Declaration

  Swift

      static let pinCredential: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait.html.Feature

- `


  ### [rfidCredential](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV14rfidCredentialAGvpZ)


  ` Lock supports RFID credentials.

  #### Declaration

  Swift

      static let rfidCredential: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait.html.Feature

- `


  ### [fingerCredentials](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV17fingerCredentialsAGvpZ)


  ` Lock supports finger related credentials such as fingerprint, or vein.

  #### Declaration

  Swift

      static let fingerCredentials: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait.html.Feature

- `


  ### [logging](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV7loggingAGvpZ)


  ` Lock supports local or on-lock logging when events are not supported.

  #### Declaration

  Swift

      static let logging: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait.html.Feature

- `


  ### [weekDayAccessSchedules](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV22weekDayAccessSchedulesAGvpZ)


  ` Lock supports week day user access schedules.

  #### Declaration

  Swift

      static let weekDayAccessSchedules: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait.html.Feature

- `


  ### [doorPositionSensor](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV18doorPositionSensorAGvpZ)


  ` Lock supports a door position sensor that indicates the door's state.

  #### Declaration

  Swift

      static let doorPositionSensor: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait.html.Feature

- `


  ### [faceCredentials](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV15faceCredentialsAGvpZ)


  ` Lock supports face-related credentials such as face, iris, or retina.

  #### Declaration

  Swift

      static let faceCredentials: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait.html.Feature

- `


  ### [credentialsOverTheAirAccess](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV27credentialsOverTheAirAccessAGvpZ)


  ` Lock supports accepting credentials transmitted over the air.

  #### Declaration

  Swift

      static let credentialsOverTheAirAccess: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait.html.Feature

- `


  ### [user](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV4userAGvpZ)


  ` Lock supports the user commands and database.

  #### Declaration

  Swift

      static let user: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait.html.Feature

- `


  ### [notification](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV12notificationAGvpZ)


  ` Operation and Programming Notifications.

  #### Declaration

  Swift

      static let notification: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait.html.Feature

- `


  ### [yearDayAccessSchedules](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV22yearDayAccessSchedulesAGvpZ)


  ` Lock supports year day user access schedules.

  #### Declaration

  Swift

      static let yearDayAccessSchedules: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait.html.Feature

- `


  ### [holidaySchedules](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV16holidaySchedulesAGvpZ)


  ` Lock supports holiday schedules.

  #### Declaration

  Swift

      static let holidaySchedules: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait.html.Feature

- `


  ### [unbolt](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait/Feature#/s:15GoogleHomeTypes6MatterO13DoorLockTraitV7FeatureV6unboltAGvpZ)


  ` Lock supports the unbolt command.

  #### Declaration

  Swift

      static let unbolt: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/DoorLockTrait.html.Feature