sig
  val mk :
    ?loc:Ast_402.??.loc ->
    ?attrs:Ast_402.??.attrs ->
    ?docs:Ast_402.Docstrings.docs ->
    ?text:Ast_402.Docstrings.text ->
    ?params:(Ast_402.Parsetree.core_type * Ast_402.Asttypes.variance) list ->
    ?cstrs:(Ast_402.Parsetree.core_type * Ast_402.Parsetree.core_type *
            Ast_402.??.loc)
           list ->
    ?kind:Ast_402.Parsetree.type_kind ->
    ?priv:Ast_402.Asttypes.private_flag ->
    ?manifest:Ast_402.Parsetree.core_type ->
    Ast_402.??.str -> Ast_402.Parsetree.type_declaration
  val constructor :
    ?loc:Ast_402.??.loc ->
    ?attrs:Ast_402.??.attrs ->
    ?info:Ast_402.Docstrings.info ->
    ?args:Ast_402.Parsetree.core_type list ->
    ?res:Ast_402.Parsetree.core_type ->
    Ast_402.??.str -> Ast_402.Parsetree.constructor_declaration
  val field :
    ?loc:Ast_402.??.loc ->
    ?attrs:Ast_402.??.attrs ->
    ?info:Ast_402.Docstrings.info ->
    ?mut:Ast_402.Asttypes.mutable_flag ->
    Ast_402.??.str ->
    Ast_402.Parsetree.core_type -> Ast_402.Parsetree.label_declaration
end