Module Node

module Node: sig .. end
place holder for node bindings

module Path: Node_path
module Fs: Node_fs
module Process: Node_process
module Module: Node_module
module Buffer: Node_buffer
module Child_process: Node_child_process
type node_exports 
type node_module = < children : node_module array; exports : node_exports;
filename : string; id : string; loaded : Js.boolean;
parrent : node_module Js.null_undefined; paths : string array >
Js.t
type node_require = < main : node_module Js.undefined; resolve : (string -> string [@bs]) >
Js.t
type string_buffer 
type buffer 
type '_ string_buffer_kind = 
| String:string string_buffer_kind
| Buffer:buffer string_buffer_kind
val test : string_buffer -> 'a string_buffer_kind * 'a
We except a good inliner will eliminate such boxing in the future