functor (Key_info : KEY_INFO) () ->   sig     module Key :       sig         type 'a typed         type 'a info = 'Key_info.t         type t = V : 'a typed -> t         val v :           ?loc:Def.loc ->           ?doc:string -> string -> 'Conv.t -> 'a info -> 'a typed         val conv : 'a typed -> 'Conv.t         val info : 'a typed -> 'a info         val of_typed : 'a typed -> t         val value_kind : string         val name : t -> string         val loc : t -> Def.loc         val doc : t -> string         val equal : t -> t -> bool         val compare : t -> t -> int         val compare_by_name : t -> t -> int         val find : string -> t option         val get : string -> t         val get_or_suggest : string -> (t, string list) result         val list : unit -> t list         val pp_name_str : string Fmt.t         val pp_name : t Fmt.t         val pp_synopsis : t Fmt.t         val pp_info : t Fmt.t         val pp_info_ext : t Fmt.t -> t Fmt.t       end     type 'a key = 'Key.typed     type t     val empty : t     val is_empty : t -> bool     val mem : 'a key -> t -> bool     val add : 'a key -> '-> t -> t     val add_tag : bool key -> t -> t     val singleton : 'a key -> '-> t     val rem : 'a key -> t -> t     val find : 'a key -> t -> 'a option     val get : 'a key -> t -> 'a     val get_or_suggest : 'a key -> t -> ('a, string list) result     val flag : ?absent:bool -> bool key -> t -> bool     type binding = B : 'a key * '-> binding     val iter : (binding -> unit) -> t -> unit     val fold : (binding -> '-> 'a) -> t -> '-> 'a     val for_all : (binding -> bool) -> t -> bool     val exists : (binding -> bool) -> t -> bool     val filter : (binding -> bool) -> t -> t     val cardinal : t -> int     val any_binding : t -> binding option     val get_any_binding : t -> binding     val pp : t Fmt.t     type encode_error = string * [ `Msg of string ]     val encode : t -> (string * string) list * encode_error list     type decode_error = string * [ `Msg of string | `Unknown ]     val decode : (string * string) list -> t * decode_error list   end