sig
type 'a t = 'a Js.undefined
external return : 'a -> 'a Js_undefined.t = "%identity"
external test : 'a Js_undefined.t -> bool = "#is_undef"
external testAny : 'a -> bool = "#is_undef"
external empty : 'a Js_undefined.t = "undefined" "BS-EXTERNAL"
val bind :
'a Js_undefined.t ->
([ `Arity_1 of 'a ], 'b) Js.Internal.fn -> 'b Js_undefined.t
val iter :
'a Js_undefined.t -> ([ `Arity_1 of 'a ], unit) Js.Internal.fn -> unit
val from_opt : 'a option -> 'a Js_undefined.t
external to_opt : 'a Js_undefined.t -> 'a option = "#undefined_to_opt"
end