Mtypeval scrape : Env.t -> Types.module_type -> Types.module_typeval scrape_for_functor_arg : Env.t -> Types.module_type -> Types.module_typeval scrape_for_type_of : remove_aliases:bool -> Env.t -> Types.module_type -> Types.module_typeval freshen : scope:int -> Types.module_type -> Types.module_typeval strengthen : aliasable:bool -> Env.t -> Types.module_type -> Path.t -> Types.module_typeval strengthen_decl : aliasable:bool -> Env.t -> Types.module_declaration -> Path.t -> Types.module_declarationval nondep_supertype : Env.t -> Ident.t list -> Types.module_type -> Types.module_typeval nondep_sig_item : Env.t -> Ident.t list -> Types.signature_item -> Types.signature_itemval no_code_needed : Env.t -> Types.module_type -> boolval no_code_needed_sig : Env.t -> Types.signature -> boolval enrich_modtype : Env.t -> Path.t -> Types.module_type -> Types.module_typeval enrich_typedecl : Env.t -> Path.t -> Ident.t -> Types.type_declaration -> Types.type_declarationval type_paths : Env.t -> Path.t -> Types.module_type -> Path.t listval contains_type : Env.t -> Types.module_type -> boolval lower_nongen : int -> Types.module_type -> unit