sig
type 'a t
type key = string
external get : 'a Js_dict.t -> Js_dict.key -> 'a option = "" "BS-EXTERNAL"
external unsafeGet : 'a Js_dict.t -> Js_dict.key -> 'a = "" "BS-EXTERNAL"
external set : 'a Js_dict.t -> Js_dict.key -> 'a -> unit = "" "BS-EXTERNAL"
external keys : 'a Js_dict.t -> string array = "Object.keys" "BS-EXTERNAL"
external empty : unit -> 'a Js_dict.t = "" "BS-EXTERNAL"
val unsafeDeleteKey :
([ `Arity_2 of string Js_dict.t * string ], unit) Js.Internal.fn
val entries : 'a Js_dict.t -> (Js_dict.key * 'a) array
val values : 'a Js_dict.t -> 'a array
val fromList : (Js_dict.key * 'a) list -> 'a Js_dict.t
val fromArray : (Js_dict.key * 'a) array -> 'a Js_dict.t
val map :
([ `Arity_1 of 'a ], 'b) Js.Internal.fn -> 'a Js_dict.t -> 'b Js_dict.t
end