sig
type 'a t = 'a option
val some : 'a -> 'a option
val isSome : 'a option -> bool
val isSomeValue :
([ `Arity_2 of 'a * 'a ], bool) Js.Internal.fn -> 'a -> 'a option -> bool
val isNone : 'a option -> bool
val getExn : 'a option -> 'a
val equal :
([ `Arity_2 of 'a * 'b ], bool) Js.Internal.fn ->
'a option -> 'b option -> bool
val andThen :
([ `Arity_1 of 'a ], 'b option) Js.Internal.fn -> 'a option -> 'b option
val map : ([ `Arity_1 of 'a ], 'b) Js.Internal.fn -> 'a option -> 'b option
val default : 'a -> 'a option -> 'a
val filter :
([ `Arity_1 of 'a ], bool) Js.Internal.fn -> 'a option -> 'a option
val firstSome : 'a option -> 'a option -> 'a option
end