sig
  val mk :
    ?attrs:Ast_407.??.attrs ->
    ?docs:Ast_407.Docstrings.docs ->
    ?params:(Ast_407.Parsetree.core_type * Ast_407.Asttypes.variance) list ->
    ?priv:Ast_407.Asttypes.private_flag ->
    Ast_407.??.lid ->
    Ast_407.Parsetree.extension_constructor list ->
    Ast_407.Parsetree.type_extension
  val constructor :
    ?loc:Ast_407.??.loc ->
    ?attrs:Ast_407.??.attrs ->
    ?docs:Ast_407.Docstrings.docs ->
    ?info:Ast_407.Docstrings.info ->
    Ast_407.??.str ->
    Ast_407.Parsetree.extension_constructor_kind ->
    Ast_407.Parsetree.extension_constructor
  val decl :
    ?loc:Ast_407.??.loc ->
    ?attrs:Ast_407.??.attrs ->
    ?docs:Ast_407.Docstrings.docs ->
    ?info:Ast_407.Docstrings.info ->
    ?args:Ast_407.Parsetree.constructor_arguments ->
    ?res:Ast_407.Parsetree.core_type ->
    Ast_407.??.str -> Ast_407.Parsetree.extension_constructor
  val rebind :
    ?loc:Ast_407.??.loc ->
    ?attrs:Ast_407.??.attrs ->
    ?docs:Ast_407.Docstrings.docs ->
    ?info:Ast_407.Docstrings.info ->
    Ast_407.??.str ->
    Ast_407.??.lid -> Ast_407.Parsetree.extension_constructor
end