    struct ProgramStruct

A program within an electronic program guide (EPG).
- `


  ### [identifier](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV10identifierSSvp)


  ` A unique identifier for a program within an electronic program guide list.

  #### Declaration

  Swift

      let identifier: String

- `


  ### [channel](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV7channelAE0e4InfoH0Vvp)


  ` The channel associated to the program.

  #### Declaration

  Swift

      let channel: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ChannelInfoStruct.html

- `


  ### [startTime](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV9startTimes6UInt32Vvp)


  ` The start time of a program, as a UTC time.

  #### Declaration

  Swift

      let startTime: UInt32

- `


  ### [endTime](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV7endTimes6UInt32Vvp)


  ` The end time of a program, as a UTC time.

  #### Declaration

  Swift

      let endTime: UInt32

- `


  ### [title](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV5titleSSvp)


  ` The title or name for the specific program.

  #### Declaration

  Swift

      let title: String

- `


  ### [subtitle](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV8subtitleSSSgvp)


  ` The subtitle for the specific program.

  #### Declaration

  Swift

      let subtitle: String?

- `


  ### [description](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV11descriptionSSSgvp)


  ` The brief description for the specific program.

  #### Declaration

  Swift

      let description: String?

- `


  ### [audioLanguages](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV14audioLanguagesSaySSGSgvp)


  ` The audio language for the specific program.

  #### Declaration

  Swift

      let audioLanguages: [String]?

- `


  ### [ratings](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV7ratingsSaySSGSgvp)


  ` Indicating the level of parental guidance recommended for a particular program.

  #### Declaration

  Swift

      let ratings: [String]?

- `


  ### [thumbnailUrl](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV12thumbnailUrlSSSgvp)


  ` A URL of a thumbnail that clients can use to render an image for the program.

  #### Declaration

  Swift

      let thumbnailUrl: String?

- `


  ### [posterArtUrl](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV12posterArtUrlSSSgvp)


  ` A URL of a poster that clients can use to render an image for the program on the detail
  view.

  #### Declaration

  Swift

      let posterArtUrl: String?

- `


  ### [dvbiUrl](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV7dvbiUrlSSSgvp)


  ` The DVB-I URL associated to the program.

  #### Declaration

  Swift

      let dvbiUrl: String?

- `


  ### [releaseDate](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV11releaseDateSSSgvp)


  ` The date on which the program was released.

  #### Declaration

  Swift

      let releaseDate: String?

- `


  ### [parentalGuidanceText](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV20parentalGuidanceTextSSSgvp)


  ` Additional information on the parental guidance.

  #### Declaration

  Swift

      let parentalGuidanceText: String?

- `


  ### [recordingFlag](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV13recordingFlagAE09RecordingJ6BitmapVSgvp)


  ` The recording status of the program.

  #### Declaration

  Swift

      let recordingFlag: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/RecordingFlagBitmap.html?

- `


  ### [seriesInfo](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV10seriesInfoAE06SeriesjH0VSgvp)


  ` The information of a series such as season and episode number.

  #### Declaration

  Swift

      let seriesInfo: https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/SeriesInfoStruct.html?

- `


  ### [categoryList](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV12categoryListSayAE0g8CategoryH0VGSgvp)


  ` The category of a particular program.

  #### Declaration

  Swift

      let categoryList: [https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramCategoryStruct.html]?

- `


  ### [castList](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV8castListSayAE0g4CastH0VGSgvp)


  ` A list of the cast or the crew on the program.

  #### Declaration

  Swift

      let castList: [https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait.html.https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramCastStruct.html]?

- `


  ### [init(decoder:)](https://developers.home.google.com/reference/swift/GoogleHomeTypes/Enums/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV7decoderAG0aB3SDK0F7DecoderV_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/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV6encode4withy0aB3SDK0F7EncoderC_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/Matter/ChannelTrait/ProgramStruct#/s:15GoogleHomeTypes6MatterO12ChannelTraitV13ProgramStructV11structField2id0aB3SDK0J0_pSgs6UInt32V_tFZ)


  ` Returns the field corresponding to the given field ID.

  #### Declaration

  Swift

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