sig
  module MobileContentAdsSettings :
    sig
      type t = {
        markupLanguage : string;
        scriptingLanguage : string;
        size : string;
        _type : string;
      }
      val markupLanguage :
        (GapiAdsenseV1_4Model.AdUnit.MobileContentAdsSettings.t, string)
        GapiLens.t
      val scriptingLanguage :
        (GapiAdsenseV1_4Model.AdUnit.MobileContentAdsSettings.t, string)
        GapiLens.t
      val size :
        (GapiAdsenseV1_4Model.AdUnit.MobileContentAdsSettings.t, string)
        GapiLens.t
      val _type :
        (GapiAdsenseV1_4Model.AdUnit.MobileContentAdsSettings.t, string)
        GapiLens.t
      val empty : GapiAdsenseV1_4Model.AdUnit.MobileContentAdsSettings.t
      val render :
        GapiAdsenseV1_4Model.AdUnit.MobileContentAdsSettings.t ->
        GapiJson.json_data_model list
      val parse :
        GapiAdsenseV1_4Model.AdUnit.MobileContentAdsSettings.t ->
        GapiJson.json_data_model ->
        GapiAdsenseV1_4Model.AdUnit.MobileContentAdsSettings.t
    end
  module FeedAdsSettings :
    sig
      type t = {
        adPosition : string;
        frequency : int;
        minimumWordCount : int;
        _type : string;
      }
      val adPosition :
        (GapiAdsenseV1_4Model.AdUnit.FeedAdsSettings.t, string) GapiLens.t
      val frequency :
        (GapiAdsenseV1_4Model.AdUnit.FeedAdsSettings.t, int) GapiLens.t
      val minimumWordCount :
        (GapiAdsenseV1_4Model.AdUnit.FeedAdsSettings.t, int) GapiLens.t
      val _type :
        (GapiAdsenseV1_4Model.AdUnit.FeedAdsSettings.t, string) GapiLens.t
      val empty : GapiAdsenseV1_4Model.AdUnit.FeedAdsSettings.t
      val render :
        GapiAdsenseV1_4Model.AdUnit.FeedAdsSettings.t ->
        GapiJson.json_data_model list
      val parse :
        GapiAdsenseV1_4Model.AdUnit.FeedAdsSettings.t ->
        GapiJson.json_data_model ->
        GapiAdsenseV1_4Model.AdUnit.FeedAdsSettings.t
    end
  module ContentAdsSettings :
    sig
      module BackupOption :
        sig
          type t = { color : string; _type : string; url : string; }
          val color :
            (GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.BackupOption.t,
             string)
            GapiLens.t
          val _type :
            (GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.BackupOption.t,
             string)
            GapiLens.t
          val url :
            (GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.BackupOption.t,
             string)
            GapiLens.t
          val empty :
            GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.BackupOption.t
          val render :
            GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.BackupOption.t ->
            GapiJson.json_data_model list
          val parse :
            GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.BackupOption.t ->
            GapiJson.json_data_model ->
            GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.BackupOption.t
        end
      type t = {
        backupOption :
          GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.BackupOption.t;
        size : string;
        _type : string;
      }
      val backupOption :
        (GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.t,
         GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.BackupOption.t)
        GapiLens.t
      val size :
        (GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.t, string) GapiLens.t
      val _type :
        (GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.t, string) GapiLens.t
      val empty : GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.t
      val render :
        GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.t ->
        GapiJson.json_data_model list
      val parse :
        GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.t ->
        GapiJson.json_data_model ->
        GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.t
    end
  type t = {
    code : string;
    contentAdsSettings : GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.t;
    customStyle : GapiAdsenseV1_4Model.AdStyle.t;
    feedAdsSettings : GapiAdsenseV1_4Model.AdUnit.FeedAdsSettings.t;
    id : string;
    kind : string;
    mobileContentAdsSettings :
      GapiAdsenseV1_4Model.AdUnit.MobileContentAdsSettings.t;
    name : string;
    savedStyleId : string;
    status : string;
  }
  val code : (GapiAdsenseV1_4Model.AdUnit.t, string) GapiLens.t
  val contentAdsSettings :
    (GapiAdsenseV1_4Model.AdUnit.t,
     GapiAdsenseV1_4Model.AdUnit.ContentAdsSettings.t)
    GapiLens.t
  val customStyle :
    (GapiAdsenseV1_4Model.AdUnit.t, GapiAdsenseV1_4Model.AdStyle.t)
    GapiLens.t
  val feedAdsSettings :
    (GapiAdsenseV1_4Model.AdUnit.t,
     GapiAdsenseV1_4Model.AdUnit.FeedAdsSettings.t)
    GapiLens.t
  val id : (GapiAdsenseV1_4Model.AdUnit.t, string) GapiLens.t
  val kind : (GapiAdsenseV1_4Model.AdUnit.t, string) GapiLens.t
  val mobileContentAdsSettings :
    (GapiAdsenseV1_4Model.AdUnit.t,
     GapiAdsenseV1_4Model.AdUnit.MobileContentAdsSettings.t)
    GapiLens.t
  val name : (GapiAdsenseV1_4Model.AdUnit.t, string) GapiLens.t
  val savedStyleId : (GapiAdsenseV1_4Model.AdUnit.t, string) GapiLens.t
  val status : (GapiAdsenseV1_4Model.AdUnit.t, string) GapiLens.t
  val empty : GapiAdsenseV1_4Model.AdUnit.t
  val render : GapiAdsenseV1_4Model.AdUnit.t -> GapiJson.json_data_model list
  val parse :
    GapiAdsenseV1_4Model.AdUnit.t ->
    GapiJson.json_data_model -> GapiAdsenseV1_4Model.AdUnit.t
  val to_data_model :
    GapiAdsenseV1_4Model.AdUnit.t -> GapiJson.json_data_model
  val of_data_model :
    GapiJson.json_data_model -> GapiAdsenseV1_4Model.AdUnit.t
end