sig
  val library_version : string
  module AnnotatedTree :
    sig
      type ('a, 'b) t =
          Leaf of 'a * 'b
        | Node of 'a * ('a, 'b) GapiCore.AnnotatedTree.t list
      val map : ('-> 'b) -> 'a list -> 'b list
      val kfold :
        ('->
         (('-> 'b) -> 'c) list ->
         ('a, 'd) GapiCore.AnnotatedTree.t -> ('-> 'b) -> 'c) ->
        ('-> '-> ('a, 'd) GapiCore.AnnotatedTree.t -> ('-> 'b) -> 'c) ->
        ('a, 'd) GapiCore.AnnotatedTree.t -> 'c
      val xfold :
        ('-> 'b list -> ('a, 'c) GapiCore.AnnotatedTree.t -> 'b) ->
        ('-> '-> ('a, 'c) GapiCore.AnnotatedTree.t -> 'b) ->
        ('a, 'c) GapiCore.AnnotatedTree.t -> 'b
      val fold :
        ('-> 'b list -> 'b) ->
        ('-> '-> 'b) -> ('a, 'c) GapiCore.AnnotatedTree.t -> 'b
    end
  module HttpMethod :
    sig
      type t = GET | POST | PUT | DELETE | PATCH | HEAD
      val to_string : GapiCore.HttpMethod.t -> string
    end
  module PostData :
    sig
      type body =
          String of string
        | File of string * int * int64
        | Buffer of
            (char, Bigarray.int8_unsigned_elt, Bigarray.c_layout)
            Bigarray.Array1.t
      type t =
          Fields of (string * string) list
        | Body of GapiCore.PostData.body * string
      val empty : GapiCore.PostData.t
    end
  module Header :
    sig
      type t =
          HttpStatus of string * int * string
        | ContentType of string
        | Location of string
        | Authorization of string
        | ETag of string
        | IfNoneMatch of string
        | IfMatch of string
        | GdataVersion of string
        | ContentRange of string
        | Range of string
        | UploadContentType of string
        | UploadContentLength of string
        | Slug of string
        | ContentLength of string
        | KeyValueHeader of string * string
        | OtherHeader of string
      val to_string : GapiCore.Header.t -> string
      val parse : string -> GapiCore.Header.t
    end
  module SignatureMethod :
    sig
      type t = RSA_SHA1 | HMAC_SHA1
      val to_string : GapiCore.SignatureMethod.t -> string
    end
end