sig   type auth   val auth :     user:string -> unit -> (B0_github.auth, string) Pervasives.result   type content_type = string   type v3_body =       [ `Empty       | `Json of B0_web.Jsong.t       | `Other of B0_github.content_type * string ]   val req_json_v3 :     ?headers:B0_web.Http.headers ->     B0_web.Http.t ->     B0_github.auth ->     path:string ->     B0_web.Http.meth ->     B0_github.v3_body -> (B0_web.Json.t, string) Pervasives.result   val query_v4 :     B0_web.Http.t ->     B0_github.auth -> string -> (B0_web.Json.t, string) Pervasives.result   module Repo :     sig       type t       val v : owner:string -> string -> B0_github.Repo.t       val owner : B0_github.Repo.t -> string       val name : B0_github.Repo.t -> string       val req_json_v3 :         ?headers:B0_web.Http.headers ->         B0_web.Http.t ->         B0_github.auth ->         B0_github.Repo.t ->         path:string ->         B0_web.Http.meth ->         B0_github.v3_body -> (B0_web.Json.t, string) Pervasives.result       val query_v4 :         B0_web.Http.t ->         B0_github.auth ->         B0_github.Repo.t ->         string -> (B0_web.Json.t, string) Pervasives.result     end   module Issue :     sig       type num = int       type uri = string       type t       val number : B0_github.Issue.t -> B0_github.Issue.num       val title : B0_github.Issue.t -> string       val body : B0_github.Issue.t -> string       val url : B0_github.Issue.t -> string       val pp : B0_github.Issue.t B0_std.Fmt.t       val pp_short : B0_github.Issue.t B0_std.Fmt.t       val list :         B0_web.Http.t ->         B0_github.auth ->         B0_github.Repo.t ->         (int * B0_github.Issue.t list, string) Pervasives.result       val create :         B0_web.Http.t ->         B0_github.auth ->         B0_github.Repo.t ->         title:string ->         body:string ->         unit ->         (B0_github.Issue.num * B0_github.Issue.uri, string) Pervasives.result       val close :         B0_web.Http.t ->         B0_github.auth ->         B0_github.Repo.t ->         B0_github.Issue.num ->         (B0_github.Issue.num * B0_github.Issue.uri, string) Pervasives.result     end   module Release :     sig       type t       val id : B0_github.Release.t -> int       val tag_name : B0_github.Release.t -> string       val body : B0_github.Release.t -> string       val html_url : B0_github.Release.t -> string       val assets_url : B0_github.Release.t -> string       val pp : B0_github.Release.t B0_std.Fmt.t       val pp_short : B0_github.Release.t B0_std.Fmt.t       val create :         B0_web.Http.t ->         B0_github.auth ->         B0_github.Repo.t ->         tag_name:string ->         body:string ->         unit -> (B0_github.Release.t, string) Pervasives.result       val get :         B0_web.Http.t ->         B0_github.auth ->         B0_github.Repo.t ->         tag_name:string ->         unit -> (B0_github.Release.t, string) Pervasives.result       val upload_asset :         B0_web.Http.t ->         B0_github.auth ->         B0_github.Repo.t ->         B0_github.Release.t ->         content_type:string ->         name:string -> string -> (unit, string) Pervasives.result     end   module Pages :     sig       type update = B0_std.Fpath.t * B0_std.Fpath.t option       val update :         ?branch:string ->         B0_vcs.t ->         force:bool ->         remote:string ->         msg:string ->         B0_github.Pages.update list -> (unit, string) Pervasives.result     end end