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