sig
  type t = {
    allowFileDiscovery : bool;
    displayName : string;
    domain : string;
    emailAddress : string;
    expirationTime : GapiDate.t;
    id : string;
    kind : string;
    photoLink : string;
    role : string;
    _type : string;
  }
  val allowFileDiscovery : (GapiDriveV3Model.Permission.t, bool) GapiLens.t
  val displayName : (GapiDriveV3Model.Permission.t, string) GapiLens.t
  val domain : (GapiDriveV3Model.Permission.t, string) GapiLens.t
  val emailAddress : (GapiDriveV3Model.Permission.t, string) GapiLens.t
  val expirationTime : (GapiDriveV3Model.Permission.t, GapiDate.t) GapiLens.t
  val id : (GapiDriveV3Model.Permission.t, string) GapiLens.t
  val kind : (GapiDriveV3Model.Permission.t, string) GapiLens.t
  val photoLink : (GapiDriveV3Model.Permission.t, string) GapiLens.t
  val role : (GapiDriveV3Model.Permission.t, string) GapiLens.t
  val _type : (GapiDriveV3Model.Permission.t, string) GapiLens.t
  val empty : GapiDriveV3Model.Permission.t
  val render : GapiDriveV3Model.Permission.t -> GapiJson.json_data_model list
  val parse :
    GapiDriveV3Model.Permission.t ->
    GapiJson.json_data_model -> GapiDriveV3Model.Permission.t
  val to_data_model :
    GapiDriveV3Model.Permission.t -> GapiJson.json_data_model
  val of_data_model :
    GapiJson.json_data_model -> GapiDriveV3Model.Permission.t
end