sig
  val mk :
    ?loc:Ast_402.??.loc ->
    ?attrs:Ast_402.??.attrs ->
    Ast_402.Parsetree.module_type_desc -> Ast_402.Parsetree.module_type
  val attr :
    Ast_402.Parsetree.module_type ->
    Ast_402.Parsetree.attribute -> Ast_402.Parsetree.module_type
  val ident :
    ?loc:Ast_402.??.loc ->
    ?attrs:Ast_402.??.attrs ->
    Ast_402.??.lid -> Ast_402.Parsetree.module_type
  val alias :
    ?loc:Ast_402.??.loc ->
    ?attrs:Ast_402.??.attrs ->
    Ast_402.??.lid -> Ast_402.Parsetree.module_type
  val signature :
    ?loc:Ast_402.??.loc ->
    ?attrs:Ast_402.??.attrs ->
    Ast_402.Parsetree.signature -> Ast_402.Parsetree.module_type
  val functor_ :
    ?loc:Ast_402.??.loc ->
    ?attrs:Ast_402.??.attrs ->
    Ast_402.??.str ->
    Ast_402.Parsetree.module_type option ->
    Ast_402.Parsetree.module_type -> Ast_402.Parsetree.module_type
  val with_ :
    ?loc:Ast_402.??.loc ->
    ?attrs:Ast_402.??.attrs ->
    Ast_402.Parsetree.module_type ->
    Ast_402.Parsetree.with_constraint list -> Ast_402.Parsetree.module_type
  val typeof_ :
    ?loc:Ast_402.??.loc ->
    ?attrs:Ast_402.??.attrs ->
    Ast_402.Parsetree.module_expr -> Ast_402.Parsetree.module_type
  val extension :
    ?loc:Ast_402.??.loc ->
    ?attrs:Ast_402.??.attrs ->
    Ast_402.Parsetree.extension -> Ast_402.Parsetree.module_type
end