`type readyState =`

1. `| UNSENT`
2. `| OPENED`
3. `| HEADERS_RECEIVED`
4. `| LOADING`
5. `| DONE`

`type _ response =`

1. `| ArrayBuffer : Typed_array.arrayBuffer Js.t Js.Opt.t response`
2. `| Blob : File.blob Js.t Js.Opt.t response`
3. `| Document : Dom.element Dom.document Js.t Js.Opt.t response`
4. `| JSON : 'a Js.Opt.t response`
5. `| Text : Js.js_string Js.t response`
6. `| Default : string response`

`class type xmlHttpRequest = object ... end`
`class type xmlHttpRequestUpload = object ... end`
`val create : unit -> xmlHttpRequest Js.t`

The next part of this module allow one to use Ocaml with no need for Javascript documentation.

`module Event : sig ... end`