sig
  module NotificationSettings :
    sig
      type t = {
        notifications : GapiCalendarV3Model.CalendarNotification.t list;
      }
      val notifications :
        (GapiCalendarV3Model.CalendarListEntry.NotificationSettings.t,
         GapiCalendarV3Model.CalendarNotification.t list)
        GapiLens.t
      val empty :
        GapiCalendarV3Model.CalendarListEntry.NotificationSettings.t
      val render :
        GapiCalendarV3Model.CalendarListEntry.NotificationSettings.t ->
        GapiJson.json_data_model list
      val parse :
        GapiCalendarV3Model.CalendarListEntry.NotificationSettings.t ->
        GapiJson.json_data_model ->
        GapiCalendarV3Model.CalendarListEntry.NotificationSettings.t
    end
  type t = {
    accessRole : string;
    backgroundColor : string;
    colorId : string;
    defaultReminders : GapiCalendarV3Model.EventReminder.t list;
    deleted : bool;
    description : string;
    etag : string;
    foregroundColor : string;
    hidden : bool;
    id : string;
    kind : string;
    location : string;
    notificationSettings :
      GapiCalendarV3Model.CalendarListEntry.NotificationSettings.t;
    primary : bool;
    selected : bool;
    summary : string;
    summaryOverride : string;
    timeZone : string;
  }
  val accessRole :
    (GapiCalendarV3Model.CalendarListEntry.t, string) GapiLens.t
  val backgroundColor :
    (GapiCalendarV3Model.CalendarListEntry.t, string) GapiLens.t
  val colorId : (GapiCalendarV3Model.CalendarListEntry.t, string) GapiLens.t
  val defaultReminders :
    (GapiCalendarV3Model.CalendarListEntry.t,
     GapiCalendarV3Model.EventReminder.t list)
    GapiLens.t
  val deleted : (GapiCalendarV3Model.CalendarListEntry.t, bool) GapiLens.t
  val description :
    (GapiCalendarV3Model.CalendarListEntry.t, string) GapiLens.t
  val etag : (GapiCalendarV3Model.CalendarListEntry.t, string) GapiLens.t
  val foregroundColor :
    (GapiCalendarV3Model.CalendarListEntry.t, string) GapiLens.t
  val hidden : (GapiCalendarV3Model.CalendarListEntry.t, bool) GapiLens.t
  val id : (GapiCalendarV3Model.CalendarListEntry.t, string) GapiLens.t
  val kind : (GapiCalendarV3Model.CalendarListEntry.t, string) GapiLens.t
  val location : (GapiCalendarV3Model.CalendarListEntry.t, string) GapiLens.t
  val notificationSettings :
    (GapiCalendarV3Model.CalendarListEntry.t,
     GapiCalendarV3Model.CalendarListEntry.NotificationSettings.t)
    GapiLens.t
  val primary : (GapiCalendarV3Model.CalendarListEntry.t, bool) GapiLens.t
  val selected : (GapiCalendarV3Model.CalendarListEntry.t, bool) GapiLens.t
  val summary : (GapiCalendarV3Model.CalendarListEntry.t, string) GapiLens.t
  val summaryOverride :
    (GapiCalendarV3Model.CalendarListEntry.t, string) GapiLens.t
  val timeZone : (GapiCalendarV3Model.CalendarListEntry.t, string) GapiLens.t
  val empty : GapiCalendarV3Model.CalendarListEntry.t
  val render :
    GapiCalendarV3Model.CalendarListEntry.t -> GapiJson.json_data_model list
  val parse :
    GapiCalendarV3Model.CalendarListEntry.t ->
    GapiJson.json_data_model -> GapiCalendarV3Model.CalendarListEntry.t
  val to_data_model :
    GapiCalendarV3Model.CalendarListEntry.t -> GapiJson.json_data_model
  val of_data_model :
    GapiJson.json_data_model -> GapiCalendarV3Model.CalendarListEntry.t
end