sig   type curl_context   type 'a t =       Initialized     | Created of GapiCurl.curl_context     | Destroyed     | Uninitialized   val global_init : unit -> [ `Initialized ] GapiCurl.t   val init :     ?debug_function:(Curl.t -> Curl.curlDebugType -> string -> unit) ->     ?timeout:int ->     ?connect_timeout:int ->     ?follow_location:bool ->     ?compress:bool ->     ?max_send_speed:int64 ->     ?max_recv_speed:int64 ->     ?low_speed_limit:int ->     ?low_speed_time:int ->     ?no_signal:bool ->     ?options:Curl.curlOption list ->     [ `Initialized ] GapiCurl.t -> [ `Created ] GapiCurl.t   val set_options : Curl.curlOption list -> [ `Created ] GapiCurl.t -> unit   val set_writefunction : (string -> int) -> [ `Created ] GapiCurl.t -> unit   val set_headerfunction : (string -> int) -> [ `Created ] GapiCurl.t -> unit   val set_httpheader :     GapiCore.Header.t list -> [ `Created ] GapiCurl.t -> unit   val set_httpget : bool -> [ `Created ] GapiCurl.t -> unit   val set_post : bool -> [ `Created ] GapiCurl.t -> unit   val set_nobody : bool -> [ `Created ] GapiCurl.t -> unit   val set_upload : bool -> [ `Created ] GapiCurl.t -> unit   val set_httpbody :     GapiCore.PostData.body -> [ `Created ] GapiCurl.t -> unit   val set_customrequest : string -> [ `Created ] GapiCurl.t -> unit   val set_postfields :     (string * string) list -> [ `Created ] GapiCurl.t -> unit   val set_useragent : string -> [ `Created ] GapiCurl.t -> unit   val set_cookies : string list -> [ `Created ] GapiCurl.t -> unit   val reset_all_cookies : [ `Created ] GapiCurl.t -> unit   val reset_session_cookies : [ `Created ] GapiCurl.t -> unit   val perform : string -> [ `Created ] GapiCurl.t -> unit   val get_error_buffer : [ `Created ] GapiCurl.t -> string   val get_responsecode : [ `Created ] GapiCurl.t -> int   val cleanup : [ `Created ] GapiCurl.t -> [ `Destroyed ] GapiCurl.t   val global_cleanup :     [ `Initialized ] GapiCurl.t -> [ `Uninitialized ] GapiCurl.t   val string_of_curl_info_type : Curl.curlDebugType -> string end