├── .github └── workflows │ ├── mixin-decorators.yml │ ├── tsm.build.stage-one.yml │ ├── tsm.build.stage-three.yml │ ├── tsm.build.stage-two.yml │ └── tsm.build.use-cases.yml ├── .gitignore ├── .npmrc ├── .vscode ├── launch.json └── settings.json ├── README.md ├── docs └── ts-morph-structures │ ├── api │ ├── index.md │ ├── ts-morph-structures.abstractablenodestructureclassifc.isabstract.md │ ├── ts-morph-structures.abstractablenodestructureclassifc.md │ ├── ts-morph-structures.accessormirrorgetter.filteraccessormirror.md │ ├── ts-morph-structures.accessormirrorgetter.getaccessormirror.md │ ├── ts-morph-structures.accessormirrorgetter.md │ ├── ts-morph-structures.addexportcontext.exportnames.md │ ├── ts-morph-structures.addexportcontext.isdefaultexport.md │ ├── ts-morph-structures.addexportcontext.istype.md │ ├── ts-morph-structures.addexportcontext.md │ ├── ts-morph-structures.addexportcontext.pathtoexportedmodule.md │ ├── ts-morph-structures.addimportcontext.importnames.md │ ├── ts-morph-structures.addimportcontext.isdefaultimport.md │ ├── ts-morph-structures.addimportcontext.ispackageimport.md │ ├── ts-morph-structures.addimportcontext.istypeonly.md │ ├── ts-morph-structures.addimportcontext.md │ ├── ts-morph-structures.addimportcontext.pathtoimportedmodule.md │ ├── ts-morph-structures.ambientablenodestructureclassifc.hasdeclarekeyword.md │ ├── ts-morph-structures.ambientablenodestructureclassifc.md │ ├── ts-morph-structures.arraytypestructureimpl._constructor_.md │ ├── ts-morph-structures.arraytypestructureimpl.clone.md │ ├── ts-morph-structures.arraytypestructureimpl.kind.md │ ├── ts-morph-structures.arraytypestructureimpl.md │ ├── ts-morph-structures.arraytypestructureimpl.objecttype.md │ ├── ts-morph-structures.arraytypestructureimpl.writerfunction.md │ ├── ts-morph-structures.asyncablenodestructureclassifc.isasync.md │ ├── ts-morph-structures.asyncablenodestructureclassifc.md │ ├── ts-morph-structures.callsignaturedeclarationimpl.clone.md │ ├── ts-morph-structures.callsignaturedeclarationimpl.docs.md │ ├── ts-morph-structures.callsignaturedeclarationimpl.kind.md │ ├── ts-morph-structures.callsignaturedeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.callsignaturedeclarationimpl.md │ ├── ts-morph-structures.callsignaturedeclarationimpl.parameters.md │ ├── ts-morph-structures.callsignaturedeclarationimpl.returntype.md │ ├── ts-morph-structures.callsignaturedeclarationimpl.returntypestructure.md │ ├── ts-morph-structures.callsignaturedeclarationimpl.tojson.md │ ├── ts-morph-structures.callsignaturedeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.callsignaturedeclarationimpl.typeparameters.md │ ├── ts-morph-structures.callsignaturedeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.callsignaturedeclarationstructureclassifc.md │ ├── ts-morph-structures.classabstractmemberquestion.isabstract.md │ ├── ts-morph-structures.classabstractmemberquestion.md │ ├── ts-morph-structures.classasyncmethodquestion.isasync.md │ ├── ts-morph-structures.classasyncmethodquestion.md │ ├── ts-morph-structures.classbodystatementsgetter.filterbodystatements.md │ ├── ts-morph-structures.classbodystatementsgetter.getbodystatements.md │ ├── ts-morph-structures.classbodystatementsgetter.md │ ├── ts-morph-structures.classdeclarationimpl.clone.md │ ├── ts-morph-structures.classdeclarationimpl.ctors.md │ ├── ts-morph-structures.classdeclarationimpl.decorators.md │ ├── ts-morph-structures.classdeclarationimpl.docs.md │ ├── ts-morph-structures.classdeclarationimpl.extends.md │ ├── ts-morph-structures.classdeclarationimpl.extendsstructure.md │ ├── ts-morph-structures.classdeclarationimpl.getaccessors.md │ ├── ts-morph-structures.classdeclarationimpl.hasdeclarekeyword.md │ ├── ts-morph-structures.classdeclarationimpl.implements.md │ ├── ts-morph-structures.classdeclarationimpl.implementsset.md │ ├── ts-morph-structures.classdeclarationimpl.isabstract.md │ ├── ts-morph-structures.classdeclarationimpl.isdefaultexport.md │ ├── ts-morph-structures.classdeclarationimpl.isexported.md │ ├── ts-morph-structures.classdeclarationimpl.kind.md │ ├── ts-morph-structures.classdeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.classdeclarationimpl.md │ ├── ts-morph-structures.classdeclarationimpl.methods.md │ ├── ts-morph-structures.classdeclarationimpl.name.md │ ├── ts-morph-structures.classdeclarationimpl.properties.md │ ├── ts-morph-structures.classdeclarationimpl.setaccessors.md │ ├── ts-morph-structures.classdeclarationimpl.staticblocks.md │ ├── ts-morph-structures.classdeclarationimpl.tojson.md │ ├── ts-morph-structures.classdeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.classdeclarationimpl.typeparameters.md │ ├── ts-morph-structures.classdeclarationstructureclassifc.ctors.md │ ├── ts-morph-structures.classdeclarationstructureclassifc.extends.md │ ├── ts-morph-structures.classdeclarationstructureclassifc.extendsstructure.md │ ├── ts-morph-structures.classdeclarationstructureclassifc.getaccessors.md │ ├── ts-morph-structures.classdeclarationstructureclassifc.implements.md │ ├── ts-morph-structures.classdeclarationstructureclassifc.implementsset.md │ ├── ts-morph-structures.classdeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.classdeclarationstructureclassifc.md │ ├── ts-morph-structures.classdeclarationstructureclassifc.methods.md │ ├── ts-morph-structures.classdeclarationstructureclassifc.properties.md │ ├── ts-morph-structures.classdeclarationstructureclassifc.setaccessors.md │ ├── ts-morph-structures.classdeclarationstructureclassifc.staticblocks.md │ ├── ts-morph-structures.classdeclarationwithimplementstypestructures.implements.md │ ├── ts-morph-structures.classdeclarationwithimplementstypestructures.implementsset.md │ ├── ts-morph-structures.classdeclarationwithimplementstypestructures.md │ ├── ts-morph-structures.classfieldstatement.md │ ├── ts-morph-structures.classfieldstatementsmap._constructor_.md │ ├── ts-morph-structures.classfieldstatementsmap._symbol.iterator_.md │ ├── ts-morph-structures.classfieldstatementsmap._symbol.tostringtag_.md │ ├── ts-morph-structures.classfieldstatementsmap.clear.md │ ├── ts-morph-structures.classfieldstatementsmap.delete.md │ ├── ts-morph-structures.classfieldstatementsmap.entries.md │ ├── ts-morph-structures.classfieldstatementsmap.field_head_super_call.md │ ├── ts-morph-structures.classfieldstatementsmap.field_tail_final_return.md │ ├── ts-morph-structures.classfieldstatementsmap.fieldcomparator.md │ ├── ts-morph-structures.classfieldstatementsmap.foreach.md │ ├── ts-morph-structures.classfieldstatementsmap.get.md │ ├── ts-morph-structures.classfieldstatementsmap.group_initializer_or_property.md │ ├── ts-morph-structures.classfieldstatementsmap.groupkeys.md │ ├── ts-morph-structures.classfieldstatementsmap.groupstatementsmap.md │ ├── ts-morph-structures.classfieldstatementsmap.has.md │ ├── ts-morph-structures.classfieldstatementsmap.isblockstatement.md │ ├── ts-morph-structures.classfieldstatementsmap.keys.md │ ├── ts-morph-structures.classfieldstatementsmap.md │ ├── ts-morph-structures.classfieldstatementsmap.normalizekeys.md │ ├── ts-morph-structures.classfieldstatementsmap.purposekey.md │ ├── ts-morph-structures.classfieldstatementsmap.regionname.md │ ├── ts-morph-structures.classfieldstatementsmap.set.md │ ├── ts-morph-structures.classfieldstatementsmap.size.md │ ├── ts-morph-structures.classfieldstatementsmap.values.md │ ├── ts-morph-structures.classgeneratormethodquestion.isgenerator.md │ ├── ts-morph-structures.classgeneratormethodquestion.md │ ├── ts-morph-structures.classheadstatementsgetter.filterheadstatements.md │ ├── ts-morph-structures.classheadstatementsgetter.getheadstatements.md │ ├── ts-morph-structures.classheadstatementsgetter.md │ ├── ts-morph-structures.classmemberimpl.md │ ├── ts-morph-structures.classmembersmap.addmembers.md │ ├── ts-morph-structures.classmembersmap.arrayofkind.md │ ├── ts-morph-structures.classmembersmap.clone.md │ ├── ts-morph-structures.classmembersmap.convertaccessorstoproperty.md │ ├── ts-morph-structures.classmembersmap.convertpropertytoaccessors.md │ ├── ts-morph-structures.classmembersmap.converttypemembers.md │ ├── ts-morph-structures.classmembersmap.fromclassdeclaration.md │ ├── ts-morph-structures.classmembersmap.getaskind.md │ ├── ts-morph-structures.classmembersmap.keyfrommember.md │ ├── ts-morph-structures.classmembersmap.keyfromname.md │ ├── ts-morph-structures.classmembersmap.md │ ├── ts-morph-structures.classmembersmap.movememberstoclass.md │ ├── ts-morph-structures.classmembersmap.movestatementstomembers.md │ ├── ts-morph-structures.classmembersmap.tojson.md │ ├── ts-morph-structures.classmemberstructureimpls.md │ ├── ts-morph-structures.classscopememberquestion.getscope.md │ ├── ts-morph-structures.classscopememberquestion.md │ ├── ts-morph-structures.classstatementsgetter.keyword.md │ ├── ts-morph-structures.classstatementsgetter.md │ ├── ts-morph-structures.classstatementsgetter.supportsstatementsflags.md │ ├── ts-morph-structures.classstaticblockdeclarationimpl.clone.md │ ├── ts-morph-structures.classstaticblockdeclarationimpl.docs.md │ ├── ts-morph-structures.classstaticblockdeclarationimpl.kind.md │ ├── ts-morph-structures.classstaticblockdeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.classstaticblockdeclarationimpl.md │ ├── ts-morph-structures.classstaticblockdeclarationimpl.statements.md │ ├── ts-morph-structures.classstaticblockdeclarationimpl.tojson.md │ ├── ts-morph-structures.classstaticblockdeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.classstaticblockdeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.classstaticblockdeclarationstructureclassifc.md │ ├── ts-morph-structures.classsupportsstatementsflags.md │ ├── ts-morph-structures.classtailstatementsgetter.filtertailstatements.md │ ├── ts-morph-structures.classtailstatementsgetter.gettailstatements.md │ ├── ts-morph-structures.classtailstatementsgetter.md │ ├── ts-morph-structures.conditionaltypestructureimpl._constructor_.md │ ├── ts-morph-structures.conditionaltypestructureimpl.checktype.md │ ├── ts-morph-structures.conditionaltypestructureimpl.clone.md │ ├── ts-morph-structures.conditionaltypestructureimpl.extendstype.md │ ├── ts-morph-structures.conditionaltypestructureimpl.falsetype.md │ ├── ts-morph-structures.conditionaltypestructureimpl.kind.md │ ├── ts-morph-structures.conditionaltypestructureimpl.md │ ├── ts-morph-structures.conditionaltypestructureimpl.truetype.md │ ├── ts-morph-structures.conditionaltypestructureimpl.writerfunction.md │ ├── ts-morph-structures.conditionaltypestructureparts.checktype.md │ ├── ts-morph-structures.conditionaltypestructureparts.extendstype.md │ ├── ts-morph-structures.conditionaltypestructureparts.falsetype.md │ ├── ts-morph-structures.conditionaltypestructureparts.md │ ├── ts-morph-structures.conditionaltypestructureparts.truetype.md │ ├── ts-morph-structures.constructorbodystatementsgetter.filterctorbodystatements.md │ ├── ts-morph-structures.constructorbodystatementsgetter.getctorbodystatements.md │ ├── ts-morph-structures.constructorbodystatementsgetter.md │ ├── ts-morph-structures.constructordeclarationimpl.clone.md │ ├── ts-morph-structures.constructordeclarationimpl.docs.md │ ├── ts-morph-structures.constructordeclarationimpl.fromsignature.md │ ├── ts-morph-structures.constructordeclarationimpl.kind.md │ ├── ts-morph-structures.constructordeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.constructordeclarationimpl.md │ ├── ts-morph-structures.constructordeclarationimpl.overloads.md │ ├── ts-morph-structures.constructordeclarationimpl.parameters.md │ ├── ts-morph-structures.constructordeclarationimpl.returntype.md │ ├── ts-morph-structures.constructordeclarationimpl.returntypestructure.md │ ├── ts-morph-structures.constructordeclarationimpl.scope.md │ ├── ts-morph-structures.constructordeclarationimpl.statements.md │ ├── ts-morph-structures.constructordeclarationimpl.tojson.md │ ├── ts-morph-structures.constructordeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.constructordeclarationimpl.typeparameters.md │ ├── ts-morph-structures.constructordeclarationoverloadimpl.clone.md │ ├── ts-morph-structures.constructordeclarationoverloadimpl.docs.md │ ├── ts-morph-structures.constructordeclarationoverloadimpl.kind.md │ ├── ts-morph-structures.constructordeclarationoverloadimpl.leadingtrivia.md │ ├── ts-morph-structures.constructordeclarationoverloadimpl.md │ ├── ts-morph-structures.constructordeclarationoverloadimpl.parameters.md │ ├── ts-morph-structures.constructordeclarationoverloadimpl.returntype.md │ ├── ts-morph-structures.constructordeclarationoverloadimpl.returntypestructure.md │ ├── ts-morph-structures.constructordeclarationoverloadimpl.scope.md │ ├── ts-morph-structures.constructordeclarationoverloadimpl.tojson.md │ ├── ts-morph-structures.constructordeclarationoverloadimpl.trailingtrivia.md │ ├── ts-morph-structures.constructordeclarationoverloadimpl.typeparameters.md │ ├── ts-morph-structures.constructordeclarationoverloadstructureclassifc.kind.md │ ├── ts-morph-structures.constructordeclarationoverloadstructureclassifc.md │ ├── ts-morph-structures.constructordeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.constructordeclarationstructureclassifc.md │ ├── ts-morph-structures.constructordeclarationstructureclassifc.overloads.md │ ├── ts-morph-structures.constructorheadstatementsgetter.filterctorheadstatements.md │ ├── ts-morph-structures.constructorheadstatementsgetter.getctorheadstatements.md │ ├── ts-morph-structures.constructorheadstatementsgetter.md │ ├── ts-morph-structures.constructortailstatementsgetter.filterctortailstatements.md │ ├── ts-morph-structures.constructortailstatementsgetter.getctortailstatements.md │ ├── ts-morph-structures.constructortailstatementsgetter.md │ ├── ts-morph-structures.constructsignaturedeclarationimpl.clone.md │ ├── ts-morph-structures.constructsignaturedeclarationimpl.docs.md │ ├── ts-morph-structures.constructsignaturedeclarationimpl.kind.md │ ├── ts-morph-structures.constructsignaturedeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.constructsignaturedeclarationimpl.md │ ├── ts-morph-structures.constructsignaturedeclarationimpl.parameters.md │ ├── ts-morph-structures.constructsignaturedeclarationimpl.returntype.md │ ├── ts-morph-structures.constructsignaturedeclarationimpl.returntypestructure.md │ ├── ts-morph-structures.constructsignaturedeclarationimpl.tojson.md │ ├── ts-morph-structures.constructsignaturedeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.constructsignaturedeclarationimpl.typeparameters.md │ ├── ts-morph-structures.constructsignaturedeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.constructsignaturedeclarationstructureclassifc.md │ ├── ts-morph-structures.decoratablenodestructureclassifc.decorators.md │ ├── ts-morph-structures.decoratablenodestructureclassifc.md │ ├── ts-morph-structures.decoratorimpl._constructor_.md │ ├── ts-morph-structures.decoratorimpl.arguments.md │ ├── ts-morph-structures.decoratorimpl.clone.md │ ├── ts-morph-structures.decoratorimpl.kind.md │ ├── ts-morph-structures.decoratorimpl.leadingtrivia.md │ ├── ts-morph-structures.decoratorimpl.md │ ├── ts-morph-structures.decoratorimpl.name.md │ ├── ts-morph-structures.decoratorimpl.tojson.md │ ├── ts-morph-structures.decoratorimpl.trailingtrivia.md │ ├── ts-morph-structures.decoratorimpl.typearguments.md │ ├── ts-morph-structures.decoratorstructureclassifc.arguments.md │ ├── ts-morph-structures.decoratorstructureclassifc.kind.md │ ├── ts-morph-structures.decoratorstructureclassifc.md │ ├── ts-morph-structures.decoratorstructureclassifc.typearguments.md │ ├── ts-morph-structures.enumdeclarationimpl._constructor_.md │ ├── ts-morph-structures.enumdeclarationimpl.clone.md │ ├── ts-morph-structures.enumdeclarationimpl.docs.md │ ├── ts-morph-structures.enumdeclarationimpl.hasdeclarekeyword.md │ ├── ts-morph-structures.enumdeclarationimpl.isconst.md │ ├── ts-morph-structures.enumdeclarationimpl.isdefaultexport.md │ ├── ts-morph-structures.enumdeclarationimpl.isexported.md │ ├── ts-morph-structures.enumdeclarationimpl.kind.md │ ├── ts-morph-structures.enumdeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.enumdeclarationimpl.md │ ├── ts-morph-structures.enumdeclarationimpl.members.md │ ├── ts-morph-structures.enumdeclarationimpl.name.md │ ├── ts-morph-structures.enumdeclarationimpl.tojson.md │ ├── ts-morph-structures.enumdeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.enumdeclarationstructureclassifc.isconst.md │ ├── ts-morph-structures.enumdeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.enumdeclarationstructureclassifc.md │ ├── ts-morph-structures.enumdeclarationstructureclassifc.members.md │ ├── ts-morph-structures.enummemberimpl._constructor_.md │ ├── ts-morph-structures.enummemberimpl.clone.md │ ├── ts-morph-structures.enummemberimpl.docs.md │ ├── ts-morph-structures.enummemberimpl.initializer.md │ ├── ts-morph-structures.enummemberimpl.kind.md │ ├── ts-morph-structures.enummemberimpl.leadingtrivia.md │ ├── ts-morph-structures.enummemberimpl.md │ ├── ts-morph-structures.enummemberimpl.name.md │ ├── ts-morph-structures.enummemberimpl.tojson.md │ ├── ts-morph-structures.enummemberimpl.trailingtrivia.md │ ├── ts-morph-structures.enummemberimpl.value.md │ ├── ts-morph-structures.enummemberstructureclassifc.kind.md │ ├── ts-morph-structures.enummemberstructureclassifc.md │ ├── ts-morph-structures.enummemberstructureclassifc.value.md │ ├── ts-morph-structures.exclamationtokenablenodestructureclassifc.hasexclamationtoken.md │ ├── ts-morph-structures.exclamationtokenablenodestructureclassifc.md │ ├── ts-morph-structures.exportablenodestructureclassifc.isdefaultexport.md │ ├── ts-morph-structures.exportablenodestructureclassifc.isexported.md │ ├── ts-morph-structures.exportablenodestructureclassifc.md │ ├── ts-morph-structures.exportassignmentimpl._constructor_.md │ ├── ts-morph-structures.exportassignmentimpl.clone.md │ ├── ts-morph-structures.exportassignmentimpl.docs.md │ ├── ts-morph-structures.exportassignmentimpl.expression.md │ ├── ts-morph-structures.exportassignmentimpl.isexportequals.md │ ├── ts-morph-structures.exportassignmentimpl.kind.md │ ├── ts-morph-structures.exportassignmentimpl.leadingtrivia.md │ ├── ts-morph-structures.exportassignmentimpl.md │ ├── ts-morph-structures.exportassignmentimpl.tojson.md │ ├── ts-morph-structures.exportassignmentimpl.trailingtrivia.md │ ├── ts-morph-structures.exportassignmentstructureclassifc.expression.md │ ├── ts-morph-structures.exportassignmentstructureclassifc.isexportequals.md │ ├── ts-morph-structures.exportassignmentstructureclassifc.kind.md │ ├── ts-morph-structures.exportassignmentstructureclassifc.md │ ├── ts-morph-structures.exportdeclarationimpl.attributes.md │ ├── ts-morph-structures.exportdeclarationimpl.clone.md │ ├── ts-morph-structures.exportdeclarationimpl.istypeonly.md │ ├── ts-morph-structures.exportdeclarationimpl.kind.md │ ├── ts-morph-structures.exportdeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.exportdeclarationimpl.md │ ├── ts-morph-structures.exportdeclarationimpl.modulespecifier.md │ ├── ts-morph-structures.exportdeclarationimpl.namedexports.md │ ├── ts-morph-structures.exportdeclarationimpl.namespaceexport.md │ ├── ts-morph-structures.exportdeclarationimpl.tojson.md │ ├── ts-morph-structures.exportdeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.exportdeclarationstructureclassifc.attributes.md │ ├── ts-morph-structures.exportdeclarationstructureclassifc.istypeonly.md │ ├── ts-morph-structures.exportdeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.exportdeclarationstructureclassifc.md │ ├── ts-morph-structures.exportdeclarationstructureclassifc.modulespecifier.md │ ├── ts-morph-structures.exportdeclarationstructureclassifc.namedexports.md │ ├── ts-morph-structures.exportdeclarationstructureclassifc.namespaceexport.md │ ├── ts-morph-structures.exportmanager._constructor_.md │ ├── ts-morph-structures.exportmanager.absolutepathtoexportfile.md │ ├── ts-morph-structures.exportmanager.addexports.md │ ├── ts-morph-structures.exportmanager.getdeclarations.md │ ├── ts-morph-structures.exportmanager.md │ ├── ts-morph-structures.exportspecifierimpl._constructor_.md │ ├── ts-morph-structures.exportspecifierimpl.alias.md │ ├── ts-morph-structures.exportspecifierimpl.clone.md │ ├── ts-morph-structures.exportspecifierimpl.istypeonly.md │ ├── ts-morph-structures.exportspecifierimpl.kind.md │ ├── ts-morph-structures.exportspecifierimpl.leadingtrivia.md │ ├── ts-morph-structures.exportspecifierimpl.md │ ├── ts-morph-structures.exportspecifierimpl.name.md │ ├── ts-morph-structures.exportspecifierimpl.tojson.md │ ├── ts-morph-structures.exportspecifierimpl.trailingtrivia.md │ ├── ts-morph-structures.exportspecifierstructureclassifc.alias.md │ ├── ts-morph-structures.exportspecifierstructureclassifc.istypeonly.md │ ├── ts-morph-structures.exportspecifierstructureclassifc.kind.md │ ├── ts-morph-structures.exportspecifierstructureclassifc.md │ ├── ts-morph-structures.foreachaugmentedstructurechild.md │ ├── ts-morph-structures.functiondeclarationimpl.clone.md │ ├── ts-morph-structures.functiondeclarationimpl.docs.md │ ├── ts-morph-structures.functiondeclarationimpl.hasdeclarekeyword.md │ ├── ts-morph-structures.functiondeclarationimpl.isasync.md │ ├── ts-morph-structures.functiondeclarationimpl.isdefaultexport.md │ ├── ts-morph-structures.functiondeclarationimpl.isexported.md │ ├── ts-morph-structures.functiondeclarationimpl.isgenerator.md │ ├── ts-morph-structures.functiondeclarationimpl.kind.md │ ├── ts-morph-structures.functiondeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.functiondeclarationimpl.md │ ├── ts-morph-structures.functiondeclarationimpl.name.md │ ├── ts-morph-structures.functiondeclarationimpl.overloads.md │ ├── ts-morph-structures.functiondeclarationimpl.parameters.md │ ├── ts-morph-structures.functiondeclarationimpl.returntype.md │ ├── ts-morph-structures.functiondeclarationimpl.returntypestructure.md │ ├── ts-morph-structures.functiondeclarationimpl.statements.md │ ├── ts-morph-structures.functiondeclarationimpl.tojson.md │ ├── ts-morph-structures.functiondeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.functiondeclarationimpl.typeparameters.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.clone.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.docs.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.hasdeclarekeyword.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.isasync.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.isdefaultexport.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.isexported.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.isgenerator.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.kind.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.leadingtrivia.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.parameters.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.returntype.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.returntypestructure.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.tojson.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.trailingtrivia.md │ ├── ts-morph-structures.functiondeclarationoverloadimpl.typeparameters.md │ ├── ts-morph-structures.functiondeclarationoverloadstructureclassifc.kind.md │ ├── ts-morph-structures.functiondeclarationoverloadstructureclassifc.md │ ├── ts-morph-structures.functiondeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.functiondeclarationstructureclassifc.md │ ├── ts-morph-structures.functiondeclarationstructureclassifc.overloads.md │ ├── ts-morph-structures.functiontypecontext.isconstructor.md │ ├── ts-morph-structures.functiontypecontext.md │ ├── ts-morph-structures.functiontypecontext.name.md │ ├── ts-morph-structures.functiontypecontext.parameters.md │ ├── ts-morph-structures.functiontypecontext.restparameter.md │ ├── ts-morph-structures.functiontypecontext.returntype.md │ ├── ts-morph-structures.functiontypecontext.typeparameters.md │ ├── ts-morph-structures.functiontypecontext.writerstyle.md │ ├── ts-morph-structures.functiontypestructureimpl._constructor_.md │ ├── ts-morph-structures.functiontypestructureimpl.clone.md │ ├── ts-morph-structures.functiontypestructureimpl.isconstructor.md │ ├── ts-morph-structures.functiontypestructureimpl.kind.md │ ├── ts-morph-structures.functiontypestructureimpl.md │ ├── ts-morph-structures.functiontypestructureimpl.name.md │ ├── ts-morph-structures.functiontypestructureimpl.parameters.md │ ├── ts-morph-structures.functiontypestructureimpl.restparameter.md │ ├── ts-morph-structures.functiontypestructureimpl.returntype.md │ ├── ts-morph-structures.functiontypestructureimpl.typeparameters.md │ ├── ts-morph-structures.functiontypestructureimpl.writerfunction.md │ ├── ts-morph-structures.functiontypestructureimpl.writerstyle.md │ ├── ts-morph-structures.functionwriterstyle.md │ ├── ts-morph-structures.generatorablenodestructureclassifc.isgenerator.md │ ├── ts-morph-structures.generatorablenodestructureclassifc.md │ ├── ts-morph-structures.getaccessordeclarationimpl._constructor_.md │ ├── ts-morph-structures.getaccessordeclarationimpl.clone.md │ ├── ts-morph-structures.getaccessordeclarationimpl.decorators.md │ ├── ts-morph-structures.getaccessordeclarationimpl.docs.md │ ├── ts-morph-structures.getaccessordeclarationimpl.isabstract.md │ ├── ts-morph-structures.getaccessordeclarationimpl.isstatic.md │ ├── ts-morph-structures.getaccessordeclarationimpl.kind.md │ ├── ts-morph-structures.getaccessordeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.getaccessordeclarationimpl.md │ ├── ts-morph-structures.getaccessordeclarationimpl.name.md │ ├── ts-morph-structures.getaccessordeclarationimpl.parameters.md │ ├── ts-morph-structures.getaccessordeclarationimpl.returntype.md │ ├── ts-morph-structures.getaccessordeclarationimpl.returntypestructure.md │ ├── ts-morph-structures.getaccessordeclarationimpl.scope.md │ ├── ts-morph-structures.getaccessordeclarationimpl.statements.md │ ├── ts-morph-structures.getaccessordeclarationimpl.tojson.md │ ├── ts-morph-structures.getaccessordeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.getaccessordeclarationimpl.typeparameters.md │ ├── ts-morph-structures.getaccessordeclarationstructureclassifc.isstatic.md │ ├── ts-morph-structures.getaccessordeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.getaccessordeclarationstructureclassifc.md │ ├── ts-morph-structures.gettypeaugmentedstructure.md │ ├── ts-morph-structures.gettypeaugmentedstructure_1.md │ ├── ts-morph-structures.importattributeimpl._constructor_.md │ ├── ts-morph-structures.importattributeimpl.clone.md │ ├── ts-morph-structures.importattributeimpl.kind.md │ ├── ts-morph-structures.importattributeimpl.leadingtrivia.md │ ├── ts-morph-structures.importattributeimpl.md │ ├── ts-morph-structures.importattributeimpl.name.md │ ├── ts-morph-structures.importattributeimpl.tojson.md │ ├── ts-morph-structures.importattributeimpl.trailingtrivia.md │ ├── ts-morph-structures.importattributeimpl.value.md │ ├── ts-morph-structures.importattributestructureclassifc.kind.md │ ├── ts-morph-structures.importattributestructureclassifc.md │ ├── ts-morph-structures.importattributestructureclassifc.value.md │ ├── ts-morph-structures.importdeclarationimpl._constructor_.md │ ├── ts-morph-structures.importdeclarationimpl.attributes.md │ ├── ts-morph-structures.importdeclarationimpl.clone.md │ ├── ts-morph-structures.importdeclarationimpl.defaultimport.md │ ├── ts-morph-structures.importdeclarationimpl.istypeonly.md │ ├── ts-morph-structures.importdeclarationimpl.kind.md │ ├── ts-morph-structures.importdeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.importdeclarationimpl.md │ ├── ts-morph-structures.importdeclarationimpl.modulespecifier.md │ ├── ts-morph-structures.importdeclarationimpl.namedimports.md │ ├── ts-morph-structures.importdeclarationimpl.namespaceimport.md │ ├── ts-morph-structures.importdeclarationimpl.tojson.md │ ├── ts-morph-structures.importdeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.importdeclarationstructureclassifc.attributes.md │ ├── ts-morph-structures.importdeclarationstructureclassifc.defaultimport.md │ ├── ts-morph-structures.importdeclarationstructureclassifc.istypeonly.md │ ├── ts-morph-structures.importdeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.importdeclarationstructureclassifc.md │ ├── ts-morph-structures.importdeclarationstructureclassifc.modulespecifier.md │ ├── ts-morph-structures.importdeclarationstructureclassifc.namedimports.md │ ├── ts-morph-structures.importdeclarationstructureclassifc.namespaceimport.md │ ├── ts-morph-structures.importmanager._constructor_.md │ ├── ts-morph-structures.importmanager.absolutepathtomodule.md │ ├── ts-morph-structures.importmanager.addimports.md │ ├── ts-morph-structures.importmanager.getdeclarations.md │ ├── ts-morph-structures.importmanager.md │ ├── ts-morph-structures.importspecifierimpl._constructor_.md │ ├── ts-morph-structures.importspecifierimpl.alias.md │ ├── ts-morph-structures.importspecifierimpl.clone.md │ ├── ts-morph-structures.importspecifierimpl.istypeonly.md │ ├── ts-morph-structures.importspecifierimpl.kind.md │ ├── ts-morph-structures.importspecifierimpl.leadingtrivia.md │ ├── ts-morph-structures.importspecifierimpl.md │ ├── ts-morph-structures.importspecifierimpl.name.md │ ├── ts-morph-structures.importspecifierimpl.tojson.md │ ├── ts-morph-structures.importspecifierimpl.trailingtrivia.md │ ├── ts-morph-structures.importspecifierstructureclassifc.alias.md │ ├── ts-morph-structures.importspecifierstructureclassifc.istypeonly.md │ ├── ts-morph-structures.importspecifierstructureclassifc.kind.md │ ├── ts-morph-structures.importspecifierstructureclassifc.md │ ├── ts-morph-structures.importtypestructureimpl._constructor_.md │ ├── ts-morph-structures.importtypestructureimpl.argument.md │ ├── ts-morph-structures.importtypestructureimpl.childtypes.md │ ├── ts-morph-structures.importtypestructureimpl.clone.md │ ├── ts-morph-structures.importtypestructureimpl.kind.md │ ├── ts-morph-structures.importtypestructureimpl.md │ ├── ts-morph-structures.importtypestructureimpl.qualifier.md │ ├── ts-morph-structures.importtypestructureimpl.writerfunction.md │ ├── ts-morph-structures.indexedaccesstypestructureimpl._constructor_.md │ ├── ts-morph-structures.indexedaccesstypestructureimpl.childtypes.md │ ├── ts-morph-structures.indexedaccesstypestructureimpl.clone.md │ ├── ts-morph-structures.indexedaccesstypestructureimpl.endtoken.md │ ├── ts-morph-structures.indexedaccesstypestructureimpl.joinchildrentoken.md │ ├── ts-morph-structures.indexedaccesstypestructureimpl.kind.md │ ├── ts-morph-structures.indexedaccesstypestructureimpl.maxchildcount.md │ ├── ts-morph-structures.indexedaccesstypestructureimpl.md │ ├── ts-morph-structures.indexedaccesstypestructureimpl.objecttype.md │ ├── ts-morph-structures.indexedaccesstypestructureimpl.starttoken.md │ ├── ts-morph-structures.indexsignaturedeclarationimpl.clone.md │ ├── ts-morph-structures.indexsignaturedeclarationimpl.docs.md │ ├── ts-morph-structures.indexsignaturedeclarationimpl.isreadonly.md │ ├── ts-morph-structures.indexsignaturedeclarationimpl.keyname.md │ ├── ts-morph-structures.indexsignaturedeclarationimpl.keytype.md │ ├── ts-morph-structures.indexsignaturedeclarationimpl.keytypestructure.md │ ├── ts-morph-structures.indexsignaturedeclarationimpl.kind.md │ ├── ts-morph-structures.indexsignaturedeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.indexsignaturedeclarationimpl.md │ ├── ts-morph-structures.indexsignaturedeclarationimpl.returntype.md │ ├── ts-morph-structures.indexsignaturedeclarationimpl.returntypestructure.md │ ├── ts-morph-structures.indexsignaturedeclarationimpl.tojson.md │ ├── ts-morph-structures.indexsignaturedeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.indexsignaturedeclarationstructureclassifc.keyname.md │ ├── ts-morph-structures.indexsignaturedeclarationstructureclassifc.keytype.md │ ├── ts-morph-structures.indexsignaturedeclarationstructureclassifc.keytypestructure.md │ ├── ts-morph-structures.indexsignaturedeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.indexsignaturedeclarationstructureclassifc.md │ ├── ts-morph-structures.indexsignatureresolver.md │ ├── ts-morph-structures.indexsignatureresolver.resolveindexsignature.md │ ├── ts-morph-structures.infertypestructureimpl._constructor_.md │ ├── ts-morph-structures.infertypestructureimpl.clone.md │ ├── ts-morph-structures.infertypestructureimpl.kind.md │ ├── ts-morph-structures.infertypestructureimpl.md │ ├── ts-morph-structures.infertypestructureimpl.typeparameter.md │ ├── ts-morph-structures.infertypestructureimpl.writerfunction.md │ ├── ts-morph-structures.initializerexpressionablenodestructureclassifc.initializer.md │ ├── ts-morph-structures.initializerexpressionablenodestructureclassifc.md │ ├── ts-morph-structures.interfacedeclarationimpl._constructor_.md │ ├── ts-morph-structures.interfacedeclarationimpl.callsignatures.md │ ├── ts-morph-structures.interfacedeclarationimpl.clone.md │ ├── ts-morph-structures.interfacedeclarationimpl.constructsignatures.md │ ├── ts-morph-structures.interfacedeclarationimpl.docs.md │ ├── ts-morph-structures.interfacedeclarationimpl.extends.md │ ├── ts-morph-structures.interfacedeclarationimpl.extendsset.md │ ├── ts-morph-structures.interfacedeclarationimpl.getaccessors.md │ ├── ts-morph-structures.interfacedeclarationimpl.hasdeclarekeyword.md │ ├── ts-morph-structures.interfacedeclarationimpl.indexsignatures.md │ ├── ts-morph-structures.interfacedeclarationimpl.isdefaultexport.md │ ├── ts-morph-structures.interfacedeclarationimpl.isexported.md │ ├── ts-morph-structures.interfacedeclarationimpl.kind.md │ ├── ts-morph-structures.interfacedeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.interfacedeclarationimpl.md │ ├── ts-morph-structures.interfacedeclarationimpl.methods.md │ ├── ts-morph-structures.interfacedeclarationimpl.name.md │ ├── ts-morph-structures.interfacedeclarationimpl.properties.md │ ├── ts-morph-structures.interfacedeclarationimpl.setaccessors.md │ ├── ts-morph-structures.interfacedeclarationimpl.tojson.md │ ├── ts-morph-structures.interfacedeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.interfacedeclarationimpl.typeparameters.md │ ├── ts-morph-structures.interfacedeclarationstructureclassifc.callsignatures.md │ ├── ts-morph-structures.interfacedeclarationstructureclassifc.constructsignatures.md │ ├── ts-morph-structures.interfacedeclarationstructureclassifc.extends.md │ ├── ts-morph-structures.interfacedeclarationstructureclassifc.extendsset.md │ ├── ts-morph-structures.interfacedeclarationstructureclassifc.getaccessors.md │ ├── ts-morph-structures.interfacedeclarationstructureclassifc.indexsignatures.md │ ├── ts-morph-structures.interfacedeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.interfacedeclarationstructureclassifc.md │ ├── ts-morph-structures.interfacedeclarationstructureclassifc.methods.md │ ├── ts-morph-structures.interfacedeclarationstructureclassifc.properties.md │ ├── ts-morph-structures.interfacedeclarationstructureclassifc.setaccessors.md │ ├── ts-morph-structures.interfacedeclarationwithextendstypestructures.extends.md │ ├── ts-morph-structures.interfacedeclarationwithextendstypestructures.extendsset.md │ ├── ts-morph-structures.interfacedeclarationwithextendstypestructures.md │ ├── ts-morph-structures.interfacememberstructureimpls.md │ ├── ts-morph-structures.intersectiontypestructureimpl._constructor_.md │ ├── ts-morph-structures.intersectiontypestructureimpl.childtypes.md │ ├── ts-morph-structures.intersectiontypestructureimpl.clone.md │ ├── ts-morph-structures.intersectiontypestructureimpl.endtoken.md │ ├── ts-morph-structures.intersectiontypestructureimpl.joinchildrentoken.md │ ├── ts-morph-structures.intersectiontypestructureimpl.kind.md │ ├── ts-morph-structures.intersectiontypestructureimpl.maxchildcount.md │ ├── ts-morph-structures.intersectiontypestructureimpl.md │ ├── ts-morph-structures.intersectiontypestructureimpl.objecttype.md │ ├── ts-morph-structures.intersectiontypestructureimpl.starttoken.md │ ├── ts-morph-structures.jsdocablenodestructureclassifc.docs.md │ ├── ts-morph-structures.jsdocablenodestructureclassifc.md │ ├── ts-morph-structures.jsdocimpl.clone.md │ ├── ts-morph-structures.jsdocimpl.description.md │ ├── ts-morph-structures.jsdocimpl.kind.md │ ├── ts-morph-structures.jsdocimpl.leadingtrivia.md │ ├── ts-morph-structures.jsdocimpl.md │ ├── ts-morph-structures.jsdocimpl.tags.md │ ├── ts-morph-structures.jsdocimpl.tojson.md │ ├── ts-morph-structures.jsdocimpl.trailingtrivia.md │ ├── ts-morph-structures.jsdocstructureclassifc.description.md │ ├── ts-morph-structures.jsdocstructureclassifc.kind.md │ ├── ts-morph-structures.jsdocstructureclassifc.md │ ├── ts-morph-structures.jsdocstructureclassifc.tags.md │ ├── ts-morph-structures.jsdoctagimpl._constructor_.md │ ├── ts-morph-structures.jsdoctagimpl.clone.md │ ├── ts-morph-structures.jsdoctagimpl.kind.md │ ├── ts-morph-structures.jsdoctagimpl.leadingtrivia.md │ ├── ts-morph-structures.jsdoctagimpl.md │ ├── ts-morph-structures.jsdoctagimpl.tagname.md │ ├── ts-morph-structures.jsdoctagimpl.text.md │ ├── ts-morph-structures.jsdoctagimpl.tojson.md │ ├── ts-morph-structures.jsdoctagimpl.trailingtrivia.md │ ├── ts-morph-structures.jsdoctagstructureclassifc.kind.md │ ├── ts-morph-structures.jsdoctagstructureclassifc.md │ ├── ts-morph-structures.jsdoctagstructureclassifc.tagname.md │ ├── ts-morph-structures.jsdoctagstructureclassifc.text.md │ ├── ts-morph-structures.jsxattributeimpl._constructor_.md │ ├── ts-morph-structures.jsxattributeimpl.clone.md │ ├── ts-morph-structures.jsxattributeimpl.initializer.md │ ├── ts-morph-structures.jsxattributeimpl.kind.md │ ├── ts-morph-structures.jsxattributeimpl.leadingtrivia.md │ ├── ts-morph-structures.jsxattributeimpl.md │ ├── ts-morph-structures.jsxattributeimpl.name.md │ ├── ts-morph-structures.jsxattributeimpl.tojson.md │ ├── ts-morph-structures.jsxattributeimpl.trailingtrivia.md │ ├── ts-morph-structures.jsxattributestructureclassifc.initializer.md │ ├── ts-morph-structures.jsxattributestructureclassifc.kind.md │ ├── ts-morph-structures.jsxattributestructureclassifc.md │ ├── ts-morph-structures.jsxattributestructureclassifc.name.md │ ├── ts-morph-structures.jsxelementimpl._constructor_.md │ ├── ts-morph-structures.jsxelementimpl.attributes.md │ ├── ts-morph-structures.jsxelementimpl.bodytext.md │ ├── ts-morph-structures.jsxelementimpl.children.md │ ├── ts-morph-structures.jsxelementimpl.clone.md │ ├── ts-morph-structures.jsxelementimpl.kind.md │ ├── ts-morph-structures.jsxelementimpl.leadingtrivia.md │ ├── ts-morph-structures.jsxelementimpl.md │ ├── ts-morph-structures.jsxelementimpl.name.md │ ├── ts-morph-structures.jsxelementimpl.tojson.md │ ├── ts-morph-structures.jsxelementimpl.trailingtrivia.md │ ├── ts-morph-structures.jsxelementstructureclassifc.attributes.md │ ├── ts-morph-structures.jsxelementstructureclassifc.bodytext.md │ ├── ts-morph-structures.jsxelementstructureclassifc.children.md │ ├── ts-morph-structures.jsxelementstructureclassifc.kind.md │ ├── ts-morph-structures.jsxelementstructureclassifc.md │ ├── ts-morph-structures.jsxselfclosingelementimpl._constructor_.md │ ├── ts-morph-structures.jsxselfclosingelementimpl.attributes.md │ ├── ts-morph-structures.jsxselfclosingelementimpl.clone.md │ ├── ts-morph-structures.jsxselfclosingelementimpl.kind.md │ ├── ts-morph-structures.jsxselfclosingelementimpl.leadingtrivia.md │ ├── ts-morph-structures.jsxselfclosingelementimpl.md │ ├── ts-morph-structures.jsxselfclosingelementimpl.name.md │ ├── ts-morph-structures.jsxselfclosingelementimpl.tojson.md │ ├── ts-morph-structures.jsxselfclosingelementimpl.trailingtrivia.md │ ├── ts-morph-structures.jsxselfclosingelementstructureclassifc.attributes.md │ ├── ts-morph-structures.jsxselfclosingelementstructureclassifc.kind.md │ ├── ts-morph-structures.jsxselfclosingelementstructureclassifc.md │ ├── ts-morph-structures.jsxspreadattributeimpl._constructor_.md │ ├── ts-morph-structures.jsxspreadattributeimpl.clone.md │ ├── ts-morph-structures.jsxspreadattributeimpl.expression.md │ ├── ts-morph-structures.jsxspreadattributeimpl.kind.md │ ├── ts-morph-structures.jsxspreadattributeimpl.leadingtrivia.md │ ├── ts-morph-structures.jsxspreadattributeimpl.md │ ├── ts-morph-structures.jsxspreadattributeimpl.tojson.md │ ├── ts-morph-structures.jsxspreadattributeimpl.trailingtrivia.md │ ├── ts-morph-structures.jsxspreadattributestructureclassifc.expression.md │ ├── ts-morph-structures.jsxspreadattributestructureclassifc.kind.md │ ├── ts-morph-structures.jsxspreadattributestructureclassifc.md │ ├── ts-morph-structures.jsxstructureimpls.md │ ├── ts-morph-structures.kindedtypestructure.kind.md │ ├── ts-morph-structures.kindedtypestructure.md │ ├── ts-morph-structures.literaltypestructureimpl._constructor_.md │ ├── ts-morph-structures.literaltypestructureimpl.clone.md │ ├── ts-morph-structures.literaltypestructureimpl.get.md │ ├── ts-morph-structures.literaltypestructureimpl.kind.md │ ├── ts-morph-structures.literaltypestructureimpl.md │ ├── ts-morph-structures.literaltypestructureimpl.stringvalue.md │ ├── ts-morph-structures.literaltypestructureimpl.writerfunction.md │ ├── ts-morph-structures.mappedtypestructureimpl._constructor_.md │ ├── ts-morph-structures.mappedtypestructureimpl.asname.md │ ├── ts-morph-structures.mappedtypestructureimpl.clone.md │ ├── ts-morph-structures.mappedtypestructureimpl.kind.md │ ├── ts-morph-structures.mappedtypestructureimpl.md │ ├── ts-morph-structures.mappedtypestructureimpl.parameter.md │ ├── ts-morph-structures.mappedtypestructureimpl.questiontoken.md │ ├── ts-morph-structures.mappedtypestructureimpl.readonlytoken.md │ ├── ts-morph-structures.mappedtypestructureimpl.type.md │ ├── ts-morph-structures.mappedtypestructureimpl.writerfunction.md │ ├── ts-morph-structures.md │ ├── ts-morph-structures.memberedobjecttypestructureimpl._constructor_.md │ ├── ts-morph-structures.memberedobjecttypestructureimpl.callsignatures.md │ ├── ts-morph-structures.memberedobjecttypestructureimpl.clone.md │ ├── ts-morph-structures.memberedobjecttypestructureimpl.constructsignatures.md │ ├── ts-morph-structures.memberedobjecttypestructureimpl.getaccessors.md │ ├── ts-morph-structures.memberedobjecttypestructureimpl.indexsignatures.md │ ├── ts-morph-structures.memberedobjecttypestructureimpl.kind.md │ ├── ts-morph-structures.memberedobjecttypestructureimpl.md │ ├── ts-morph-structures.memberedobjecttypestructureimpl.methods.md │ ├── ts-morph-structures.memberedobjecttypestructureimpl.properties.md │ ├── ts-morph-structures.memberedobjecttypestructureimpl.setaccessors.md │ ├── ts-morph-structures.memberedobjecttypestructureimpl.writerfunction.md │ ├── ts-morph-structures.memberedstatementskey.fieldkey.md │ ├── ts-morph-structures.memberedstatementskey.fieldtype.md │ ├── ts-morph-structures.memberedstatementskey.grouptype.md │ ├── ts-morph-structures.memberedstatementskey.isfieldstatic.md │ ├── ts-morph-structures.memberedstatementskey.isgroupstatic.md │ ├── ts-morph-structures.memberedstatementskey.md │ ├── ts-morph-structures.memberedstatementskey.purpose.md │ ├── ts-morph-structures.memberedstatementskey.statementgroupkey.md │ ├── ts-morph-structures.memberedtypetoclass.addstatementgetters.md │ ├── ts-morph-structures.memberedtypetoclass.addtypemember.md │ ├── ts-morph-structures.memberedtypetoclass.buildclassmembersmap.md │ ├── ts-morph-structures.memberedtypetoclass.constructorparameters.md │ ├── ts-morph-structures.memberedtypetoclass.definestatementsbypurpose.md │ ├── ts-morph-structures.memberedtypetoclass.importfrommemberedtype.md │ ├── ts-morph-structures.memberedtypetoclass.importfromtypemembersmap.md │ ├── ts-morph-structures.memberedtypetoclass.indexsignatureresolver.md │ ├── ts-morph-structures.memberedtypetoclass.insertmemberkey.md │ ├── ts-morph-structures.memberedtypetoclass.isabstractcallback.md │ ├── ts-morph-structures.memberedtypetoclass.isasynccallback.md │ ├── ts-morph-structures.memberedtypetoclass.isgeneratorcallback.md │ ├── ts-morph-structures.memberedtypetoclass.md │ ├── ts-morph-structures.memberedtypetoclass.scopecallback.md │ ├── ts-morph-structures.methoddeclarationimpl._constructor_.md │ ├── ts-morph-structures.methoddeclarationimpl.clone.md │ ├── ts-morph-structures.methoddeclarationimpl.decorators.md │ ├── ts-morph-structures.methoddeclarationimpl.docs.md │ ├── ts-morph-structures.methoddeclarationimpl.fromsignature.md │ ├── ts-morph-structures.methoddeclarationimpl.hasoverridekeyword.md │ ├── ts-morph-structures.methoddeclarationimpl.hasquestiontoken.md │ ├── ts-morph-structures.methoddeclarationimpl.isabstract.md │ ├── ts-morph-structures.methoddeclarationimpl.isasync.md │ ├── ts-morph-structures.methoddeclarationimpl.isgenerator.md │ ├── ts-morph-structures.methoddeclarationimpl.isstatic.md │ ├── ts-morph-structures.methoddeclarationimpl.kind.md │ ├── ts-morph-structures.methoddeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.methoddeclarationimpl.md │ ├── ts-morph-structures.methoddeclarationimpl.name.md │ ├── ts-morph-structures.methoddeclarationimpl.overloads.md │ ├── ts-morph-structures.methoddeclarationimpl.parameters.md │ ├── ts-morph-structures.methoddeclarationimpl.returntype.md │ ├── ts-morph-structures.methoddeclarationimpl.returntypestructure.md │ ├── ts-morph-structures.methoddeclarationimpl.scope.md │ ├── ts-morph-structures.methoddeclarationimpl.statements.md │ ├── ts-morph-structures.methoddeclarationimpl.tojson.md │ ├── ts-morph-structures.methoddeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.methoddeclarationimpl.typeparameters.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl._constructor_.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.clone.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.docs.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.hasoverridekeyword.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.hasquestiontoken.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.isabstract.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.isasync.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.isgenerator.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.isstatic.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.kind.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.leadingtrivia.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.parameters.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.returntype.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.returntypestructure.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.scope.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.tojson.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.trailingtrivia.md │ ├── ts-morph-structures.methoddeclarationoverloadimpl.typeparameters.md │ ├── ts-morph-structures.methoddeclarationoverloadstructureclassifc.isstatic.md │ ├── ts-morph-structures.methoddeclarationoverloadstructureclassifc.kind.md │ ├── ts-morph-structures.methoddeclarationoverloadstructureclassifc.md │ ├── ts-morph-structures.methoddeclarationstructureclassifc.isstatic.md │ ├── ts-morph-structures.methoddeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.methoddeclarationstructureclassifc.md │ ├── ts-morph-structures.methoddeclarationstructureclassifc.overloads.md │ ├── ts-morph-structures.methodsignatureimpl._constructor_.md │ ├── ts-morph-structures.methodsignatureimpl.clone.md │ ├── ts-morph-structures.methodsignatureimpl.docs.md │ ├── ts-morph-structures.methodsignatureimpl.hasquestiontoken.md │ ├── ts-morph-structures.methodsignatureimpl.kind.md │ ├── ts-morph-structures.methodsignatureimpl.leadingtrivia.md │ ├── ts-morph-structures.methodsignatureimpl.md │ ├── ts-morph-structures.methodsignatureimpl.name.md │ ├── ts-morph-structures.methodsignatureimpl.parameters.md │ ├── ts-morph-structures.methodsignatureimpl.returntype.md │ ├── ts-morph-structures.methodsignatureimpl.returntypestructure.md │ ├── ts-morph-structures.methodsignatureimpl.tojson.md │ ├── ts-morph-structures.methodsignatureimpl.trailingtrivia.md │ ├── ts-morph-structures.methodsignatureimpl.typeparameters.md │ ├── ts-morph-structures.methodsignaturestructureclassifc.kind.md │ ├── ts-morph-structures.methodsignaturestructureclassifc.md │ ├── ts-morph-structures.moduledeclarationimpl._constructor_.md │ ├── ts-morph-structures.moduledeclarationimpl.clone.md │ ├── ts-morph-structures.moduledeclarationimpl.declarationkind.md │ ├── ts-morph-structures.moduledeclarationimpl.docs.md │ ├── ts-morph-structures.moduledeclarationimpl.hasdeclarekeyword.md │ ├── ts-morph-structures.moduledeclarationimpl.isdefaultexport.md │ ├── ts-morph-structures.moduledeclarationimpl.isexported.md │ ├── ts-morph-structures.moduledeclarationimpl.kind.md │ ├── ts-morph-structures.moduledeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.moduledeclarationimpl.md │ ├── ts-morph-structures.moduledeclarationimpl.name.md │ ├── ts-morph-structures.moduledeclarationimpl.statements.md │ ├── ts-morph-structures.moduledeclarationimpl.tojson.md │ ├── ts-morph-structures.moduledeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.moduledeclarationstructureclassifc.declarationkind.md │ ├── ts-morph-structures.moduledeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.moduledeclarationstructureclassifc.md │ ├── ts-morph-structures.nameablenodestructureclassifc.md │ ├── ts-morph-structures.nameablenodestructureclassifc.name.md │ ├── ts-morph-structures.namedclassmemberimpl.md │ ├── ts-morph-structures.namednodestructureclassifc.md │ ├── ts-morph-structures.namednodestructureclassifc.name.md │ ├── ts-morph-structures.namedtypememberimpl.md │ ├── ts-morph-structures.numbertypestructureimpl._constructor_.md │ ├── ts-morph-structures.numbertypestructureimpl.clone.md │ ├── ts-morph-structures.numbertypestructureimpl.get.md │ ├── ts-morph-structures.numbertypestructureimpl.kind.md │ ├── ts-morph-structures.numbertypestructureimpl.md │ ├── ts-morph-structures.numbertypestructureimpl.numbervalue.md │ ├── ts-morph-structures.numbertypestructureimpl.writerfunction.md │ ├── ts-morph-structures.objectliteralexpressionpropertystructureimpls.md │ ├── ts-morph-structures.overrideablenodestructureclassifc.hasoverridekeyword.md │ ├── ts-morph-structures.overrideablenodestructureclassifc.md │ ├── ts-morph-structures.parameterdeclarationimpl._constructor_.md │ ├── ts-morph-structures.parameterdeclarationimpl.clone.md │ ├── ts-morph-structures.parameterdeclarationimpl.decorators.md │ ├── ts-morph-structures.parameterdeclarationimpl.hasoverridekeyword.md │ ├── ts-morph-structures.parameterdeclarationimpl.hasquestiontoken.md │ ├── ts-morph-structures.parameterdeclarationimpl.initializer.md │ ├── ts-morph-structures.parameterdeclarationimpl.isreadonly.md │ ├── ts-morph-structures.parameterdeclarationimpl.isrestparameter.md │ ├── ts-morph-structures.parameterdeclarationimpl.kind.md │ ├── ts-morph-structures.parameterdeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.parameterdeclarationimpl.md │ ├── ts-morph-structures.parameterdeclarationimpl.name.md │ ├── ts-morph-structures.parameterdeclarationimpl.scope.md │ ├── ts-morph-structures.parameterdeclarationimpl.tojson.md │ ├── ts-morph-structures.parameterdeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.parameterdeclarationimpl.type.md │ ├── ts-morph-structures.parameterdeclarationimpl.typestructure.md │ ├── ts-morph-structures.parameterdeclarationstructureclassifc.isrestparameter.md │ ├── ts-morph-structures.parameterdeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.parameterdeclarationstructureclassifc.md │ ├── ts-morph-structures.parameterednodestructureclassifc.md │ ├── ts-morph-structures.parameterednodestructureclassifc.parameters.md │ ├── ts-morph-structures.parametertypestructureimpl._constructor_.md │ ├── ts-morph-structures.parametertypestructureimpl.clone.md │ ├── ts-morph-structures.parametertypestructureimpl.kind.md │ ├── ts-morph-structures.parametertypestructureimpl.md │ ├── ts-morph-structures.parametertypestructureimpl.name.md │ ├── ts-morph-structures.parametertypestructureimpl.typestructure.md │ ├── ts-morph-structures.parametertypestructureimpl.writerfunction.md │ ├── ts-morph-structures.parenthesestypestructureimpl._constructor_.md │ ├── ts-morph-structures.parenthesestypestructureimpl.childtypes.md │ ├── ts-morph-structures.parenthesestypestructureimpl.clone.md │ ├── ts-morph-structures.parenthesestypestructureimpl.endtoken.md │ ├── ts-morph-structures.parenthesestypestructureimpl.joinchildrentoken.md │ ├── ts-morph-structures.parenthesestypestructureimpl.kind.md │ ├── ts-morph-structures.parenthesestypestructureimpl.maxchildcount.md │ ├── ts-morph-structures.parenthesestypestructureimpl.md │ ├── ts-morph-structures.parenthesestypestructureimpl.objecttype.md │ ├── ts-morph-structures.parenthesestypestructureimpl.starttoken.md │ ├── ts-morph-structures.parseliteraltype.md │ ├── ts-morph-structures.prefixoperatorstypestructureimpl._constructor_.md │ ├── ts-morph-structures.prefixoperatorstypestructureimpl.clone.md │ ├── ts-morph-structures.prefixoperatorstypestructureimpl.kind.md │ ├── ts-morph-structures.prefixoperatorstypestructureimpl.md │ ├── ts-morph-structures.prefixoperatorstypestructureimpl.objecttype.md │ ├── ts-morph-structures.prefixoperatorstypestructureimpl.operators.md │ ├── ts-morph-structures.prefixoperatorstypestructureimpl.writerfunction.md │ ├── ts-morph-structures.prefixunaryoperator.md │ ├── ts-morph-structures.propertyassignmentimpl._constructor_.md │ ├── ts-morph-structures.propertyassignmentimpl.clone.md │ ├── ts-morph-structures.propertyassignmentimpl.initializer.md │ ├── ts-morph-structures.propertyassignmentimpl.kind.md │ ├── ts-morph-structures.propertyassignmentimpl.leadingtrivia.md │ ├── ts-morph-structures.propertyassignmentimpl.md │ ├── ts-morph-structures.propertyassignmentimpl.name.md │ ├── ts-morph-structures.propertyassignmentimpl.tojson.md │ ├── ts-morph-structures.propertyassignmentimpl.trailingtrivia.md │ ├── ts-morph-structures.propertyassignmentstructureclassifc.initializer.md │ ├── ts-morph-structures.propertyassignmentstructureclassifc.kind.md │ ├── ts-morph-structures.propertyassignmentstructureclassifc.md │ ├── ts-morph-structures.propertydeclarationimpl._constructor_.md │ ├── ts-morph-structures.propertydeclarationimpl.clone.md │ ├── ts-morph-structures.propertydeclarationimpl.decorators.md │ ├── ts-morph-structures.propertydeclarationimpl.docs.md │ ├── ts-morph-structures.propertydeclarationimpl.fromsignature.md │ ├── ts-morph-structures.propertydeclarationimpl.hasaccessorkeyword.md │ ├── ts-morph-structures.propertydeclarationimpl.hasdeclarekeyword.md │ ├── ts-morph-structures.propertydeclarationimpl.hasexclamationtoken.md │ ├── ts-morph-structures.propertydeclarationimpl.hasoverridekeyword.md │ ├── ts-morph-structures.propertydeclarationimpl.hasquestiontoken.md │ ├── ts-morph-structures.propertydeclarationimpl.initializer.md │ ├── ts-morph-structures.propertydeclarationimpl.isabstract.md │ ├── ts-morph-structures.propertydeclarationimpl.isreadonly.md │ ├── ts-morph-structures.propertydeclarationimpl.isstatic.md │ ├── ts-morph-structures.propertydeclarationimpl.kind.md │ ├── ts-morph-structures.propertydeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.propertydeclarationimpl.md │ ├── ts-morph-structures.propertydeclarationimpl.name.md │ ├── ts-morph-structures.propertydeclarationimpl.scope.md │ ├── ts-morph-structures.propertydeclarationimpl.tojson.md │ ├── ts-morph-structures.propertydeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.propertydeclarationimpl.type.md │ ├── ts-morph-structures.propertydeclarationimpl.typestructure.md │ ├── ts-morph-structures.propertydeclarationstructureclassifc.hasaccessorkeyword.md │ ├── ts-morph-structures.propertydeclarationstructureclassifc.isstatic.md │ ├── ts-morph-structures.propertydeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.propertydeclarationstructureclassifc.md │ ├── ts-morph-structures.propertyinitializergetter.filterpropertyinitializer.md │ ├── ts-morph-structures.propertyinitializergetter.getpropertyinitializer.md │ ├── ts-morph-structures.propertyinitializergetter.md │ ├── ts-morph-structures.propertysignatureimpl._constructor_.md │ ├── ts-morph-structures.propertysignatureimpl.clone.md │ ├── ts-morph-structures.propertysignatureimpl.docs.md │ ├── ts-morph-structures.propertysignatureimpl.hasquestiontoken.md │ ├── ts-morph-structures.propertysignatureimpl.initializer.md │ ├── ts-morph-structures.propertysignatureimpl.isreadonly.md │ ├── ts-morph-structures.propertysignatureimpl.kind.md │ ├── ts-morph-structures.propertysignatureimpl.leadingtrivia.md │ ├── ts-morph-structures.propertysignatureimpl.md │ ├── ts-morph-structures.propertysignatureimpl.name.md │ ├── ts-morph-structures.propertysignatureimpl.tojson.md │ ├── ts-morph-structures.propertysignatureimpl.trailingtrivia.md │ ├── ts-morph-structures.propertysignatureimpl.type.md │ ├── ts-morph-structures.propertysignatureimpl.typestructure.md │ ├── ts-morph-structures.propertysignaturestructureclassifc.kind.md │ ├── ts-morph-structures.propertysignaturestructureclassifc.md │ ├── ts-morph-structures.qualifiednametypestructureimpl._constructor_.md │ ├── ts-morph-structures.qualifiednametypestructureimpl.childtypes.md │ ├── ts-morph-structures.qualifiednametypestructureimpl.clone.md │ ├── ts-morph-structures.qualifiednametypestructureimpl.kind.md │ ├── ts-morph-structures.qualifiednametypestructureimpl.md │ ├── ts-morph-structures.qualifiednametypestructureimpl.writerfunction.md │ ├── ts-morph-structures.questiontokenablenodestructureclassifc.hasquestiontoken.md │ ├── ts-morph-structures.questiontokenablenodestructureclassifc.md │ ├── ts-morph-structures.readonlyablenodestructureclassifc.isreadonly.md │ ├── ts-morph-structures.readonlyablenodestructureclassifc.md │ ├── ts-morph-structures.readonlytypemembersmap.md │ ├── ts-morph-structures.returntypednodestructureclassifc.md │ ├── ts-morph-structures.returntypednodestructureclassifc.returntype.md │ ├── ts-morph-structures.returntypednodestructureclassifc.returntypestructure.md │ ├── ts-morph-structures.returntypednodetypestructure.md │ ├── ts-morph-structures.returntypednodetypestructure.returntype.md │ ├── ts-morph-structures.returntypednodetypestructure.returntypestructure.md │ ├── ts-morph-structures.scopednodestructureclassifc.md │ ├── ts-morph-structures.scopednodestructureclassifc.scope.md │ ├── ts-morph-structures.setaccessordeclarationimpl._constructor_.md │ ├── ts-morph-structures.setaccessordeclarationimpl.clone.md │ ├── ts-morph-structures.setaccessordeclarationimpl.decorators.md │ ├── ts-morph-structures.setaccessordeclarationimpl.docs.md │ ├── ts-morph-structures.setaccessordeclarationimpl.isabstract.md │ ├── ts-morph-structures.setaccessordeclarationimpl.isstatic.md │ ├── ts-morph-structures.setaccessordeclarationimpl.kind.md │ ├── ts-morph-structures.setaccessordeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.setaccessordeclarationimpl.md │ ├── ts-morph-structures.setaccessordeclarationimpl.name.md │ ├── ts-morph-structures.setaccessordeclarationimpl.parameters.md │ ├── ts-morph-structures.setaccessordeclarationimpl.returntype.md │ ├── ts-morph-structures.setaccessordeclarationimpl.returntypestructure.md │ ├── ts-morph-structures.setaccessordeclarationimpl.scope.md │ ├── ts-morph-structures.setaccessordeclarationimpl.statements.md │ ├── ts-morph-structures.setaccessordeclarationimpl.tojson.md │ ├── ts-morph-structures.setaccessordeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.setaccessordeclarationimpl.typeparameters.md │ ├── ts-morph-structures.setaccessordeclarationstructureclassifc.isstatic.md │ ├── ts-morph-structures.setaccessordeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.setaccessordeclarationstructureclassifc.md │ ├── ts-morph-structures.shorthandpropertyassignmentimpl._constructor_.md │ ├── ts-morph-structures.shorthandpropertyassignmentimpl.clone.md │ ├── ts-morph-structures.shorthandpropertyassignmentimpl.kind.md │ ├── ts-morph-structures.shorthandpropertyassignmentimpl.leadingtrivia.md │ ├── ts-morph-structures.shorthandpropertyassignmentimpl.md │ ├── ts-morph-structures.shorthandpropertyassignmentimpl.name.md │ ├── ts-morph-structures.shorthandpropertyassignmentimpl.tojson.md │ ├── ts-morph-structures.shorthandpropertyassignmentimpl.trailingtrivia.md │ ├── ts-morph-structures.shorthandpropertyassignmentstructureclassifc.kind.md │ ├── ts-morph-structures.shorthandpropertyassignmentstructureclassifc.md │ ├── ts-morph-structures.sourcefileimpl.clone.md │ ├── ts-morph-structures.sourcefileimpl.kind.md │ ├── ts-morph-structures.sourcefileimpl.leadingtrivia.md │ ├── ts-morph-structures.sourcefileimpl.md │ ├── ts-morph-structures.sourcefileimpl.statements.md │ ├── ts-morph-structures.sourcefileimpl.tojson.md │ ├── ts-morph-structures.sourcefileimpl.trailingtrivia.md │ ├── ts-morph-structures.sourcefilestructureclassifc.kind.md │ ├── ts-morph-structures.sourcefilestructureclassifc.md │ ├── ts-morph-structures.spreadassignmentimpl._constructor_.md │ ├── ts-morph-structures.spreadassignmentimpl.clone.md │ ├── ts-morph-structures.spreadassignmentimpl.expression.md │ ├── ts-morph-structures.spreadassignmentimpl.kind.md │ ├── ts-morph-structures.spreadassignmentimpl.leadingtrivia.md │ ├── ts-morph-structures.spreadassignmentimpl.md │ ├── ts-morph-structures.spreadassignmentimpl.tojson.md │ ├── ts-morph-structures.spreadassignmentimpl.trailingtrivia.md │ ├── ts-morph-structures.spreadassignmentstructureclassifc.expression.md │ ├── ts-morph-structures.spreadassignmentstructureclassifc.kind.md │ ├── ts-morph-structures.spreadassignmentstructureclassifc.md │ ├── ts-morph-structures.statementednodestructureclassifc.md │ ├── ts-morph-structures.statementednodestructureclassifc.statements.md │ ├── ts-morph-structures.statementstructureimpls.md │ ├── ts-morph-structures.stringorwriterfunction.md │ ├── ts-morph-structures.stringtypestructureimpl._constructor_.md │ ├── ts-morph-structures.stringtypestructureimpl.clone.md │ ├── ts-morph-structures.stringtypestructureimpl.get.md │ ├── ts-morph-structures.stringtypestructureimpl.kind.md │ ├── ts-morph-structures.stringtypestructureimpl.md │ ├── ts-morph-structures.stringtypestructureimpl.stringvalue.md │ ├── ts-morph-structures.stringtypestructureimpl.writerfunction.md │ ├── ts-morph-structures.stringwriterorstatementimpl.md │ ├── ts-morph-structures.structureclassifc.leadingtrivia.md │ ├── ts-morph-structures.structureclassifc.md │ ├── ts-morph-structures.structureclassifc.trailingtrivia.md │ ├── ts-morph-structures.structureimpls.md │ ├── ts-morph-structures.templateliteraltypestructureimpl._constructor_.md │ ├── ts-morph-structures.templateliteraltypestructureimpl.clone.md │ ├── ts-morph-structures.templateliteraltypestructureimpl.head.md │ ├── ts-morph-structures.templateliteraltypestructureimpl.kind.md │ ├── ts-morph-structures.templateliteraltypestructureimpl.md │ ├── ts-morph-structures.templateliteraltypestructureimpl.spans.md │ ├── ts-morph-structures.templateliteraltypestructureimpl.writerfunction.md │ ├── ts-morph-structures.tupletypestructureimpl._constructor_.md │ ├── ts-morph-structures.tupletypestructureimpl.childtypes.md │ ├── ts-morph-structures.tupletypestructureimpl.clone.md │ ├── ts-morph-structures.tupletypestructureimpl.endtoken.md │ ├── ts-morph-structures.tupletypestructureimpl.joinchildrentoken.md │ ├── ts-morph-structures.tupletypestructureimpl.kind.md │ ├── ts-morph-structures.tupletypestructureimpl.maxchildcount.md │ ├── ts-morph-structures.tupletypestructureimpl.md │ ├── ts-morph-structures.tupletypestructureimpl.objecttype.md │ ├── ts-morph-structures.tupletypestructureimpl.starttoken.md │ ├── ts-morph-structures.typealiasdeclarationimpl._constructor_.md │ ├── ts-morph-structures.typealiasdeclarationimpl.clone.md │ ├── ts-morph-structures.typealiasdeclarationimpl.docs.md │ ├── ts-morph-structures.typealiasdeclarationimpl.hasdeclarekeyword.md │ ├── ts-morph-structures.typealiasdeclarationimpl.isdefaultexport.md │ ├── ts-morph-structures.typealiasdeclarationimpl.isexported.md │ ├── ts-morph-structures.typealiasdeclarationimpl.kind.md │ ├── ts-morph-structures.typealiasdeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.typealiasdeclarationimpl.md │ ├── ts-morph-structures.typealiasdeclarationimpl.name.md │ ├── ts-morph-structures.typealiasdeclarationimpl.tojson.md │ ├── ts-morph-structures.typealiasdeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.typealiasdeclarationimpl.type.md │ ├── ts-morph-structures.typealiasdeclarationimpl.typeparameters.md │ ├── ts-morph-structures.typealiasdeclarationimpl.typestructure.md │ ├── ts-morph-structures.typealiasdeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.typealiasdeclarationstructureclassifc.md │ ├── ts-morph-structures.typealiasdeclarationstructureclassifc.type.md │ ├── ts-morph-structures.typeargumentedtypestructureimpl._constructor_.md │ ├── ts-morph-structures.typeargumentedtypestructureimpl.childtypes.md │ ├── ts-morph-structures.typeargumentedtypestructureimpl.clone.md │ ├── ts-morph-structures.typeargumentedtypestructureimpl.endtoken.md │ ├── ts-morph-structures.typeargumentedtypestructureimpl.joinchildrentoken.md │ ├── ts-morph-structures.typeargumentedtypestructureimpl.kind.md │ ├── ts-morph-structures.typeargumentedtypestructureimpl.maxchildcount.md │ ├── ts-morph-structures.typeargumentedtypestructureimpl.md │ ├── ts-morph-structures.typeargumentedtypestructureimpl.objecttype.md │ ├── ts-morph-structures.typeargumentedtypestructureimpl.starttoken.md │ ├── ts-morph-structures.typednodestructureclassifc.md │ ├── ts-morph-structures.typednodestructureclassifc.type.md │ ├── ts-morph-structures.typednodestructureclassifc.typestructure.md │ ├── ts-morph-structures.typednodetypestructure.md │ ├── ts-morph-structures.typednodetypestructure.type.md │ ├── ts-morph-structures.typednodetypestructure.typestructure.md │ ├── ts-morph-structures.typeelementmemberstructureimpls.md │ ├── ts-morph-structures.typememberimpl.md │ ├── ts-morph-structures.typemembersmap.addmembers.md │ ├── ts-morph-structures.typemembersmap.arrayofkind.md │ ├── ts-morph-structures.typemembersmap.clone.md │ ├── ts-morph-structures.typemembersmap.convertaccessorstoproperty.md │ ├── ts-morph-structures.typemembersmap.convertpropertytoaccessors.md │ ├── ts-morph-structures.typemembersmap.frommemberedobject.md │ ├── ts-morph-structures.typemembersmap.getaskind.md │ ├── ts-morph-structures.typemembersmap.keyfrommember.md │ ├── ts-morph-structures.typemembersmap.keyfromname.md │ ├── ts-morph-structures.typemembersmap.md │ ├── ts-morph-structures.typemembersmap.movememberstotype.md │ ├── ts-morph-structures.typemembersmap.resolveindexsignature.md │ ├── ts-morph-structures.typemembersmap.tojson.md │ ├── ts-morph-structures.typenodetotypestructureconsole.md │ ├── ts-morph-structures.typeparameterdeclarationimpl._constructor_.md │ ├── ts-morph-structures.typeparameterdeclarationimpl.clone.md │ ├── ts-morph-structures.typeparameterdeclarationimpl.constraint.md │ ├── ts-morph-structures.typeparameterdeclarationimpl.constraintstructure.md │ ├── ts-morph-structures.typeparameterdeclarationimpl.default.md │ ├── ts-morph-structures.typeparameterdeclarationimpl.defaultstructure.md │ ├── ts-morph-structures.typeparameterdeclarationimpl.isconst.md │ ├── ts-morph-structures.typeparameterdeclarationimpl.kind.md │ ├── ts-morph-structures.typeparameterdeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.typeparameterdeclarationimpl.md │ ├── ts-morph-structures.typeparameterdeclarationimpl.name.md │ ├── ts-morph-structures.typeparameterdeclarationimpl.tojson.md │ ├── ts-morph-structures.typeparameterdeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.typeparameterdeclarationimpl.variance.md │ ├── ts-morph-structures.typeparameterdeclarationstructureclassifc.constraint.md │ ├── ts-morph-structures.typeparameterdeclarationstructureclassifc.constraintstructure.md │ ├── ts-morph-structures.typeparameterdeclarationstructureclassifc.default.md │ ├── ts-morph-structures.typeparameterdeclarationstructureclassifc.defaultstructure.md │ ├── ts-morph-structures.typeparameterdeclarationstructureclassifc.isconst.md │ ├── ts-morph-structures.typeparameterdeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.typeparameterdeclarationstructureclassifc.md │ ├── ts-morph-structures.typeparameterdeclarationstructureclassifc.variance.md │ ├── ts-morph-structures.typeparameterednodestructureclassifc.md │ ├── ts-morph-structures.typeparameterednodestructureclassifc.typeparameters.md │ ├── ts-morph-structures.typeparameterwithtypestructures.constraint.md │ ├── ts-morph-structures.typeparameterwithtypestructures.constraintstructure.md │ ├── ts-morph-structures.typeparameterwithtypestructures.default.md │ ├── ts-morph-structures.typeparameterwithtypestructures.defaultstructure.md │ ├── ts-morph-structures.typeparameterwithtypestructures.md │ ├── ts-morph-structures.typepredicatetypestructureimpl._constructor_.md │ ├── ts-morph-structures.typepredicatetypestructureimpl.clone.md │ ├── ts-morph-structures.typepredicatetypestructureimpl.hasassertskeyword.md │ ├── ts-morph-structures.typepredicatetypestructureimpl.istype.md │ ├── ts-morph-structures.typepredicatetypestructureimpl.kind.md │ ├── ts-morph-structures.typepredicatetypestructureimpl.md │ ├── ts-morph-structures.typepredicatetypestructureimpl.parametername.md │ ├── ts-morph-structures.typepredicatetypestructureimpl.writerfunction.md │ ├── ts-morph-structures.typestructurekind.md │ ├── ts-morph-structures.typestructures.md │ ├── ts-morph-structures.typestructureset.clonefromtypestructureset.md │ ├── ts-morph-structures.typestructureset.md │ ├── ts-morph-structures.typestructureset.replacefromtypearray.md │ ├── ts-morph-structures.typestructuresornull.md │ ├── ts-morph-structures.uniontypestructureimpl._constructor_.md │ ├── ts-morph-structures.uniontypestructureimpl.childtypes.md │ ├── ts-morph-structures.uniontypestructureimpl.clone.md │ ├── ts-morph-structures.uniontypestructureimpl.endtoken.md │ ├── ts-morph-structures.uniontypestructureimpl.joinchildrentoken.md │ ├── ts-morph-structures.uniontypestructureimpl.kind.md │ ├── ts-morph-structures.uniontypestructureimpl.maxchildcount.md │ ├── ts-morph-structures.uniontypestructureimpl.md │ ├── ts-morph-structures.uniontypestructureimpl.objecttype.md │ ├── ts-morph-structures.uniontypestructureimpl.starttoken.md │ ├── ts-morph-structures.variabledeclarationimpl._constructor_.md │ ├── ts-morph-structures.variabledeclarationimpl.clone.md │ ├── ts-morph-structures.variabledeclarationimpl.hasexclamationtoken.md │ ├── ts-morph-structures.variabledeclarationimpl.initializer.md │ ├── ts-morph-structures.variabledeclarationimpl.kind.md │ ├── ts-morph-structures.variabledeclarationimpl.leadingtrivia.md │ ├── ts-morph-structures.variabledeclarationimpl.md │ ├── ts-morph-structures.variabledeclarationimpl.name.md │ ├── ts-morph-structures.variabledeclarationimpl.tojson.md │ ├── ts-morph-structures.variabledeclarationimpl.trailingtrivia.md │ ├── ts-morph-structures.variabledeclarationimpl.type.md │ ├── ts-morph-structures.variabledeclarationimpl.typestructure.md │ ├── ts-morph-structures.variabledeclarationstructureclassifc.kind.md │ ├── ts-morph-structures.variabledeclarationstructureclassifc.md │ ├── ts-morph-structures.variablestatementimpl.clone.md │ ├── ts-morph-structures.variablestatementimpl.declarationkind.md │ ├── ts-morph-structures.variablestatementimpl.declarations.md │ ├── ts-morph-structures.variablestatementimpl.docs.md │ ├── ts-morph-structures.variablestatementimpl.hasdeclarekeyword.md │ ├── ts-morph-structures.variablestatementimpl.isdefaultexport.md │ ├── ts-morph-structures.variablestatementimpl.isexported.md │ ├── ts-morph-structures.variablestatementimpl.kind.md │ ├── ts-morph-structures.variablestatementimpl.leadingtrivia.md │ ├── ts-morph-structures.variablestatementimpl.md │ ├── ts-morph-structures.variablestatementimpl.tojson.md │ ├── ts-morph-structures.variablestatementimpl.trailingtrivia.md │ ├── ts-morph-structures.variablestatementstructureclassifc.declarationkind.md │ ├── ts-morph-structures.variablestatementstructureclassifc.declarations.md │ ├── ts-morph-structures.variablestatementstructureclassifc.kind.md │ ├── ts-morph-structures.variablestatementstructureclassifc.md │ ├── ts-morph-structures.voidtypenodetotypestructureconsole.md │ ├── ts-morph-structures.writertypestructureimpl._constructor_.md │ ├── ts-morph-structures.writertypestructureimpl.clone.md │ ├── ts-morph-structures.writertypestructureimpl.kind.md │ ├── ts-morph-structures.writertypestructureimpl.md │ └── ts-morph-structures.writertypestructureimpl.writerfunction.md │ ├── guides │ ├── ImportsAndExports.md │ ├── MemberedTypeToClass.md │ ├── NavigatingStructures.md │ ├── StructureClasses.md │ ├── TypeStructures.md │ └── when-to-use.md │ ├── index.md │ ├── reference │ └── structure-types.md │ └── use-cases │ └── TwoKeyedMap.md ├── old-0.9 ├── Makefile ├── docs │ ├── concepts │ │ └── index.html │ ├── dist │ │ ├── all-specs.js │ │ ├── browser │ │ │ ├── DimensionalMap.js │ │ │ ├── assert.js │ │ │ ├── es-membrane.js │ │ │ ├── fireJasmine.js │ │ │ ├── handlers.js │ │ │ ├── mocks.js │ │ │ ├── sharedUtilities.js │ │ │ └── test-browser.xhtml │ │ └── node │ │ │ ├── DimensionalMap.js │ │ │ ├── es-membrane.js │ │ │ ├── mocks.js │ │ │ ├── proxyHandlers.js │ │ │ └── utilities.js │ ├── gui │ │ ├── DistortionsGUI.js │ │ ├── DistortionsRules.js │ │ ├── HandlerNames.js │ │ ├── OuterGridManager.js │ │ ├── blob │ │ │ ├── BlobLoader.html │ │ │ └── BlobLoader.js │ │ ├── grid-outer.css │ │ ├── help.css │ │ ├── icons │ │ │ ├── Tango-style_question_icon.svg │ │ │ ├── arrowicon-down.svg │ │ │ ├── arrowicon-up.svg │ │ │ ├── close.svg │ │ │ ├── minusicon.svg │ │ │ ├── notes-icon.svg │ │ │ └── plusicon.svg │ │ ├── index.html │ │ ├── mainPanels │ │ │ ├── graphs.js │ │ │ ├── load.css │ │ │ ├── load.js │ │ │ ├── membrane.css │ │ │ ├── membrane.js │ │ │ ├── output.js │ │ │ └── rules.css │ │ ├── multistate │ │ │ ├── multistate.css │ │ │ └── multistate.js │ │ ├── other.css │ │ ├── spec-render.js │ │ ├── specification.html │ │ ├── tests │ │ │ ├── blobloader.js │ │ │ ├── getGUIMocksPromise.js │ │ │ ├── globals.js │ │ │ ├── graphs.js │ │ │ ├── importAndExport.js │ │ │ ├── loadPanel.js │ │ │ ├── membranePanel.js │ │ │ ├── outputPanel.js │ │ │ ├── promiseDone.html │ │ │ ├── promiseDone.js │ │ │ ├── promiseTypes.js │ │ │ ├── rules-fixture.html │ │ │ ├── rules.js │ │ │ ├── secondaryDistortions.js │ │ │ ├── setupFrame.js │ │ │ ├── tree-fixture.html │ │ │ ├── tree.js │ │ │ ├── userNotes.js │ │ │ └── values.js │ │ ├── tree │ │ │ ├── tree.css │ │ │ └── tree.js │ │ └── utilities │ │ │ ├── CodeMirrorManager.js │ │ │ ├── defineElementGetter.js │ │ │ ├── promiseTypes.js │ │ │ └── stylesheet.js │ ├── html-framework │ │ ├── index.css │ │ ├── index.html │ │ ├── index.js │ │ └── utilities │ │ │ └── CodeMirrorManager.js │ ├── index.html │ ├── lab │ │ ├── error.html │ │ ├── index.html │ │ ├── jasmine.html │ │ ├── jasmine.js │ │ ├── lab.css │ │ ├── lab.js │ │ └── utilities │ │ │ ├── CodeMirrorManager.js │ │ │ ├── FreeformManager.js │ │ │ ├── ObjectGraphManager.js │ │ │ ├── TBodyRowManager.js │ │ │ ├── TestDriver.js │ │ │ └── defineElementGetter.js │ ├── libraries │ │ ├── codemirror-5.25.2 │ │ │ ├── .gitattributes │ │ │ ├── .npmignore │ │ │ ├── .travis.yml │ │ │ ├── AUTHORS │ │ │ ├── CHANGELOG.md │ │ │ ├── CONTRIBUTING.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── addon │ │ │ │ ├── comment │ │ │ │ │ ├── comment.js │ │ │ │ │ └── continuecomment.js │ │ │ │ ├── dialog │ │ │ │ │ ├── dialog.css │ │ │ │ │ └── dialog.js │ │ │ │ ├── display │ │ │ │ │ ├── autorefresh.js │ │ │ │ │ ├── fullscreen.css │ │ │ │ │ ├── fullscreen.js │ │ │ │ │ ├── panel.js │ │ │ │ │ ├── placeholder.js │ │ │ │ │ └── rulers.js │ │ │ │ ├── edit │ │ │ │ │ ├── closebrackets.js │ │ │ │ │ ├── closetag.js │ │ │ │ │ ├── continuelist.js │ │ │ │ │ ├── matchbrackets.js │ │ │ │ │ ├── matchtags.js │ │ │ │ │ └── trailingspace.js │ │ │ │ ├── fold │ │ │ │ │ ├── brace-fold.js │ │ │ │ │ ├── comment-fold.js │ │ │ │ │ ├── foldcode.js │ │ │ │ │ ├── foldgutter.css │ │ │ │ │ ├── foldgutter.js │ │ │ │ │ ├── indent-fold.js │ │ │ │ │ ├── markdown-fold.js │ │ │ │ │ └── xml-fold.js │ │ │ │ ├── hint │ │ │ │ │ ├── anyword-hint.js │ │ │ │ │ ├── css-hint.js │ │ │ │ │ ├── html-hint.js │ │ │ │ │ ├── javascript-hint.js │ │ │ │ │ ├── show-hint.css │ │ │ │ │ ├── show-hint.js │ │ │ │ │ ├── sql-hint.js │ │ │ │ │ └── xml-hint.js │ │ │ │ ├── lint │ │ │ │ │ ├── coffeescript-lint.js │ │ │ │ │ ├── css-lint.js │ │ │ │ │ ├── html-lint.js │ │ │ │ │ ├── javascript-lint.js │ │ │ │ │ ├── json-lint.js │ │ │ │ │ ├── lint.css │ │ │ │ │ ├── lint.js │ │ │ │ │ └── yaml-lint.js │ │ │ │ ├── merge │ │ │ │ │ ├── merge.css │ │ │ │ │ └── merge.js │ │ │ │ ├── mode │ │ │ │ │ ├── loadmode.js │ │ │ │ │ ├── multiplex.js │ │ │ │ │ ├── multiplex_test.js │ │ │ │ │ ├── overlay.js │ │ │ │ │ └── simple.js │ │ │ │ ├── runmode │ │ │ │ │ ├── colorize.js │ │ │ │ │ ├── runmode-standalone.js │ │ │ │ │ ├── runmode.js │ │ │ │ │ └── runmode.node.js │ │ │ │ ├── scroll │ │ │ │ │ ├── annotatescrollbar.js │ │ │ │ │ ├── scrollpastend.js │ │ │ │ │ ├── simplescrollbars.css │ │ │ │ │ └── simplescrollbars.js │ │ │ │ ├── search │ │ │ │ │ ├── jump-to-line.js │ │ │ │ │ ├── match-highlighter.js │ │ │ │ │ ├── matchesonscrollbar.css │ │ │ │ │ ├── matchesonscrollbar.js │ │ │ │ │ ├── search.js │ │ │ │ │ └── searchcursor.js │ │ │ │ ├── selection │ │ │ │ │ ├── active-line.js │ │ │ │ │ ├── mark-selection.js │ │ │ │ │ └── selection-pointer.js │ │ │ │ ├── tern │ │ │ │ │ ├── tern.css │ │ │ │ │ ├── tern.js │ │ │ │ │ └── worker.js │ │ │ │ └── wrap │ │ │ │ │ └── hardwrap.js │ │ │ ├── bin │ │ │ │ ├── authors.sh │ │ │ │ ├── compress │ │ │ │ ├── lint │ │ │ │ ├── release │ │ │ │ ├── source-highlight │ │ │ │ └── upload-release.js │ │ │ ├── demo │ │ │ │ ├── activeline.html │ │ │ │ ├── anywordhint.html │ │ │ │ ├── bidi.html │ │ │ │ ├── btree.html │ │ │ │ ├── buffers.html │ │ │ │ ├── changemode.html │ │ │ │ ├── closebrackets.html │ │ │ │ ├── closetag.html │ │ │ │ ├── complete.html │ │ │ │ ├── emacs.html │ │ │ │ ├── folding.html │ │ │ │ ├── fullscreen.html │ │ │ │ ├── hardwrap.html │ │ │ │ ├── html5complete.html │ │ │ │ ├── indentwrap.html │ │ │ │ ├── lint.html │ │ │ │ ├── loadmode.html │ │ │ │ ├── marker.html │ │ │ │ ├── markselection.html │ │ │ │ ├── matchhighlighter.html │ │ │ │ ├── matchtags.html │ │ │ │ ├── merge.html │ │ │ │ ├── multiplex.html │ │ │ │ ├── mustache.html │ │ │ │ ├── panel.html │ │ │ │ ├── placeholder.html │ │ │ │ ├── preview.html │ │ │ │ ├── requirejs.html │ │ │ │ ├── resize.html │ │ │ │ ├── rulers.html │ │ │ │ ├── runmode.html │ │ │ │ ├── search.html │ │ │ │ ├── simplemode.html │ │ │ │ ├── simplescrollbars.html │ │ │ │ ├── spanaffectswrapping_shim.html │ │ │ │ ├── sublime.html │ │ │ │ ├── tern.html │ │ │ │ ├── theme.html │ │ │ │ ├── trailingspace.html │ │ │ │ ├── variableheight.html │ │ │ │ ├── vim.html │ │ │ │ ├── visibletabs.html │ │ │ │ ├── widget.html │ │ │ │ └── xmlcomplete.html │ │ │ ├── doc │ │ │ │ ├── activebookmark.js │ │ │ │ ├── docs.css │ │ │ │ ├── internals.html │ │ │ │ ├── logo.png │ │ │ │ ├── logo.svg │ │ │ │ ├── manual.html │ │ │ │ ├── realworld.html │ │ │ │ ├── releases.html │ │ │ │ ├── reporting.html │ │ │ │ ├── upgrade_v2.2.html │ │ │ │ ├── upgrade_v3.html │ │ │ │ ├── upgrade_v4.html │ │ │ │ └── yinyang.png │ │ │ ├── index.html │ │ │ ├── keymap │ │ │ │ ├── emacs.js │ │ │ │ ├── sublime.js │ │ │ │ └── vim.js │ │ │ ├── lib │ │ │ │ ├── codemirror.css │ │ │ │ └── codemirror.js │ │ │ ├── mode │ │ │ │ ├── apl │ │ │ │ │ ├── apl.js │ │ │ │ │ └── index.html │ │ │ │ ├── asciiarmor │ │ │ │ │ ├── asciiarmor.js │ │ │ │ │ └── index.html │ │ │ │ ├── asn.1 │ │ │ │ │ ├── asn.1.js │ │ │ │ │ └── index.html │ │ │ │ ├── asterisk │ │ │ │ │ ├── asterisk.js │ │ │ │ │ └── index.html │ │ │ │ ├── brainfuck │ │ │ │ │ ├── brainfuck.js │ │ │ │ │ └── index.html │ │ │ │ ├── clike │ │ │ │ │ ├── clike.js │ │ │ │ │ ├── index.html │ │ │ │ │ ├── scala.html │ │ │ │ │ └── test.js │ │ │ │ ├── clojure │ │ │ │ │ ├── clojure.js │ │ │ │ │ └── index.html │ │ │ │ ├── cmake │ │ │ │ │ ├── cmake.js │ │ │ │ │ └── index.html │ │ │ │ ├── cobol │ │ │ │ │ ├── cobol.js │ │ │ │ │ └── index.html │ │ │ │ ├── coffeescript │ │ │ │ │ ├── coffeescript.js │ │ │ │ │ └── index.html │ │ │ │ ├── commonlisp │ │ │ │ │ ├── commonlisp.js │ │ │ │ │ └── index.html │ │ │ │ ├── crystal │ │ │ │ │ ├── crystal.js │ │ │ │ │ └── index.html │ │ │ │ ├── css │ │ │ │ │ ├── css.js │ │ │ │ │ ├── gss.html │ │ │ │ │ ├── gss_test.js │ │ │ │ │ ├── index.html │ │ │ │ │ ├── less.html │ │ │ │ │ ├── less_test.js │ │ │ │ │ ├── scss.html │ │ │ │ │ ├── scss_test.js │ │ │ │ │ └── test.js │ │ │ │ ├── cypher │ │ │ │ │ ├── cypher.js │ │ │ │ │ ├── index.html │ │ │ │ │ └── test.js │ │ │ │ ├── d │ │ │ │ │ ├── d.js │ │ │ │ │ └── index.html │ │ │ │ ├── dart │ │ │ │ │ ├── dart.js │ │ │ │ │ └── index.html │ │ │ │ ├── diff │ │ │ │ │ ├── diff.js │ │ │ │ │ └── index.html │ │ │ │ ├── django │ │ │ │ │ ├── django.js │ │ │ │ │ └── index.html │ │ │ │ ├── dockerfile │ │ │ │ │ ├── dockerfile.js │ │ │ │ │ └── index.html │ │ │ │ ├── dtd │ │ │ │ │ ├── dtd.js │ │ │ │ │ └── index.html │ │ │ │ ├── dylan │ │ │ │ │ ├── dylan.js │ │ │ │ │ ├── index.html │ │ │ │ │ └── test.js │ │ │ │ ├── ebnf │ │ │ │ │ ├── ebnf.js │ │ │ │ │ └── index.html │ │ │ │ ├── ecl │ │ │ │ │ ├── ecl.js │ │ │ │ │ └── index.html │ │ │ │ ├── eiffel │ │ │ │ │ ├── eiffel.js │ │ │ │ │ └── index.html │ │ │ │ ├── elm │ │ │ │ │ ├── elm.js │ │ │ │ │ └── index.html │ │ │ │ ├── erlang │ │ │ │ │ ├── erlang.js │ │ │ │ │ └── index.html │ │ │ │ ├── factor │ │ │ │ │ ├── factor.js │ │ │ │ │ └── index.html │ │ │ │ ├── fcl │ │ │ │ │ ├── fcl.js │ │ │ │ │ └── index.html │ │ │ │ ├── forth │ │ │ │ │ ├── forth.js │ │ │ │ │ └── index.html │ │ │ │ ├── fortran │ │ │ │ │ ├── fortran.js │ │ │ │ │ └── index.html │ │ │ │ ├── gas │ │ │ │ │ ├── gas.js │ │ │ │ │ └── index.html │ │ │ │ ├── gfm │ │ │ │ │ ├── gfm.js │ │ │ │ │ ├── index.html │ │ │ │ │ └── test.js │ │ │ │ ├── gherkin │ │ │ │ │ ├── gherkin.js │ │ │ │ │ └── index.html │ │ │ │ ├── go │ │ │ │ │ ├── go.js │ │ │ │ │ └── index.html │ │ │ │ ├── groovy │ │ │ │ │ ├── groovy.js │ │ │ │ │ └── index.html │ │ │ │ ├── haml │ │ │ │ │ ├── haml.js │ │ │ │ │ ├── index.html │ │ │ │ │ └── test.js │ │ │ │ ├── handlebars │ │ │ │ │ ├── handlebars.js │ │ │ │ │ └── index.html │ │ │ │ ├── haskell-literate │ │ │ │ │ ├── haskell-literate.js │ │ │ │ │ └── index.html │ │ │ │ ├── haskell │ │ │ │ │ ├── haskell.js │ │ │ │ │ └── index.html │ │ │ │ ├── haxe │ │ │ │ │ ├── haxe.js │ │ │ │ │ └── index.html │ │ │ │ ├── htmlembedded │ │ │ │ │ ├── htmlembedded.js │ │ │ │ │ └── index.html │ │ │ │ ├── htmlmixed │ │ │ │ │ ├── htmlmixed.js │ │ │ │ │ └── index.html │ │ │ │ ├── http │ │ │ │ │ ├── http.js │ │ │ │ │ └── index.html │ │ │ │ ├── idl │ │ │ │ │ ├── idl.js │ │ │ │ │ └── index.html │ │ │ │ ├── index.html │ │ │ │ ├── javascript │ │ │ │ │ ├── index.html │ │ │ │ │ ├── javascript.js │ │ │ │ │ ├── json-ld.html │ │ │ │ │ ├── test.js │ │ │ │ │ └── typescript.html │ │ │ │ ├── jinja2 │ │ │ │ │ ├── index.html │ │ │ │ │ └── jinja2.js │ │ │ │ ├── jsx │ │ │ │ │ ├── index.html │ │ │ │ │ ├── jsx.js │ │ │ │ │ └── test.js │ │ │ │ ├── julia │ │ │ │ │ ├── index.html │ │ │ │ │ └── julia.js │ │ │ │ ├── livescript │ │ │ │ │ ├── index.html │ │ │ │ │ └── livescript.js │ │ │ │ ├── lua │ │ │ │ │ ├── index.html │ │ │ │ │ └── lua.js │ │ │ │ ├── markdown │ │ │ │ │ ├── index.html │ │ │ │ │ ├── markdown.js │ │ │ │ │ └── test.js │ │ │ │ ├── mathematica │ │ │ │ │ ├── index.html │ │ │ │ │ └── mathematica.js │ │ │ │ ├── mbox │ │ │ │ │ ├── index.html │ │ │ │ │ └── mbox.js │ │ │ │ ├── meta.js │ │ │ │ ├── mirc │ │ │ │ │ ├── index.html │ │ │ │ │ └── mirc.js │ │ │ │ ├── mllike │ │ │ │ │ ├── index.html │ │ │ │ │ └── mllike.js │ │ │ │ ├── modelica │ │ │ │ │ ├── index.html │ │ │ │ │ └── modelica.js │ │ │ │ ├── mscgen │ │ │ │ │ ├── index.html │ │ │ │ │ ├── mscgen.js │ │ │ │ │ ├── mscgen_test.js │ │ │ │ │ ├── msgenny_test.js │ │ │ │ │ └── xu_test.js │ │ │ │ ├── mumps │ │ │ │ │ ├── index.html │ │ │ │ │ └── mumps.js │ │ │ │ ├── nginx │ │ │ │ │ ├── index.html │ │ │ │ │ └── nginx.js │ │ │ │ ├── nsis │ │ │ │ │ ├── index.html │ │ │ │ │ └── nsis.js │ │ │ │ ├── ntriples │ │ │ │ │ ├── index.html │ │ │ │ │ └── ntriples.js │ │ │ │ ├── octave │ │ │ │ │ ├── index.html │ │ │ │ │ └── octave.js │ │ │ │ ├── oz │ │ │ │ │ ├── index.html │ │ │ │ │ └── oz.js │ │ │ │ ├── pascal │ │ │ │ │ ├── index.html │ │ │ │ │ └── pascal.js │ │ │ │ ├── pegjs │ │ │ │ │ ├── index.html │ │ │ │ │ └── pegjs.js │ │ │ │ ├── perl │ │ │ │ │ ├── index.html │ │ │ │ │ └── perl.js │ │ │ │ ├── php │ │ │ │ │ ├── index.html │ │ │ │ │ ├── php.js │ │ │ │ │ └── test.js │ │ │ │ ├── pig │ │ │ │ │ ├── index.html │ │ │ │ │ └── pig.js │ │ │ │ ├── powershell │ │ │ │ │ ├── index.html │ │ │ │ │ ├── powershell.js │ │ │ │ │ └── test.js │ │ │ │ ├── properties │ │ │ │ │ ├── index.html │ │ │ │ │ └── properties.js │ │ │ │ ├── protobuf │ │ │ │ │ ├── index.html │ │ │ │ │ └── protobuf.js │ │ │ │ ├── pug │ │ │ │ │ ├── index.html │ │ │ │ │ └── pug.js │ │ │ │ ├── puppet │ │ │ │ │ ├── index.html │ │ │ │ │ └── puppet.js │ │ │ │ ├── python │ │ │ │ │ ├── index.html │ │ │ │ │ ├── python.js │ │ │ │ │ └── test.js │ │ │ │ ├── q │ │ │ │ │ ├── index.html │ │ │ │ │ └── q.js │ │ │ │ ├── r │ │ │ │ │ ├── index.html │ │ │ │ │ └── r.js │ │ │ │ ├── rpm │ │ │ │ │ ├── changes │ │ │ │ │ │ └── index.html │ │ │ │ │ ├── index.html │ │ │ │ │ └── rpm.js │ │ │ │ ├── rst │ │ │ │ │ ├── index.html │ │ │ │ │ └── rst.js │ │ │ │ ├── ruby │ │ │ │ │ ├── index.html │ │ │ │ │ ├── ruby.js │ │ │ │ │ └── test.js │ │ │ │ ├── rust │ │ │ │ │ ├── index.html │ │ │ │ │ ├── rust.js │ │ │ │ │ └── test.js │ │ │ │ ├── sas │ │ │ │ │ ├── index.html │ │ │ │ │ └── sas.js │ │ │ │ ├── sass │ │ │ │ │ ├── index.html │ │ │ │ │ ├── sass.js │ │ │ │ │ └── test.js │ │ │ │ ├── scheme │ │ │ │ │ ├── index.html │ │ │ │ │ └── scheme.js │ │ │ │ ├── shell │ │ │ │ │ ├── index.html │ │ │ │ │ ├── shell.js │ │ │ │ │ └── test.js │ │ │ │ ├── sieve │ │ │ │ │ ├── index.html │ │ │ │ │ └── sieve.js │ │ │ │ ├── slim │ │ │ │ │ ├── index.html │ │ │ │ │ ├── slim.js │ │ │ │ │ └── test.js │ │ │ │ ├── smalltalk │ │ │ │ │ ├── index.html │ │ │ │ │ └── smalltalk.js │ │ │ │ ├── smarty │ │ │ │ │ ├── index.html │ │ │ │ │ └── smarty.js │ │ │ │ ├── solr │ │ │ │ │ ├── index.html │ │ │ │ │ └── solr.js │ │ │ │ ├── soy │ │ │ │ │ ├── index.html │ │ │ │ │ ├── soy.js │ │ │ │ │ └── test.js │ │ │ │ ├── sparql │ │ │ │ │ ├── index.html │ │ │ │ │ └── sparql.js │ │ │ │ ├── spreadsheet │ │ │ │ │ ├── index.html │ │ │ │ │ └── spreadsheet.js │ │ │ │ ├── sql │ │ │ │ │ ├── index.html │ │ │ │ │ └── sql.js │ │ │ │ ├── stex │ │ │ │ │ ├── index.html │ │ │ │ │ ├── stex.js │ │ │ │ │ └── test.js │ │ │ │ ├── stylus │ │ │ │ │ ├── index.html │ │ │ │ │ └── stylus.js │ │ │ │ ├── swift │ │ │ │ │ ├── index.html │ │ │ │ │ ├── swift.js │ │ │ │ │ └── test.js │ │ │ │ ├── tcl │ │ │ │ │ ├── index.html │ │ │ │ │ └── tcl.js │ │ │ │ ├── textile │ │ │ │ │ ├── index.html │ │ │ │ │ ├── test.js │ │ │ │ │ └── textile.js │ │ │ │ ├── tiddlywiki │ │ │ │ │ ├── index.html │ │ │ │ │ ├── tiddlywiki.css │ │ │ │ │ └── tiddlywiki.js │ │ │ │ ├── tiki │ │ │ │ │ ├── index.html │ │ │ │ │ ├── tiki.css │ │ │ │ │ └── tiki.js │ │ │ │ ├── toml │ │ │ │ │ ├── index.html │ │ │ │ │ └── toml.js │ │ │ │ ├── tornado │ │ │ │ │ ├── index.html │ │ │ │ │ └── tornado.js │ │ │ │ ├── troff │ │ │ │ │ ├── index.html │ │ │ │ │ └── troff.js │ │ │ │ ├── ttcn-cfg │ │ │ │ │ ├── index.html │ │ │ │ │ └── ttcn-cfg.js │ │ │ │ ├── ttcn │ │ │ │ │ ├── index.html │ │ │ │ │ └── ttcn.js │ │ │ │ ├── turtle │ │ │ │ │ ├── index.html │ │ │ │ │ └── turtle.js │ │ │ │ ├── twig │ │ │ │ │ ├── index.html │ │ │ │ │ └── twig.js │ │ │ │ ├── vb │ │ │ │ │ ├── index.html │ │ │ │ │ └── vb.js │ │ │ │ ├── vbscript │ │ │ │ │ ├── index.html │ │ │ │ │ └── vbscript.js │ │ │ │ ├── velocity │ │ │ │ │ ├── index.html │ │ │ │ │ └── velocity.js │ │ │ │ ├── verilog │ │ │ │ │ ├── index.html │ │ │ │ │ ├── test.js │ │ │ │ │ └── verilog.js │ │ │ │ ├── vhdl │ │ │ │ │ ├── index.html │ │ │ │ │ └── vhdl.js │ │ │ │ ├── vue │ │ │ │ │ ├── index.html │ │ │ │ │ └── vue.js │ │ │ │ ├── webidl │ │ │ │ │ ├── index.html │ │ │ │ │ └── webidl.js │ │ │ │ ├── xml │ │ │ │ │ ├── index.html │ │ │ │ │ ├── test.js │ │ │ │ │ └── xml.js │ │ │ │ ├── xquery │ │ │ │ │ ├── index.html │ │ │ │ │ ├── test.js │ │ │ │ │ └── xquery.js │ │ │ │ ├── yacas │ │ │ │ │ ├── index.html │ │ │ │ │ └── yacas.js │ │ │ │ ├── yaml-frontmatter │ │ │ │ │ ├── index.html │ │ │ │ │ └── yaml-frontmatter.js │ │ │ │ ├── yaml │ │ │ │ │ ├── index.html │ │ │ │ │ └── yaml.js │ │ │ │ └── z80 │ │ │ │ │ ├── index.html │ │ │ │ │ └── z80.js │ │ │ ├── package.json │ │ │ ├── rollup.config.js │ │ │ ├── src │ │ │ │ ├── codemirror.js │ │ │ │ ├── display │ │ │ │ │ ├── Display.js │ │ │ │ │ ├── focus.js │ │ │ │ │ ├── gutters.js │ │ │ │ │ ├── highlight_worker.js │ │ │ │ │ ├── line_numbers.js │ │ │ │ │ ├── mode_state.js │ │ │ │ │ ├── operations.js │ │ │ │ │ ├── scroll_events.js │ │ │ │ │ ├── scrollbars.js │ │ │ │ │ ├── scrolling.js │ │ │ │ │ ├── selection.js │ │ │ │ │ ├── update_display.js │ │ │ │ │ ├── update_line.js │ │ │ │ │ ├── update_lines.js │ │ │ │ │ └── view_tracking.js │ │ │ │ ├── edit │ │ │ │ │ ├── CodeMirror.js │ │ │ │ │ ├── commands.js │ │ │ │ │ ├── deleteNearSelection.js │ │ │ │ │ ├── drop_events.js │ │ │ │ │ ├── fromTextArea.js │ │ │ │ │ ├── global_events.js │ │ │ │ │ ├── key_events.js │ │ │ │ │ ├── legacy.js │ │ │ │ │ ├── main.js │ │ │ │ │ ├── methods.js │ │ │ │ │ ├── mouse_events.js │ │ │ │ │ ├── options.js │ │ │ │ │ └── utils.js │ │ │ │ ├── input │ │ │ │ │ ├── ContentEditableInput.js │ │ │ │ │ ├── TextareaInput.js │ │ │ │ │ ├── indent.js │ │ │ │ │ ├── input.js │ │ │ │ │ ├── keymap.js │ │ │ │ │ ├── keynames.js │ │ │ │ │ └── movement.js │ │ │ │ ├── line │ │ │ │ │ ├── highlight.js │ │ │ │ │ ├── line_data.js │ │ │ │ │ ├── pos.js │ │ │ │ │ ├── saw_special_spans.js │ │ │ │ │ ├── spans.js │ │ │ │ │ └── utils_line.js │ │ │ │ ├── measurement │ │ │ │ │ ├── position_measurement.js │ │ │ │ │ └── widgets.js │ │ │ │ ├── model │ │ │ │ │ ├── Doc.js │ │ │ │ │ ├── change_measurement.js │ │ │ │ │ ├── changes.js │ │ │ │ │ ├── chunk.js │ │ │ │ │ ├── document_data.js │ │ │ │ │ ├── history.js │ │ │ │ │ ├── line_widget.js │ │ │ │ │ ├── mark_text.js │ │ │ │ │ ├── selection.js │ │ │ │ │ └── selection_updates.js │ │ │ │ ├── modes.js │ │ │ │ └── util │ │ │ │ │ ├── StringStream.js │ │ │ │ │ ├── bidi.js │ │ │ │ │ ├── browser.js │ │ │ │ │ ├── dom.js │ │ │ │ │ ├── event.js │ │ │ │ │ ├── feature_detection.js │ │ │ │ │ ├── misc.js │ │ │ │ │ └── operation_group.js │ │ │ ├── test │ │ │ │ ├── comment_test.js │ │ │ │ ├── contenteditable_test.js │ │ │ │ ├── doc_test.js │ │ │ │ ├── driver.js │ │ │ │ ├── emacs_test.js │ │ │ │ ├── index.html │ │ │ │ ├── lint.js │ │ │ │ ├── mode_test.css │ │ │ │ ├── mode_test.js │ │ │ │ ├── multi_test.js │ │ │ │ ├── phantom_driver.js │ │ │ │ ├── run.js │ │ │ │ ├── scroll_test.js │ │ │ │ ├── search_test.js │ │ │ │ ├── sql-hint-test.js │ │ │ │ ├── sublime_test.js │ │ │ │ ├── test.js │ │ │ │ └── vim_test.js │ │ │ └── theme │ │ │ │ ├── 3024-day.css │ │ │ │ ├── 3024-night.css │ │ │ │ ├── abcdef.css │ │ │ │ ├── ambiance-mobile.css │ │ │ │ ├── ambiance.css │ │ │ │ ├── base16-dark.css │ │ │ │ ├── base16-light.css │ │ │ │ ├── bespin.css │ │ │ │ ├── blackboard.css │ │ │ │ ├── cobalt.css │ │ │ │ ├── colorforth.css │ │ │ │ ├── dracula.css │ │ │ │ ├── duotone-dark.css │ │ │ │ ├── duotone-light.css │ │ │ │ ├── eclipse.css │ │ │ │ ├── elegant.css │ │ │ │ ├── erlang-dark.css │ │ │ │ ├── hopscotch.css │ │ │ │ ├── icecoder.css │ │ │ │ ├── isotope.css │ │ │ │ ├── lesser-dark.css │ │ │ │ ├── liquibyte.css │ │ │ │ ├── material.css │ │ │ │ ├── mbo.css │ │ │ │ ├── mdn-like.css │ │ │ │ ├── midnight.css │ │ │ │ ├── monokai.css │ │ │ │ ├── neat.css │ │ │ │ ├── neo.css │ │ │ │ ├── night.css │ │ │ │ ├── panda-syntax.css │ │ │ │ ├── paraiso-dark.css │ │ │ │ ├── paraiso-light.css │ │ │ │ ├── pastel-on-dark.css │ │ │ │ ├── railscasts.css │ │ │ │ ├── rubyblue.css │ │ │ │ ├── seti.css │ │ │ │ ├── solarized.css │ │ │ │ ├── the-matrix.css │ │ │ │ ├── tomorrow-night-bright.css │ │ │ │ ├── tomorrow-night-eighties.css │ │ │ │ ├── ttcn.css │ │ │ │ ├── twilight.css │ │ │ │ ├── vibrant-ink.css │ │ │ │ ├── xq-dark.css │ │ │ │ ├── xq-light.css │ │ │ │ ├── yeti.css │ │ │ │ └── zenburn.css │ │ ├── jasmine-2.8.0 │ │ │ ├── boot.js │ │ │ ├── console.js │ │ │ ├── jasmine-html.js │ │ │ ├── jasmine.css │ │ │ ├── jasmine.js │ │ │ └── jasmine_favicon.png │ │ └── jszip.min.js │ └── mappings │ │ ├── defs.svg │ │ └── one-to-one.html ├── gui-tests.conf.js ├── mocks │ ├── dampObjectGraph.js │ ├── dampSymbol.js │ ├── dryDocument.js │ ├── intro.js.in │ ├── logger.js │ ├── membrane.js │ ├── outro.js.in │ ├── return.js │ ├── static.js │ └── wetDocument.js ├── source │ ├── DimensionalMap.js │ ├── DistortionsListener.js │ ├── Membrane.js │ ├── ModifyRulesAPI.js │ ├── ObjectGraphHandler.js │ ├── ProxyHandlers │ │ ├── Base.js │ │ ├── Forwarding.js │ │ └── intro.js │ ├── ProxyMapping.js │ ├── ProxyNotify.js │ ├── containers │ │ └── README.txt │ ├── dogfood │ │ ├── build-membrane.js │ │ ├── intro.js.in │ │ └── outro.js.in │ ├── membrane-distortions-gui.json │ ├── moduleUtilities.js │ └── sharedUtilities.js ├── spec │ ├── DimensionalMap.js │ ├── concepts.js │ ├── containers │ │ ├── Array │ │ │ ├── default.js │ │ │ └── tc39.js │ │ ├── Map │ │ │ └── default.js │ │ ├── Set │ │ │ └── default.js │ │ ├── WeakMap │ │ │ └── default.js │ │ └── WeakSet │ │ │ └── default.js │ ├── ecma │ │ ├── Promise.js │ │ ├── freeze-seal.js │ │ ├── generators.js │ │ └── iterators.js │ ├── features │ │ ├── DistortionsListener.js │ │ ├── functionListeners.js │ │ ├── manualBind.js │ │ ├── passThroughFilters.js │ │ ├── primordials.js │ │ ├── proxyListeners.js │ │ └── replaceProxies.js │ ├── internal │ │ └── lazyGetters.js │ ├── non-membrane │ │ ├── Promise.js │ │ ├── argumentTruncation.js │ │ ├── containers │ │ │ └── array-splice.js │ │ ├── defineProperty.js │ │ ├── deleteProperty.js │ │ ├── filterOwnKeys.js │ │ ├── freeze-seal.js │ │ ├── generators.js │ │ ├── instanceof.js │ │ ├── iterators.js │ │ ├── lazyGetter.js │ │ ├── logger.js │ │ ├── prototypes.js │ │ ├── receiver.js │ │ └── sealed-cyclic.js │ ├── overrides │ │ └── empty.js │ ├── privateAPI.js │ ├── properties │ │ ├── filterOwnKeys.js │ │ ├── precedence.js │ │ ├── requireLocalDelete.js │ │ ├── storeUnknownAsLocal.js │ │ ├── truncateArgList.js │ │ └── whitelist.js │ ├── proxyHandlers │ │ └── Forwarding.js │ ├── security │ │ ├── ObjectGraphHandler.js │ │ └── exports.js │ ├── support │ │ └── jasmine.json │ └── useCases │ │ ├── disableTraps.js │ │ ├── filterOwnKeys.js │ │ ├── requireLocalDelete.js │ │ ├── sampleUseCase.js │ │ ├── storeUnknownAsLocal.js │ │ └── whitelist.js └── wrappers │ ├── browser │ ├── assert.js │ ├── debug-browser.xhtml │ ├── fireJasmine.js │ ├── handlers-intro.js.in │ ├── handlers-outro.js.in │ ├── membrane-intro.js.in │ ├── membrane-outro.js.in │ └── test-browser.xhtml │ ├── node │ ├── export-DimensionalMap.js │ ├── export-membrane.js │ ├── export-mocks.js │ ├── export-proxyHandlers.js │ ├── export-utilities.js │ ├── require-assert.js │ ├── require-membrane.js │ ├── require-proxyHandlers.js │ └── require-utilities.js │ └── useStrict.js ├── old-build ├── .gitignore ├── source │ ├── main.mjs │ ├── main.mts │ ├── mainWithBuild.mjs │ ├── mainWithBuild.mts │ ├── targets.mjs │ ├── targets.mts │ └── utilities │ │ ├── BuildPromise.mjs │ │ ├── BuildPromise.mts │ │ ├── DefaultMap.mjs │ │ ├── DefaultMap.mts │ │ ├── InvokeTSC.mjs │ │ ├── InvokeTSC.mts │ │ ├── PromiseTypes.mjs │ │ ├── PromiseTypes.mts │ │ ├── readDirsDeep.mjs │ │ ├── readDirsDeep.mts │ │ ├── runModule.mjs │ │ ├── runModule.mts │ │ ├── tempDirWithCleanup.mjs │ │ └── tempDirWithCleanup.mts └── spec │ └── utilities │ ├── BuildPromise.mjs │ ├── BuildPromise.mts │ ├── PromiseTypes.mjs │ └── PromiseTypes.mts ├── package-lock.json ├── package.json └── projects ├── build-utilities ├── .gitignore ├── Gulpfile.js ├── build │ ├── clean.js │ ├── internal │ │ └── constants.js │ ├── invokeTSC.js │ └── runTests.js ├── dist │ ├── exports │ │ ├── index.d.ts │ │ └── index.js │ └── source │ │ ├── InvokeTSC.d.ts │ │ ├── InvokeTSC.js │ │ ├── PromiseTypes.d.ts │ │ ├── PromiseTypes.js │ │ ├── assertRepoIsClean.d.ts │ │ ├── assertRepoIsClean.js │ │ ├── childProcess.d.ts │ │ ├── childProcess.js │ │ ├── cleanTSC_output.d.ts │ │ ├── cleanTSC_output.js │ │ ├── constants.d.ts │ │ ├── constants.js │ │ ├── hash-all-files.d.ts │ │ ├── hash-all-files.js │ │ ├── overwriteFileIfDifferent.d.ts │ │ ├── overwriteFileIfDifferent.js │ │ ├── readDirsDeep.d.ts │ │ ├── readDirsDeep.js │ │ ├── recursiveGulp.d.ts │ │ ├── recursiveGulp.js │ │ ├── runEslint.d.ts │ │ ├── runEslint.js │ │ ├── runJasmine.d.ts │ │ ├── runJasmine.js │ │ ├── runPrettify.d.ts │ │ ├── runPrettify.js │ │ ├── synchronizeDirectories.d.ts │ │ ├── synchronizeDirectories.js │ │ ├── tempDirWithCleanup.d.ts │ │ └── tempDirWithCleanup.js ├── exports │ └── index.ts ├── fixtures │ ├── copyBase │ │ ├── dest │ │ │ ├── five.ts │ │ │ ├── four.ts │ │ │ ├── one.ts │ │ │ └── zero.ts │ │ └── src │ │ │ ├── four.ts │ │ │ ├── one.ts │ │ │ ├── two.ts │ │ │ └── zero.ts │ └── synchronizeDirsBase │ │ ├── dest │ │ ├── commonFiles │ │ │ ├── fileToDelete.ts │ │ │ ├── fileToModify.ts │ │ │ └── sharedFile.ts │ │ └── dirsToDelete │ │ │ ├── leftoverFile.ts │ │ │ ├── other │ │ │ └── baz.ts │ │ │ └── outerJunk │ │ │ └── innerJunk │ │ │ ├── bar.ts │ │ │ └── foo.ts │ │ └── src │ │ ├── commonFiles │ │ ├── fileToCopy.ts │ │ ├── fileToModify.ts │ │ └── sharedFile.ts │ │ └── dirsToCopy │ │ ├── addedFile.ts │ │ ├── other │ │ └── three.ts │ │ └── outerWaste │ │ └── innerWaste │ │ ├── one.ts │ │ └── two.ts ├── package.json ├── source │ ├── InvokeTSC.ts │ ├── PromiseTypes.ts │ ├── assertRepoIsClean.ts │ ├── childProcess.ts │ ├── cleanTSC_output.ts │ ├── constants.ts │ ├── hash-all-files.ts │ ├── overwriteFileIfDifferent.ts │ ├── readDirsDeep.ts │ ├── recursiveGulp.ts │ ├── runEslint.ts │ ├── runJasmine.ts │ ├── runPrettify.ts │ ├── synchronizeDirectories.ts │ └── tempDirWithCleanup.ts ├── spec │ ├── constants.ts │ ├── overwriteFileIfDifferent.ts │ ├── support │ │ ├── createFixtureTempDir.ts │ │ ├── fileTimestamps.ts │ │ └── jasmine.json │ └── synchronizeDirectories.ts └── tsconfig.json ├── mixin-decorators ├── .gitignore ├── Gulpfile.ts ├── LICENSE ├── README.md ├── dist │ └── source │ │ ├── MultiMixinBuilder.d.ts │ │ ├── MultiMixinBuilder.js │ │ ├── exports.d.ts │ │ └── types │ │ ├── ClassDecoratorFunction.d.ts │ │ ├── MixinClass.d.ts │ │ ├── MultiMixinClass.d.ts │ │ ├── StaticAndInstance.d.ts │ │ └── SubclassDecorator.d.ts ├── eslint.config.mjs ├── fixtures │ ├── MixinBase.ts │ ├── MultiMixinBuilder.ts │ ├── NumberStringClass.ts │ └── types │ │ └── NumberStringType.d.ts ├── gulp-utilities │ ├── .gitignore │ └── assertRepoIsClean.js ├── package.json ├── source │ ├── MultiMixinBuilder.ts │ ├── exports.d.ts │ └── types │ │ ├── ClassDecoratorFunction.d.ts │ │ ├── MixinClass.d.ts │ │ ├── MultiMixinClass.d.ts │ │ ├── StaticAndInstance.d.ts │ │ └── SubclassDecorator.d.ts ├── spec │ ├── MultiMixinBuilder.ts │ ├── _types │ │ ├── ClassDecoratorFunction.ts │ │ ├── MixinClass.ts │ │ ├── MultiMixinClass.ts │ │ ├── StaticAndInstance.ts │ │ └── SubclassDecorator.ts │ ├── raw-decorators.ts │ └── support │ │ ├── DefaultMap.ts │ │ ├── RequiredInitializers.ts │ │ ├── RightExtendsLeft.ts │ │ └── jasmine.json ├── tsconfig-gulp.json └── tsconfig.json ├── search-references ├── .gitignore ├── Gulpfile.ts ├── README.md ├── THEORY.md ├── eslint.config.mjs ├── fixtures │ ├── OneToOneStrongMap │ │ ├── OneToOneStrongMap.ts │ │ └── WeakStrongMap.ts │ ├── engine262-demos │ │ ├── asyncPlusOne.ts │ │ ├── counter.ts │ │ ├── echo.ts │ │ └── throwOnReport.ts │ └── types │ │ ├── asyncPlusOne.d.ts │ │ ├── echo.d.ts │ │ └── print.d.ts ├── gulp-utilities │ ├── .gitignore │ └── assertRepoIsClean.js ├── images │ └── theory │ │ ├── basicNodesAndEdges.svg │ │ ├── family.svg │ │ ├── value-to-weakMap.svg │ │ └── weakMap-to-value.svg ├── package.json ├── reference-spec │ ├── OneToOneStrongMap.ts │ ├── classes │ │ ├── classAccessors.ts │ │ ├── classPrivateAccessors.ts │ │ ├── classPrivateFields.ts │ │ ├── classStaticAccessors.ts │ │ ├── classStaticFields.ts │ │ ├── classStaticPrivateAccessors.ts │ │ ├── classStaticPrivateFields.ts │ │ ├── classesExtendingBuiltins.ts │ │ ├── classesExtendingOtherClasses.ts │ │ └── classesWithoutExtensions.ts │ ├── collections │ │ ├── mapKeyIsTarget.ts │ │ ├── mapValueIsTarget.ts │ │ ├── setHoldsTarget.ts │ │ ├── weakMapKeyIsTarget.ts │ │ ├── weakMapValueIsTarget.ts │ │ └── weakSetHoldsTarget.ts │ ├── functions │ │ ├── arrow.ts │ │ ├── arrowReturnValue.ts │ │ ├── asyncArrow.ts │ │ ├── asyncClosures.ts │ │ ├── bound.ts │ │ ├── closures.ts │ │ └── returnValue.ts │ ├── iterators │ │ ├── array.ts │ │ ├── helpers.ts │ │ ├── map.ts │ │ ├── regExpString.ts │ │ ├── set.ts │ │ └── user-defined.ts │ ├── module-imports │ │ ├── exportAddProperty.ts │ │ ├── exportWrapObject.ts │ │ └── importWrapObject.ts │ ├── simple │ │ ├── asyncGenerators.ts │ │ ├── finalizationRegistry.ts │ │ ├── generators.ts │ │ ├── promises.ts │ │ ├── proxies.ts │ │ ├── symbolKeyHoldsTarget.ts │ │ ├── targetInHeldValuesArray.ts │ │ ├── targetIsElementOfHeldArray.ts │ │ ├── targetIsElementOfHeldObject.ts │ │ ├── targetIsSymbolKeyOfHeldObject.ts │ │ ├── targetUnreachable.ts │ │ └── weakRefToTarget.ts │ └── validateArguments │ │ ├── duplicateSearchKeys.ts │ │ ├── heldValuesIncludesAPrimitive.ts │ │ ├── heldValuesIsNotAnArray.ts │ │ ├── noArguments.ts │ │ ├── reportKeyIsNotAString.ts │ │ ├── reportSameKeyTwice.ts │ │ ├── reportValueIsNotAPrimitive.ts │ │ ├── resultsKeyNotAString.ts │ │ ├── strongRefsIsNotABoolean.ts │ │ ├── targetValueMustNotBeNull.ts │ │ └── targetValueNotAnObject.ts ├── source │ ├── core-host-exports.ts │ ├── dagre-tools │ │ ├── README.md │ │ ├── buildDummyGraph.ts.txt │ │ ├── buildGraph.ts.txt │ │ └── jsdom+d3.ts.txt │ ├── engine262-tools │ │ ├── built-ins │ │ │ ├── defineBuiltInFunction.ts │ │ │ ├── defineSearchReferences.ts │ │ │ └── engine262-demos │ │ │ │ ├── defineAsyncPlusOneFunction.ts │ │ │ │ ├── defineEchoFunctions.ts │ │ │ │ ├── definePrintFunction.ts │ │ │ │ └── defineReportFunction.ts │ │ ├── host-to-guest │ │ │ ├── EnsureTypeOrThrow.ts │ │ │ ├── GuestEngine.ts │ │ │ ├── GuestPromiseForHostPromise.ts │ │ │ ├── HostPromiseForGuestPromise.ts │ │ │ ├── RealmHostDefined.ts │ │ │ ├── convertArrayValueToArrayOfValues.ts │ │ │ ├── runInRealm.ts │ │ │ └── simpleEvaluator.ts │ │ ├── search │ │ │ ├── GraphBuilder.ts │ │ │ ├── GuestObjectGraphImpl.ts │ │ │ ├── HostValueSubstitution.ts │ │ │ ├── InstanceGetterTracking.ts │ │ │ ├── ObjectMetadata.ts │ │ │ └── SearchDriver.ts │ │ └── types │ │ │ ├── GuestObjectGraphIfc.d.ts │ │ │ ├── InstanceGetterDefinitions.d.ts │ │ │ └── Virtualization262.d.ts │ ├── graph-analysis │ │ ├── JointOwnershipTracker.ts │ │ ├── ObjectGraphImpl.ts │ │ ├── StrongOwnershipSetsTracker.ts │ │ ├── createValueDescription.ts │ │ └── types │ │ │ ├── CloneableGraphIfc.d.ts │ │ │ ├── JointOwnersResolver.d.ts │ │ │ ├── ObjectGraphIfc.d.ts │ │ │ └── SearchReferencesIfc.d.ts │ ├── public │ │ ├── core-host │ │ │ ├── LoggingConfiguration.ts │ │ │ ├── runSearchesInGuestEngine.ts │ │ │ └── types │ │ │ │ └── SearchConfiguration.d.ts │ │ ├── guest │ │ │ ├── searchReferences.d.ts │ │ │ └── searchReferences.js │ │ └── host │ │ │ └── runSearchesInGuestEngine.ts │ ├── rollup.config.js │ ├── types │ │ ├── CallableMethodsOfArray.d.ts │ │ ├── GraphObjectMetadata.d.ts │ │ ├── GraphRelationshipMetadata.d.ts │ │ ├── PrefixedNumber.d.ts │ │ └── ValueDescription.d.ts │ └── utilities │ │ ├── PromiseTypes.ts │ │ ├── StringCounter.ts │ │ ├── constants.ts │ │ └── isObjectOrSymbol.ts ├── spec │ ├── engine262-tools │ │ ├── built-ins │ │ │ └── engine262-demos │ │ │ │ ├── asyncPlusOne.ts │ │ │ │ └── echoFunctions.ts │ │ └── host-to-guest │ │ │ └── directInvoke.ts │ ├── graph-analysis │ │ ├── JointOwnershipTracker.ts │ │ ├── ObjectGraphImpl.ts │ │ ├── StrongOwnershipSetsTracker.ts │ │ └── createValueDescription.ts │ ├── runSearches │ │ ├── OneToOneStrongMap.ts │ │ ├── iterators │ │ │ ├── array.ts │ │ │ ├── helpers.ts │ │ │ ├── map.ts │ │ │ ├── set.ts │ │ │ └── user-defined.ts │ │ ├── module-imports.ts │ │ ├── simple │ │ │ ├── FinalizationRegistry.ts │ │ │ ├── baseline.ts │ │ │ ├── classes.ts │ │ │ ├── functions.ts │ │ │ ├── generators.ts │ │ │ ├── mapsAndSets.ts │ │ │ ├── promises.ts │ │ │ ├── proxies.ts │ │ │ └── weak-references.ts │ │ └── validateArguments.ts │ ├── support │ │ ├── SpecGuestRealmInputs.ts │ │ ├── fillExpectedGraph.ts │ │ ├── generators.ts │ │ ├── getActualGraph.ts │ │ ├── jasmine.json │ │ ├── projectRoot.ts │ │ ├── reparse.ts │ │ └── runSearchesInGuestEngineInternal.ts │ └── utilities │ │ └── StringCounter.ts ├── tsconfig-gulp.json └── tsconfig.json ├── ts-morph-structures ├── .gitignore ├── Gulpfile.ts ├── LICENSE ├── README.md ├── clean.ts ├── dist │ ├── exports.d.ts │ └── exports.js ├── eslint.config.mjs ├── gulp-utilities │ ├── .gitignore │ ├── assertRepoIsClean.js │ └── cleanTSC_output.js ├── package.json ├── stage_0_references │ ├── Gulpfile.ts │ └── structures │ │ ├── DependencyTracker.ts │ │ ├── TypeWithDependencies.ts │ │ ├── docsReference.ts │ │ ├── driver.ts │ │ ├── projectDir.ts │ │ └── typeArrayFromNode.ts ├── stage_1_snapshot │ ├── DESIGN.md │ ├── Gulpfile.ts │ ├── README.md │ ├── eslint.config.mjs │ ├── fixtures │ │ ├── README.md │ │ ├── StringNumber.ts │ │ ├── ecma_references │ │ │ ├── NumberStringClass.ts │ │ │ ├── NumberStringWrapped.ts │ │ │ └── classDecorators.ts │ │ ├── grab-bag.ts │ │ └── stage_utilities │ │ │ ├── DefaultMap.ts │ │ │ ├── PromiseTypes.ts │ │ │ ├── PropertyKeySorter.ts │ │ │ ├── WeakRefSet.ts │ │ │ └── assert.ts │ ├── prototype-snapshot │ │ ├── array-utilities │ │ │ ├── ArrayNotImplementedCanary.ts │ │ │ └── ReadonlyArrayProxyHandler.ts │ │ ├── base │ │ │ ├── StatementClassesMap.ts │ │ │ ├── StructureBase.ts │ │ │ ├── StructuresClassesMap.ts │ │ │ ├── TypeAccessors.ts │ │ │ ├── TypePrinter.ts │ │ │ ├── TypeStructureClassesMap.ts │ │ │ ├── TypeStructureKind.ts │ │ │ ├── TypeStructureSet.ts │ │ │ ├── TypeStructuresBase.ts │ │ │ ├── callbackToTypeStructureRegistry.ts │ │ │ ├── replaceDescendantTypeStructures.ts │ │ │ └── utilities.ts │ │ ├── bootstrap │ │ │ ├── buildTypesForStructures.ts │ │ │ ├── convertTypeNode.ts │ │ │ ├── getTypeAugmentedStructure.ts │ │ │ └── structureToNodeMap.ts │ │ ├── decorators │ │ │ ├── AbstractableNode.ts │ │ │ ├── AmbientableNode.ts │ │ │ ├── AsyncableNode.ts │ │ │ ├── DecoratableNode.ts │ │ │ ├── ExclamationTokenableNode.ts │ │ │ ├── ExportableNode.ts │ │ │ ├── GeneratorableNode.ts │ │ │ ├── InitializerExpressionableNode.ts │ │ │ ├── JSDocableNode.ts │ │ │ ├── KindedStructure.ts │ │ │ ├── NameableNode.ts │ │ │ ├── NamedNode.ts │ │ │ ├── OverrideableNode.ts │ │ │ ├── ParameteredNode.ts │ │ │ ├── QuestionTokenableNode.ts │ │ │ ├── ReadonlyableNode.ts │ │ │ ├── ReturnTypedNode.ts │ │ │ ├── ScopedNode.ts │ │ │ ├── StatementedNode.ts │ │ │ ├── StaticableNode.ts │ │ │ ├── TypeElementMemberedNode.ts │ │ │ ├── TypeParameteredNode.ts │ │ │ └── TypedNode.ts │ │ ├── exports.ts │ │ ├── generated │ │ │ └── structureToSyntax.ts │ │ ├── internal-exports.ts │ │ ├── structures │ │ │ ├── CallSignatureDeclarationImpl.ts │ │ │ ├── ClassDeclarationImpl.ts │ │ │ ├── ConstructSignatureDeclarationImpl.ts │ │ │ ├── ConstructorDeclarationImpl.ts │ │ │ ├── ConstructorDeclarationOverloadImpl.ts │ │ │ ├── DecoratorImpl.ts │ │ │ ├── EnumDeclarationImpl.ts │ │ │ ├── EnumMemberImpl.ts │ │ │ ├── ExportAssignmentImpl.ts │ │ │ ├── ExportDeclarationImpl.ts │ │ │ ├── ExportSpecifierImpl.ts │ │ │ ├── FunctionDeclarationImpl.ts │ │ │ ├── FunctionDeclarationOverloadImpl.ts │ │ │ ├── GetAccessorDeclarationImpl.ts │ │ │ ├── ImportDeclarationImpl.ts │ │ │ ├── ImportSpecifierImpl.ts │ │ │ ├── IndexSignatureDeclarationImpl.ts │ │ │ ├── InterfaceDeclarationImpl.ts │ │ │ ├── JSDocImpl.ts │ │ │ ├── JSDocTagImpl.ts │ │ │ ├── MethodDeclarationImpl.ts │ │ │ ├── MethodDeclarationOverloadImpl.ts │ │ │ ├── MethodSignatureImpl.ts │ │ │ ├── ModuleDeclarationImpl.ts │ │ │ ├── ParameterDeclarationImpl.ts │ │ │ ├── PropertyDeclarationImpl.ts │ │ │ ├── PropertySignatureImpl.ts │ │ │ ├── SetAccessorDeclarationImpl.ts │ │ │ ├── SourceFileImpl.ts │ │ │ ├── TypeAliasDeclarationImpl.ts │ │ │ ├── TypeParameterDeclarationImpl.ts │ │ │ ├── VariableDeclarationImpl.ts │ │ │ └── VariableStatementImpl.ts │ │ ├── typeStructures │ │ │ ├── ArrayTypedStructureImpl.ts │ │ │ ├── ConditionalTypedStructureImpl.ts │ │ │ ├── FunctionTypedStructureImpl.ts │ │ │ ├── ImportTypedStructureImpl.ts │ │ │ ├── IndexedAccessTypedStructureImpl.ts │ │ │ ├── InferTypedStructureImpl.ts │ │ │ ├── IntersectionTypedStructureImpl.ts │ │ │ ├── LiteralTypedStructureImpl.ts │ │ │ ├── MappedTypeTypedStructureImpl.ts │ │ │ ├── MemberedObjectTypeStructureImpl.ts │ │ │ ├── ParameterTypedStructureImpl.ts │ │ │ ├── ParenthesesTypedStructureImpl.ts │ │ │ ├── PrefixOperatorsTypedStructureImpl.ts │ │ │ ├── QualifiedNameTypedStructureImpl.ts │ │ │ ├── StringTypedStructureImpl.ts │ │ │ ├── SymbolKeyTypedStructureImpl.ts │ │ │ ├── TemplateLiteralTypedStructureImpl.ts │ │ │ ├── TupleTypedStructureImpl.ts │ │ │ ├── TypeAndTypeStructureInterfaces.ts │ │ │ ├── TypeArgumentedTypedStructureImpl.ts │ │ │ ├── TypeStructures.ts │ │ │ ├── UnionTypedStructureImpl.ts │ │ │ └── WriterTypedStructureImpl.ts │ │ └── types │ │ │ ├── AppendableStructure.d.ts │ │ │ ├── ArrayWithoutIndices.d.ts │ │ │ ├── BooleanFlagsStructure.d.ts │ │ │ ├── CloneableStructure.d.ts │ │ │ ├── DataDescriptor.d.ts │ │ │ ├── ModifyWriterInTypes.ts │ │ │ ├── StructureImplUnions.d.ts │ │ │ ├── TypeNodeToTypeStructure.d.ts │ │ │ ├── ts-morph-native.d.ts │ │ │ └── ts-morph-typednodewriter.d.ts │ └── spec-snapshot │ │ ├── TypeStructure.ts │ │ ├── array-utilities │ │ ├── ArrayNotImplementedCanary.ts │ │ ├── ReadonlyArrayProxyHandler.ts │ │ └── integration.ts │ │ ├── base │ │ ├── TypeAccessors.ts │ │ ├── TypePrinter.ts │ │ ├── TypeStructureSet.ts │ │ └── replaceDescendantTypes.ts │ │ ├── bootstrap │ │ ├── buildTypesForStructures.ts │ │ ├── convertTypeNode.ts │ │ ├── getTypeAugmentedStructure.ts │ │ └── structureToNodeMap.ts │ │ ├── decorators │ │ ├── DecoratableNode.ts │ │ ├── JSDocableNode.ts │ │ ├── KindedStructure.ts │ │ ├── ParameteredNode.ts │ │ ├── ReturnTypedNode.ts │ │ ├── StatementedNode.ts │ │ ├── StructureBase.ts │ │ ├── TypeElementMemberedNode.ts │ │ ├── TypeParameteredNode.ts │ │ └── TypedNode.ts │ │ ├── integration.ts │ │ ├── structures │ │ ├── StatementStructures.ts │ │ └── toJSON.ts │ │ └── support │ │ └── jasmine.json ├── stage_2_generation │ ├── .gitignore │ ├── Gulpfile.ts │ ├── README.md │ ├── build │ │ ├── BuildClassesDriver.ts │ │ ├── StructureDictionaries.ts │ │ ├── constants.ts │ │ ├── dist.ts │ │ ├── hooks │ │ │ ├── addInterfaceFields.ts │ │ │ ├── addTypeStructures.ts │ │ │ ├── add_toJSON.ts │ │ │ ├── classProperties.ts │ │ │ ├── debugging.ts │ │ │ ├── decorator │ │ │ │ ├── createParts.ts │ │ │ │ └── save.ts │ │ │ ├── moveMembersToClass.ts │ │ │ ├── sortClassMembers.ts │ │ │ ├── sortInterfaceFields.ts │ │ │ └── structure │ │ │ │ ├── addConstructor.ts │ │ │ │ ├── addDeclarationFromSignature.ts │ │ │ │ ├── addStaticClone.ts │ │ │ │ ├── createParts.ts │ │ │ │ ├── defineKind.ts │ │ │ │ ├── removeUselessCopyFields.ts │ │ │ │ ├── save.ts │ │ │ │ └── specialCases.ts │ │ ├── publicAndInternalExports.ts │ │ ├── spec │ │ │ ├── fillDictionaries.ts │ │ │ ├── support │ │ │ │ └── jasmine.json │ │ │ └── utilities │ │ │ │ └── public │ │ │ │ ├── ClassFieldStatementsMap.ts │ │ │ │ ├── ClassMembersMap.ts │ │ │ │ ├── ExportManager.ts │ │ │ │ └── ImportManager.ts │ │ ├── structureMeta │ │ │ ├── DataClasses.ts │ │ │ ├── JSDocMap.ts │ │ │ └── fillDictionaries.ts │ │ ├── support.ts │ │ └── utilities │ │ │ ├── ConstantTypeStructures.ts │ │ │ ├── ExportManagerCommit.ts │ │ │ ├── StructureMixinWriter.ts │ │ │ ├── buildImplUnions.ts │ │ │ ├── defineCopyFieldsMethod.ts │ │ │ ├── defineDecoratorImports.ts │ │ │ ├── defineDecoratorWrapper.ts │ │ │ ├── defineFieldsType.ts │ │ │ ├── defineSatisfiesWriter.ts │ │ │ ├── pairedWrite.ts │ │ │ ├── public │ │ │ ├── ClassFieldStatementsMap.ts │ │ │ ├── ClassMembersMap.ts │ │ │ ├── ExportManager.ts │ │ │ ├── ImportManager.ts │ │ │ ├── OrderedMap.ts │ │ │ └── TypeMembersMap.ts │ │ │ ├── saveSourceFile.ts │ │ │ └── write_cloneArray.ts │ ├── coverage │ │ ├── reporter.ts │ │ └── tsdocs.ts │ ├── eslint.config.mjs │ └── tsc-excludes.json ├── stage_2_integration │ ├── .gitignore │ ├── Gulpfile.ts │ ├── README.md │ ├── build │ │ ├── docs │ │ │ ├── api-extractor.jsonc │ │ │ ├── decoratorsInDocModel.ts │ │ │ ├── runAPIDocumenter.ts │ │ │ ├── runAPIExtractor.ts │ │ │ ├── typeDeclarations.ts │ │ │ └── typings-tsconfig.json │ │ ├── rollup │ │ │ ├── bundle.ts │ │ │ └── rollup.config.js │ │ └── structureToSyntax.ts │ ├── eslint.config.mjs │ ├── pre-build │ │ ├── Gulpfile.ts │ │ ├── constants.ts │ │ └── copySnapshot.ts │ ├── source │ │ ├── array-utilities │ │ │ ├── ArrayNotImplementedCanary.ts │ │ │ └── ReadonlyArrayProxyHandler.ts │ │ ├── base │ │ │ ├── StructureBase.ts │ │ │ ├── StructureClassesMap.ts │ │ │ ├── TypeAccessors.ts │ │ │ ├── TypeStructureClassesMap.ts │ │ │ ├── TypeStructureKind.ts │ │ │ ├── TypeStructureSet.ts │ │ │ └── symbolKeys.ts │ │ ├── bootstrap │ │ │ ├── adjustForOverloads.ts │ │ │ ├── buildTypesForStructures.ts │ │ │ ├── convertTypeNode.ts │ │ │ ├── getTypeAugmentedStructure.ts │ │ │ ├── parseLiteralType.ts │ │ │ ├── structureToNodeMap.ts │ │ │ ├── typeNodeConsoles.ts │ │ │ └── types │ │ │ │ └── conversions.d.ts │ │ ├── structures │ │ │ └── type │ │ │ │ ├── ArrayTypeStructureImpl.ts │ │ │ │ ├── ConditionalTypeStructureImpl.ts │ │ │ │ ├── FunctionTypeStructureImpl.ts │ │ │ │ ├── ImportTypeStructureImpl.ts │ │ │ │ ├── IndexedAccessTypeStructureImpl.ts │ │ │ │ ├── InferTypeStructureImpl.ts │ │ │ │ ├── IntersectionTypeStructureImpl.ts │ │ │ │ ├── LiteralTypeStructureImpl.ts │ │ │ │ ├── MappedTypeStructureImpl.ts │ │ │ │ ├── MemberedObjectTypeStructureImpl.ts │ │ │ │ ├── NumberTypeStructureImpl.ts │ │ │ │ ├── ParameterTypeStructureImpl.ts │ │ │ │ ├── ParenthesesTypeStructureImpl.ts │ │ │ │ ├── PrefixOperatorsTypeStructureImpl.ts │ │ │ │ ├── QualifiedNameTypeStructureImpl.ts │ │ │ │ ├── StringTypeStructureImpl.ts │ │ │ │ ├── TemplateLiteralTypeStructureImpl.ts │ │ │ │ ├── TupleTypeStructureImpl.ts │ │ │ │ ├── TypeArgumentedTypeStructureImpl.ts │ │ │ │ ├── TypePredicateTypeStructureImpl.ts │ │ │ │ ├── TypeStructures.ts │ │ │ │ ├── TypeStructuresBase.ts │ │ │ │ ├── TypeStructuresWithChildren.ts │ │ │ │ ├── TypeStructuresWithTypeParameters.ts │ │ │ │ ├── UnionTypeStructureImpl.ts │ │ │ │ └── WriterTypeStructureImpl.ts │ │ ├── toolbox │ │ │ ├── ClassFieldStatementsMap.ts │ │ │ ├── ClassMembersMap.ts │ │ │ ├── DefaultMap.ts │ │ │ ├── ExportManager.ts │ │ │ ├── ImportManager.ts │ │ │ ├── MemberedStatementsKeyClass.ts │ │ │ ├── MemberedTypeToClass.ts │ │ │ ├── OrderedMap.ts │ │ │ ├── README.md │ │ │ ├── TypeMembersMap.ts │ │ │ ├── forEachAugmentedStructureChild.ts │ │ │ └── types │ │ │ │ └── toolbox.d.ts │ │ └── types │ │ │ ├── CloneableStructure.d.ts │ │ │ ├── ExtractStructure.d.ts │ │ │ ├── RightExtendsLeft.d.ts │ │ │ ├── StructureClassToJSON.d.ts │ │ │ ├── StructureImplementation.d.ts │ │ │ ├── TypeAndTypeStructureInterfaces.d.ts │ │ │ ├── stringOrWriterFunction.d.ts │ │ │ └── ts-morph-typednodewriter.d.ts │ └── tsc-excludes.json ├── stage_2_snapshot │ ├── .gitignore │ ├── Gulpfile.ts │ ├── README.md │ ├── build │ │ ├── removeCanaries.ts │ │ └── support.ts │ ├── eslint.config.mjs │ ├── fixtures │ │ ├── README.md │ │ ├── StringNumber.ts │ │ ├── ecma_references │ │ │ ├── ArrayNotImplementedCanary.ts │ │ │ ├── NumberStringClass.ts │ │ │ ├── NumberStringWrapped.ts │ │ │ └── classDecorators.ts │ │ ├── exportPromise.ts │ │ ├── grab-bag.ts │ │ ├── import-dist │ │ │ ├── cmdLine.js │ │ │ ├── driver.js │ │ │ └── package.json │ │ ├── stage_utilities │ │ │ ├── DefaultMap.ts │ │ │ ├── PromiseTypes.ts │ │ │ ├── PropertyKeySorter.ts │ │ │ ├── WeakRefSet.ts │ │ │ └── assert.ts │ │ └── types │ │ │ └── declaredOverloads.d.ts │ ├── pre-build │ │ ├── Gulpfile.ts │ │ ├── constants.ts │ │ └── copySnapshot.ts │ ├── snapshot │ │ └── source │ │ │ ├── array-utilities │ │ │ ├── ArrayNotImplementedCanary.ts │ │ │ └── ReadonlyArrayProxyHandler.ts │ │ │ ├── base │ │ │ ├── StructureBase.ts │ │ │ ├── StructureClassesMap.ts │ │ │ ├── TypeAccessors.ts │ │ │ ├── TypeStructureClassesMap.ts │ │ │ ├── TypeStructureKind.ts │ │ │ ├── TypeStructureSet.ts │ │ │ └── symbolKeys.ts │ │ │ ├── bootstrap │ │ │ ├── adjustForOverloads.ts │ │ │ ├── buildTypesForStructures.ts │ │ │ ├── convertTypeNode.ts │ │ │ ├── getTypeAugmentedStructure.ts │ │ │ ├── parseLiteralType.ts │ │ │ ├── structureToNodeMap.ts │ │ │ ├── structureToSyntax.ts │ │ │ ├── typeNodeConsoles.ts │ │ │ └── types │ │ │ │ └── conversions.d.ts │ │ │ ├── decorators │ │ │ └── standard │ │ │ │ ├── AbstractableNodeStructureMixin.ts │ │ │ │ ├── AmbientableNodeStructureMixin.ts │ │ │ │ ├── AsyncableNodeStructureMixin.ts │ │ │ │ ├── DecoratableNodeStructureMixin.ts │ │ │ │ ├── ExclamationTokenableNodeStructureMixin.ts │ │ │ │ ├── ExportableNodeStructureMixin.ts │ │ │ │ ├── GeneratorableNodeStructureMixin.ts │ │ │ │ ├── InitializerExpressionableNodeStructureMixin.ts │ │ │ │ ├── JSDocableNodeStructureMixin.ts │ │ │ │ ├── NameableNodeStructureMixin.ts │ │ │ │ ├── NamedNodeStructureMixin.ts │ │ │ │ ├── OverrideableNodeStructureMixin.ts │ │ │ │ ├── ParameteredNodeStructureMixin.ts │ │ │ │ ├── QuestionTokenableNodeStructureMixin.ts │ │ │ │ ├── ReadonlyableNodeStructureMixin.ts │ │ │ │ ├── ReturnTypedNodeStructureMixin.ts │ │ │ │ ├── ScopedNodeStructureMixin.ts │ │ │ │ ├── StatementedNodeStructureMixin.ts │ │ │ │ ├── StructureMixin.ts │ │ │ │ ├── TypeParameteredNodeStructureMixin.ts │ │ │ │ └── TypedNodeStructureMixin.ts │ │ │ ├── exports.ts │ │ │ ├── interfaces │ │ │ └── standard │ │ │ │ ├── AbstractableNodeStructureClassIfc.d.ts │ │ │ │ ├── AmbientableNodeStructureClassIfc.d.ts │ │ │ │ ├── AsyncableNodeStructureClassIfc.d.ts │ │ │ │ ├── CallSignatureDeclarationStructureClassIfc.d.ts │ │ │ │ ├── ClassDeclarationStructureClassIfc.d.ts │ │ │ │ ├── ClassStaticBlockDeclarationStructureClassIfc.d.ts │ │ │ │ ├── ConstructSignatureDeclarationStructureClassIfc.d.ts │ │ │ │ ├── ConstructorDeclarationOverloadStructureClassIfc.d.ts │ │ │ │ ├── ConstructorDeclarationStructureClassIfc.d.ts │ │ │ │ ├── DecoratableNodeStructureClassIfc.d.ts │ │ │ │ ├── DecoratorStructureClassIfc.d.ts │ │ │ │ ├── EnumDeclarationStructureClassIfc.d.ts │ │ │ │ ├── EnumMemberStructureClassIfc.d.ts │ │ │ │ ├── ExclamationTokenableNodeStructureClassIfc.d.ts │ │ │ │ ├── ExportAssignmentStructureClassIfc.d.ts │ │ │ │ ├── ExportDeclarationStructureClassIfc.d.ts │ │ │ │ ├── ExportSpecifierStructureClassIfc.d.ts │ │ │ │ ├── ExportableNodeStructureClassIfc.d.ts │ │ │ │ ├── FunctionDeclarationOverloadStructureClassIfc.d.ts │ │ │ │ ├── FunctionDeclarationStructureClassIfc.d.ts │ │ │ │ ├── GeneratorableNodeStructureClassIfc.d.ts │ │ │ │ ├── GetAccessorDeclarationStructureClassIfc.d.ts │ │ │ │ ├── ImportAttributeStructureClassIfc.d.ts │ │ │ │ ├── ImportDeclarationStructureClassIfc.d.ts │ │ │ │ ├── ImportSpecifierStructureClassIfc.d.ts │ │ │ │ ├── IndexSignatureDeclarationStructureClassIfc.d.ts │ │ │ │ ├── InitializerExpressionableNodeStructureClassIfc.d.ts │ │ │ │ ├── InterfaceDeclarationStructureClassIfc.d.ts │ │ │ │ ├── JSDocStructureClassIfc.d.ts │ │ │ │ ├── JSDocTagStructureClassIfc.d.ts │ │ │ │ ├── JSDocableNodeStructureClassIfc.d.ts │ │ │ │ ├── JsxAttributeStructureClassIfc.d.ts │ │ │ │ ├── JsxElementStructureClassIfc.d.ts │ │ │ │ ├── JsxSelfClosingElementStructureClassIfc.d.ts │ │ │ │ ├── JsxSpreadAttributeStructureClassIfc.d.ts │ │ │ │ ├── MethodDeclarationOverloadStructureClassIfc.d.ts │ │ │ │ ├── MethodDeclarationStructureClassIfc.d.ts │ │ │ │ ├── MethodSignatureStructureClassIfc.d.ts │ │ │ │ ├── ModuleDeclarationStructureClassIfc.d.ts │ │ │ │ ├── NameableNodeStructureClassIfc.d.ts │ │ │ │ ├── NamedNodeStructureClassIfc.d.ts │ │ │ │ ├── OverrideableNodeStructureClassIfc.d.ts │ │ │ │ ├── ParameterDeclarationStructureClassIfc.d.ts │ │ │ │ ├── ParameteredNodeStructureClassIfc.d.ts │ │ │ │ ├── PropertyAssignmentStructureClassIfc.d.ts │ │ │ │ ├── PropertyDeclarationStructureClassIfc.d.ts │ │ │ │ ├── PropertySignatureStructureClassIfc.d.ts │ │ │ │ ├── QuestionTokenableNodeStructureClassIfc.d.ts │ │ │ │ ├── ReadonlyableNodeStructureClassIfc.d.ts │ │ │ │ ├── ReturnTypedNodeStructureClassIfc.d.ts │ │ │ │ ├── ScopedNodeStructureClassIfc.d.ts │ │ │ │ ├── SetAccessorDeclarationStructureClassIfc.d.ts │ │ │ │ ├── ShorthandPropertyAssignmentStructureClassIfc.d.ts │ │ │ │ ├── SourceFileStructureClassIfc.d.ts │ │ │ │ ├── SpreadAssignmentStructureClassIfc.d.ts │ │ │ │ ├── StatementedNodeStructureClassIfc.d.ts │ │ │ │ ├── StructureClassIfc.d.ts │ │ │ │ ├── TypeAliasDeclarationStructureClassIfc.d.ts │ │ │ │ ├── TypeParameterDeclarationStructureClassIfc.d.ts │ │ │ │ ├── TypeParameteredNodeStructureClassIfc.d.ts │ │ │ │ ├── TypedNodeStructureClassIfc.d.ts │ │ │ │ ├── VariableDeclarationStructureClassIfc.d.ts │ │ │ │ └── VariableStatementStructureClassIfc.d.ts │ │ │ ├── internal-exports.ts │ │ │ ├── structures │ │ │ ├── standard │ │ │ │ ├── CallSignatureDeclarationImpl.ts │ │ │ │ ├── ClassDeclarationImpl.ts │ │ │ │ ├── ClassStaticBlockDeclarationImpl.ts │ │ │ │ ├── ConstructSignatureDeclarationImpl.ts │ │ │ │ ├── ConstructorDeclarationImpl.ts │ │ │ │ ├── ConstructorDeclarationOverloadImpl.ts │ │ │ │ ├── DecoratorImpl.ts │ │ │ │ ├── EnumDeclarationImpl.ts │ │ │ │ ├── EnumMemberImpl.ts │ │ │ │ ├── ExportAssignmentImpl.ts │ │ │ │ ├── ExportDeclarationImpl.ts │ │ │ │ ├── ExportSpecifierImpl.ts │ │ │ │ ├── FunctionDeclarationImpl.ts │ │ │ │ ├── FunctionDeclarationOverloadImpl.ts │ │ │ │ ├── GetAccessorDeclarationImpl.ts │ │ │ │ ├── ImportAttributeImpl.ts │ │ │ │ ├── ImportDeclarationImpl.ts │ │ │ │ ├── ImportSpecifierImpl.ts │ │ │ │ ├── IndexSignatureDeclarationImpl.ts │ │ │ │ ├── InterfaceDeclarationImpl.ts │ │ │ │ ├── JSDocImpl.ts │ │ │ │ ├── JSDocTagImpl.ts │ │ │ │ ├── JsxAttributeImpl.ts │ │ │ │ ├── JsxElementImpl.ts │ │ │ │ ├── JsxSelfClosingElementImpl.ts │ │ │ │ ├── JsxSpreadAttributeImpl.ts │ │ │ │ ├── MethodDeclarationImpl.ts │ │ │ │ ├── MethodDeclarationOverloadImpl.ts │ │ │ │ ├── MethodSignatureImpl.ts │ │ │ │ ├── ModuleDeclarationImpl.ts │ │ │ │ ├── ParameterDeclarationImpl.ts │ │ │ │ ├── PropertyAssignmentImpl.ts │ │ │ │ ├── PropertyDeclarationImpl.ts │ │ │ │ ├── PropertySignatureImpl.ts │ │ │ │ ├── SetAccessorDeclarationImpl.ts │ │ │ │ ├── ShorthandPropertyAssignmentImpl.ts │ │ │ │ ├── SourceFileImpl.ts │ │ │ │ ├── SpreadAssignmentImpl.ts │ │ │ │ ├── TypeAliasDeclarationImpl.ts │ │ │ │ ├── TypeParameterDeclarationImpl.ts │ │ │ │ ├── VariableDeclarationImpl.ts │ │ │ │ └── VariableStatementImpl.ts │ │ │ └── type │ │ │ │ ├── ArrayTypeStructureImpl.ts │ │ │ │ ├── ConditionalTypeStructureImpl.ts │ │ │ │ ├── FunctionTypeStructureImpl.ts │ │ │ │ ├── ImportTypeStructureImpl.ts │ │ │ │ ├── IndexedAccessTypeStructureImpl.ts │ │ │ │ ├── InferTypeStructureImpl.ts │ │ │ │ ├── IntersectionTypeStructureImpl.ts │ │ │ │ ├── LiteralTypeStructureImpl.ts │ │ │ │ ├── MappedTypeStructureImpl.ts │ │ │ │ ├── MemberedObjectTypeStructureImpl.ts │ │ │ │ ├── NumberTypeStructureImpl.ts │ │ │ │ ├── ParameterTypeStructureImpl.ts │ │ │ │ ├── ParenthesesTypeStructureImpl.ts │ │ │ │ ├── PrefixOperatorsTypeStructureImpl.ts │ │ │ │ ├── QualifiedNameTypeStructureImpl.ts │ │ │ │ ├── StringTypeStructureImpl.ts │ │ │ │ ├── TemplateLiteralTypeStructureImpl.ts │ │ │ │ ├── TupleTypeStructureImpl.ts │ │ │ │ ├── TypeArgumentedTypeStructureImpl.ts │ │ │ │ ├── TypePredicateTypeStructureImpl.ts │ │ │ │ ├── TypeStructures.ts │ │ │ │ ├── TypeStructuresBase.ts │ │ │ │ ├── TypeStructuresWithChildren.ts │ │ │ │ ├── TypeStructuresWithTypeParameters.ts │ │ │ │ ├── UnionTypeStructureImpl.ts │ │ │ │ └── WriterTypeStructureImpl.ts │ │ │ ├── toolbox │ │ │ ├── ClassFieldStatementsMap.ts │ │ │ ├── ClassMembersMap.ts │ │ │ ├── DefaultMap.ts │ │ │ ├── ExportManager.ts │ │ │ ├── ImportManager.ts │ │ │ ├── MemberedStatementsKeyClass.ts │ │ │ ├── MemberedTypeToClass.ts │ │ │ ├── OrderedMap.ts │ │ │ ├── README.md │ │ │ ├── TypeMembersMap.ts │ │ │ ├── forEachAugmentedStructureChild.ts │ │ │ └── types │ │ │ │ └── toolbox.d.ts │ │ │ └── types │ │ │ ├── CloneableStructure.d.ts │ │ │ ├── ExtractStructure.d.ts │ │ │ ├── RightExtendsLeft.d.ts │ │ │ ├── StructureClassToJSON.d.ts │ │ │ ├── StructureImplUnions.d.ts │ │ │ ├── StructureImplementation.d.ts │ │ │ ├── TypeAndTypeStructureInterfaces.d.ts │ │ │ ├── stringOrWriterFunction.d.ts │ │ │ └── ts-morph-typednodewriter.d.ts │ ├── spec-snapshot │ │ ├── build-checks │ │ │ ├── import-dist.ts │ │ │ └── sourceNotInFiles.ts │ │ ├── dist │ │ │ ├── ClassMembersMap.ts │ │ │ ├── ImportManager.ts │ │ │ ├── README.md │ │ │ ├── TypeMembersMap.ts │ │ │ ├── declarationFromSignature.ts │ │ │ └── forEachAugmentedStructureChild.ts │ │ ├── integration.ts │ │ ├── source │ │ │ ├── _types │ │ │ │ ├── StructureImplUnions.ts │ │ │ │ └── StructureImplementation.ts │ │ │ ├── array-utilities │ │ │ │ ├── ArrayNotImplementedCanary.ts │ │ │ │ └── ReadonlyArrayProxyHandler.ts │ │ │ ├── base │ │ │ │ ├── TypeAccessors.ts │ │ │ │ └── TypeStructureSet.ts │ │ │ ├── bootstrap │ │ │ │ ├── adjustForOverloads.ts │ │ │ │ ├── buildTypesForStructures.ts │ │ │ │ ├── convertTypeNode.ts │ │ │ │ ├── getTypeAugmentedStructure.ts │ │ │ │ ├── parseLiteralType.ts │ │ │ │ ├── structureToNodeMap.ts │ │ │ │ └── structureToSyntax.ts │ │ │ ├── decorators │ │ │ │ └── standard │ │ │ │ │ ├── BooleanDecorators.ts │ │ │ │ │ └── StringDecorators.ts │ │ │ ├── structures │ │ │ │ ├── TypeStructures.ts │ │ │ │ └── standard │ │ │ │ │ ├── JSDocImpl.ts │ │ │ │ │ ├── JSDocTagImpl.ts │ │ │ │ │ ├── MethodSignatureImpl.ts │ │ │ │ │ ├── TypeAccessorProperties.ts │ │ │ │ │ ├── TypeStructureSetProperties.ts │ │ │ │ │ ├── declarationFromSignature.ts │ │ │ │ │ └── toJSON.ts │ │ │ └── toolbox │ │ │ │ ├── ClassFieldStatementsMap.ts │ │ │ │ ├── ClassMembersMap.ts │ │ │ │ ├── ExportManager.ts │ │ │ │ ├── ImportManager.ts │ │ │ │ ├── MemberedTypeToClass.ts │ │ │ │ ├── TypeMembersMap.ts │ │ │ │ └── forEachAugmentedStructureChild.ts │ │ └── support │ │ │ └── jasmine.json │ └── tsc-excludes.json ├── stage_3_generation │ ├── .gitignore │ ├── Gulpfile.ts │ ├── README.md │ ├── build │ │ ├── classTools │ │ │ ├── InternalJSDocTag.ts │ │ │ ├── PropertyHashesWithTypes.ts │ │ │ └── modifyTypeMembersForTypeStructures.ts │ │ ├── constants.ts │ │ ├── decorators │ │ │ ├── CloneStatement.ts │ │ │ └── createDecorators.ts │ │ ├── dist.ts │ │ ├── fieldStatements │ │ │ ├── ArrayBooleanAndString.ts │ │ │ ├── CopyFields.ts │ │ │ ├── Debugging.ts │ │ │ ├── GetterBase.ts │ │ │ ├── StatementsPriority.ts │ │ │ ├── StructureIterator.ts │ │ │ ├── ToJSON.ts │ │ │ ├── TypeStructures │ │ │ │ ├── ArrayGetter.ts │ │ │ │ ├── ArrayReadonlyHandler.ts │ │ │ │ ├── Manager.ts │ │ │ │ ├── ProxyArray.ts │ │ │ │ ├── ShadowArray.ts │ │ │ │ ├── StructureGetter.ts │ │ │ │ ├── TypeGetter.ts │ │ │ │ └── TypeStructureSet.ts │ │ │ └── UndefinedProperties.ts │ │ ├── interfaces │ │ │ ├── addTypeStructures.ts │ │ │ ├── consolidateNameDecorators.ts │ │ │ ├── consolidateScopeDecorators.ts │ │ │ ├── createInterfaces.ts │ │ │ ├── mergeInterfaces.ts │ │ │ ├── removeStaticableDecorator.ts │ │ │ ├── setHasQuestionToken.ts │ │ │ └── tightenPropertyType.ts │ │ ├── publicAndInternalExports.ts │ │ ├── spec │ │ │ ├── interfaces │ │ │ │ └── tightenPropertyType.ts │ │ │ ├── support │ │ │ │ └── jasmine.json │ │ │ └── vanilla │ │ │ │ ├── FlatInterfaceMap.ts │ │ │ │ └── UnionMap.ts │ │ ├── structureUnions.ts │ │ ├── structures │ │ │ ├── CloneStructureStatements.ts │ │ │ ├── ConstructorStatements.ts │ │ │ ├── KindProperty.ts │ │ │ ├── addReadonlyArrayHandler.ts │ │ │ ├── createStructures.ts │ │ │ └── specialCases │ │ │ │ ├── accessorConstructors.ts │ │ │ │ ├── fixKeyType.ts │ │ │ │ ├── fromSignature.ts │ │ │ │ ├── isStatic_Fields.ts │ │ │ │ └── postProcessClassMembers.ts │ │ └── support.ts │ ├── eslint.config.mjs │ ├── moduleClasses │ │ ├── BaseClassModule.ts │ │ ├── BaseModule.ts │ │ ├── DecoratorModule.ts │ │ ├── ExportsModule.ts │ │ ├── InterfaceModule.ts │ │ ├── OrderedSet.ts │ │ ├── StructureModule.ts │ │ ├── SuffixMap.ts │ │ ├── UnionModule.ts │ │ ├── addImportsToModule.ts │ │ ├── exports.ts │ │ └── sortClassMembers.ts │ ├── pseudoStatements │ │ ├── BlockStatement.ts │ │ ├── CallExpression.ts │ │ ├── README.md │ │ ├── SatisfiesStatement.ts │ │ └── StatementBase.ts │ ├── tsc-excludes.json │ └── vanilla │ │ ├── FlatInterfaceMap.ts │ │ ├── InterfaceMap.ts │ │ ├── README.md │ │ ├── UnionMap.ts │ │ └── initializer.ts ├── stage_3_integration │ ├── .gitignore │ ├── Gulpfile.ts │ ├── README.md │ ├── build │ │ ├── rollup │ │ │ ├── bundle.ts │ │ │ └── rollup.config.js │ │ └── structureToSyntax.ts │ ├── eslint.config.mjs │ ├── pre-build │ │ ├── Gulpfile.ts │ │ ├── constants.ts │ │ └── copySnapshot.ts │ └── tsc-excludes.json ├── stage_3_snapshot │ ├── .gitignore │ ├── Gulpfile.ts │ ├── README.md │ ├── build │ │ └── removeCanaries.ts │ ├── eslint.config.mjs │ ├── pre-build │ │ ├── Gulpfile.ts │ │ ├── constants.ts │ │ └── copySnapshot.ts │ ├── spec-snapshot │ │ ├── fileHashes.ts │ │ └── support │ │ │ └── jasmine.json │ └── tsc-excludes.json ├── tsconfig-gulp.json ├── tsconfig.json ├── use-cases │ ├── Gulpfile.ts │ ├── README.md │ ├── build │ │ ├── StringStringMap.ts │ │ └── utilities │ │ │ ├── sharedProject.ts │ │ │ └── typescript-builtins.ts │ ├── dist │ │ └── StringStringMap.ts │ └── eslint.config.mjs └── utilities │ ├── Gulpfile.ts │ ├── eslint.config.mjs │ ├── source │ ├── AsyncSpecModules.ts │ ├── AwaitedMap.ts │ ├── DefaultMap.ts │ ├── DependencyTracker.ts │ ├── PromiseTypes.ts │ ├── StrongStrongMap.ts │ ├── StructureNameTransforms.ts │ ├── _types │ │ ├── NodeWithStructures.d.ts │ │ └── Utility.d.ts │ ├── getTS_SourceFile.ts │ ├── hash-all-files.ts │ ├── readDirsDeep.ts │ ├── tasks │ │ ├── .gitignore │ │ └── tsconfig.json │ └── ts-morph-d-file.ts │ └── spec │ ├── AwaitedMap.ts │ ├── DependencyTracker.ts │ ├── PromiseTypes │ └── SingletonPromise.ts │ └── support │ └── jasmine.json └── v2-es-membrane ├── .gitignore ├── Gulpfile.ts ├── LICENSE ├── README.md ├── _00_ecma_references ├── Gulpfile.ts ├── fixtures │ ├── NumberStringClass.ts │ └── types │ │ └── NumberStringType.d.ts └── spec │ ├── README.md │ ├── argumentTruncation.js │ ├── classDecorators.ts │ ├── classMethodDecorators.ts │ ├── constructTrap.ts │ ├── getSetTraps-receiver.ts │ ├── propertyDescriptors.ts │ └── support │ ├── TracingProxyHandler.ts │ └── jasmine.json ├── _01_stage_utilities ├── Gulpfile.ts ├── README.md ├── examples │ ├── run.ts │ └── source │ │ ├── AsyncModule.ts │ │ └── DoubleArrayPromise.ts ├── fixtures │ ├── NumberStringClass.ts │ └── types │ │ └── NumberStringType.d.ts ├── source │ ├── AsyncSpecModules.ts │ ├── PromiseTypes.ts │ ├── PropertyKeySorter.ts │ ├── ReplaceableValueMap.ts │ ├── RequiredInitializers.ts │ ├── SpyBase.ts │ ├── collections │ │ ├── AwaitedMap.ts │ │ ├── DefaultMap.ts │ │ ├── OneToOneStrongMap.ts │ │ ├── WeakRefSet.ts │ │ └── WeakStrongMap.ts │ ├── gc │ │ ├── holdsArgument.ts │ │ ├── holdsReturn.ts │ │ ├── promiseFinalizer.ts │ │ └── tryGarbageCollection.ts │ ├── getTS_SourceFile.ts │ ├── maybeDefined.ts │ ├── stateMachines │ │ └── dfa-states.ts │ └── types │ │ ├── ClassMethodDecoratorFunction.d.ts │ │ ├── MethodsOnlyType.d.ts │ │ └── Utility.d.ts └── spec │ ├── AsyncSpecModules.ts │ ├── PromiseTypes │ ├── PromiseDictionary.ts │ └── SingletonPromise.ts │ ├── PropertyKeySorter.ts │ ├── ReplaceableValueMap.ts │ ├── RequiredInitializers.ts │ ├── _types │ └── ClassMethodDecoratorFunction.ts │ ├── collections │ ├── AwaitedMap.ts │ ├── OneToOneStrongMap.ts │ ├── WeakRefSet.ts │ └── WeakStrongMap.ts │ ├── garbage-collection │ ├── collections │ │ ├── OneToOneStrongMap.ts │ │ ├── WeakRefSet.ts │ │ └── WeakStrongMap.ts │ ├── holdsArgument.ts │ └── holdsReturn.ts │ ├── getTS_SourceFile.ts │ ├── stateMachines │ └── dfa-states.ts │ └── support │ └── jasmine.json ├── _02_code_generation ├── Gulpfile.ts ├── source │ ├── ConvertingHead.ts │ ├── ObjectGraphHandlerIfc.ts │ ├── ObjectGraphTailHandler.ts │ ├── UnionStringOrSymbol.ts │ ├── buildHandlerClass.ts │ ├── constants.ts │ ├── forwardToReflect.ts │ ├── getInterfaces │ │ ├── fromLocalFile.ts │ │ ├── fromTypeScriptLib.ts │ │ └── requiredProxy.ts │ ├── mirroring │ │ ├── revokedInFlight.ts │ │ └── wrapReturnValues.ts │ └── utilities │ │ ├── buildConstStatement.ts │ │ └── tailDecoratorFunction.ts └── tsc-excludes.json ├── _03_objectgraph_handlers ├── Gulpfile.ts ├── pre-build │ ├── Gulpfile.ts │ └── constants.ts ├── source │ ├── AlwaysRevokedProxy.ts │ ├── ObjectGraphHead.ts │ ├── RevokerManagement.ts │ ├── decorators │ │ ├── inheritedProperties.ts │ │ └── updateShadowTarget.ts │ ├── exceptions │ │ ├── MembraneInternalError.ts │ │ └── graphAssert.ts │ ├── generated │ │ ├── ConvertingHeadProxyHandler.ts │ │ ├── ForwardToReflect.ts │ │ ├── ObjectGraphTailHandler.ts │ │ ├── decorators │ │ │ ├── revokedInFlight.ts │ │ │ └── wrapReturnValues.ts │ │ └── types │ │ │ └── ObjectGraphHandlerIfc.d.ts │ ├── sharedUtilities.ts │ └── types │ │ ├── ClassDecoratorFunction.d.ts │ │ ├── MembraneInternalIfc.d.ts │ │ ├── ObjectGraphHeadIfc.d.ts │ │ ├── ProxyBranding.d.ts │ │ └── RequiredProxyHandler.d.ts ├── spec │ ├── ConvertingHeadProxyHandler.ts │ ├── ObjectGraphHead.ts │ ├── ObjectGraphTailHandler.ts │ ├── RevokerManagement.ts │ ├── decorators │ │ ├── inheritedProperties.ts │ │ ├── revokedInFlight.ts │ │ ├── updateShadowTarget.ts │ │ └── wrapReturnValues.ts │ ├── garbage-collection │ │ └── RevokerManagement.ts │ └── support │ │ ├── MockMembrane.ts │ │ ├── SpyProxyHandler.ts │ │ └── jasmine.json └── tsc-excludes.json ├── _04_mirror_membranes ├── Gulpfile.ts ├── source │ ├── MirrorMembrane.ts │ └── MirrorObjectGraphHandler.ts ├── spec │ ├── MirrorMembrane.ts │ └── support │ │ └── jasmine.json └── types │ └── MirrorMembraneIfc.d.ts ├── _10_exported_decorators ├── Gulpfile.ts └── README.md ├── gulp-utilities └── cleanTSC_output.js ├── mothballed ├── _x1_aspects_mockups │ ├── README.md │ └── spec │ │ ├── argumentsTrap.ts │ │ ├── classInvariants.ts │ │ └── support │ │ └── jasmine.json ├── _x1_collections │ └── source │ │ └── array-utilities │ │ ├── ArrayNotImplementedCanary.mts │ │ ├── ImplementsArrayProxy.mts │ │ ├── NotImplementedHandler.mts │ │ ├── PrimitiveArrayProxyHandler.mts │ │ ├── PublicArrayProxyHandler.mts │ │ └── types │ │ ├── ArrayWithoutIndices.d.mts │ │ ├── BackingAndPublicDictionaries.d.mts │ │ ├── DataDescriptor.d.mts │ │ ├── PublicTypeUpdateableArray.d.mts │ │ ├── UpdateSymbolTracking.d.mts │ │ └── export-types.d.mts ├── _y4b_aspects_stubs │ ├── README.md │ ├── fixtures │ │ └── components │ │ │ └── methodDecorators │ │ │ └── spy.mts │ ├── source │ │ ├── AspectsStubBase.mts │ │ ├── StubClassSet.mts │ │ ├── StubMap.mts │ │ ├── decorators │ │ │ ├── classInvariants.mts │ │ │ ├── defineExtraParamsShort.mts │ │ │ ├── headCall.mts │ │ │ ├── methodDecorators.mts │ │ │ ├── notImplemented.mts │ │ │ └── tailCall.mts │ │ ├── mixins │ │ │ ├── AddMethodDecoratorsStub.mts │ │ │ ├── ClassInvariantsWrapperStub.mts │ │ │ ├── NotImplementedBase.mts │ │ │ ├── TransitionsHead.mts │ │ │ ├── TransitionsTail.mts │ │ │ └── Transitions_NotImplemented.mts │ │ ├── types │ │ │ ├── AddImport.d.mts │ │ │ ├── AspectsStubDecorator.d.mts │ │ │ ├── MethodDecoratorsOfClass.d.mts │ │ │ ├── StubClassSetConfiguration.d.mts │ │ │ ├── TransitionInterface.d.mts │ │ │ ├── paramBuilders.d.mts │ │ │ ├── paramRenamer.d.mts │ │ │ └── ts-morph-native.d.mts │ │ └── utilities │ │ │ ├── aspectTypeImport.mts │ │ │ ├── extractType.mts │ │ │ └── serializeParameter.mts │ ├── spec-build │ │ ├── aspectsStubs.mts │ │ ├── cleanStubsDir.mts │ │ ├── constants.mts │ │ ├── methodDecoratedStub.mts │ │ └── support.mts │ └── spec │ │ ├── ClassInvariantsWrapper.mts │ │ ├── MethodDecoratorsOfClass.mts │ │ ├── NotImplemented_Base.mts │ │ └── TransitionsTail.mts ├── _y4c_aspects_decorators │ ├── README.md │ ├── fixtures │ │ ├── AspectsDecorators.mts │ │ ├── ClassInvariantsWrapper.mts │ │ └── NumberStringClassAssert.mts │ ├── source │ │ ├── AspectsDecorators.mts │ │ ├── classes │ │ │ └── classInvariant.mts │ │ ├── methods │ │ │ ├── argumentsTrap.mts │ │ │ ├── bodyTrap.mts │ │ │ ├── prePostCondition.mts │ │ │ ├── replacementMethod.mts │ │ │ ├── returnTrap.mts │ │ │ └── stateMachine.mts │ │ ├── symbol-keys.mts │ │ └── types │ │ │ ├── ArgumentsTrap.d.mts │ │ │ ├── GenericFunction.d.mts │ │ │ ├── MethodAspects.d.mts │ │ │ ├── PrePostConditionsContext.d.mts │ │ │ ├── PrependArguments.d.mts │ │ │ ├── ReturnTrap.d.mts │ │ │ └── SharedVariablesDictionary.d.mts │ └── spec │ │ ├── classes │ │ └── classInvariant.mts │ │ └── methods │ │ ├── argumentsTrap.mts │ │ ├── bodyTrap.mts │ │ ├── integration.mts │ │ ├── prePostConditions.mts │ │ └── returnTrap.mts └── _y4z_aspects_test_fixtures │ ├── build │ ├── aspectsStubs.mts │ ├── cleanStubsDir.mts │ ├── constants.mts │ ├── methodDecoratedStub.mts │ └── support.mts │ └── fixtures │ ├── components │ └── methodDecorators │ │ └── spy.mts │ └── generated │ └── stubs │ ├── ClassInvariantsWrapper.mts │ ├── NotImplemented_Base.mts │ ├── SpyMethodDecorated.mts │ ├── TransitionsHead.mts │ ├── TransitionsTail.mts │ └── Transitions_NotImplemented.mts ├── package.json ├── register-hooks.js ├── tsconfig-gulp.json └── tsconfig.json /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tsimp 3 | -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | engine-strict=true 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # es-membrane monorepo 2 | 3 | If you're looking for the es-membrane package, you probably want to go [here for the version 2 rewrite](./projects/v2-es-membrane/) or [here for version 0.9](./old-0.9/). 4 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/index.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) 4 | 5 | ## API Reference 6 | 7 | ## Packages 8 | 9 | 20 | 29 |
10 | 11 | Package 12 | 13 | 14 | 15 | 16 | Description 17 | 18 | 19 |
21 | 22 | [ts-morph-structures](./ts-morph-structures.md) 23 | 24 | 25 | 26 | 27 | 28 |
30 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.arraytypestructureimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ArrayTypeStructureImpl](./ts-morph-structures.arraytypestructureimpl.md) > [kind](./ts-morph-structures.arraytypestructureimpl.kind.md) 4 | 5 | ## ArrayTypeStructureImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind = TypeStructureKind.Array; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.classdeclarationimpl.ctors.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ClassDeclarationImpl](./ts-morph-structures.classdeclarationimpl.md) > [ctors](./ts-morph-structures.classdeclarationimpl.ctors.md) 4 | 5 | ## ClassDeclarationImpl.ctors property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly ctors: ConstructorDeclarationImpl[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.classdeclarationimpl.docs.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ClassDeclarationImpl](./ts-morph-structures.classdeclarationimpl.md) > [docs](./ts-morph-structures.classdeclarationimpl.docs.md) 4 | 5 | ## ClassDeclarationImpl.docs property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly docs: (JSDocImpl | string)[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.classdeclarationimpl.isabstract.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ClassDeclarationImpl](./ts-morph-structures.classdeclarationimpl.md) > [isAbstract](./ts-morph-structures.classdeclarationimpl.isabstract.md) 4 | 5 | ## ClassDeclarationImpl.isAbstract property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isAbstract: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.classdeclarationimpl.isexported.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ClassDeclarationImpl](./ts-morph-structures.classdeclarationimpl.md) > [isExported](./ts-morph-structures.classdeclarationimpl.isexported.md) 4 | 5 | ## ClassDeclarationImpl.isExported property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isExported: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.classdeclarationimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ClassDeclarationImpl](./ts-morph-structures.classdeclarationimpl.md) > [kind](./ts-morph-structures.classdeclarationimpl.kind.md) 4 | 5 | ## ClassDeclarationImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.Class; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.classdeclarationimpl.methods.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ClassDeclarationImpl](./ts-morph-structures.classdeclarationimpl.md) > [methods](./ts-morph-structures.classdeclarationimpl.methods.md) 4 | 5 | ## ClassDeclarationImpl.methods property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly methods: MethodDeclarationImpl[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.classdeclarationimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ClassDeclarationImpl](./ts-morph-structures.classdeclarationimpl.md) > [name](./ts-morph-structures.classdeclarationimpl.name.md) 4 | 5 | ## ClassDeclarationImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name?: string | undefined; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.decoratorimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [DecoratorImpl](./ts-morph-structures.decoratorimpl.md) > [kind](./ts-morph-structures.decoratorimpl.kind.md) 4 | 5 | ## DecoratorImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.Decorator; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.decoratorimpl.leadingtrivia.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [DecoratorImpl](./ts-morph-structures.decoratorimpl.md) > [leadingTrivia](./ts-morph-structures.decoratorimpl.leadingtrivia.md) 4 | 5 | ## DecoratorImpl.leadingTrivia property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly leadingTrivia: stringOrWriterFunction[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.decoratorimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [DecoratorImpl](./ts-morph-structures.decoratorimpl.md) > [name](./ts-morph-structures.decoratorimpl.name.md) 4 | 5 | ## DecoratorImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.decoratorimpl.trailingtrivia.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [DecoratorImpl](./ts-morph-structures.decoratorimpl.md) > [trailingTrivia](./ts-morph-structures.decoratorimpl.trailingtrivia.md) 4 | 5 | ## DecoratorImpl.trailingTrivia property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly trailingTrivia: stringOrWriterFunction[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.decoratorimpl.typearguments.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [DecoratorImpl](./ts-morph-structures.decoratorimpl.md) > [typeArguments](./ts-morph-structures.decoratorimpl.typearguments.md) 4 | 5 | ## DecoratorImpl.typeArguments property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly typeArguments: string[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.enumdeclarationimpl.docs.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [EnumDeclarationImpl](./ts-morph-structures.enumdeclarationimpl.md) > [docs](./ts-morph-structures.enumdeclarationimpl.docs.md) 4 | 5 | ## EnumDeclarationImpl.docs property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly docs: (JSDocImpl | string)[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.enumdeclarationimpl.isconst.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [EnumDeclarationImpl](./ts-morph-structures.enumdeclarationimpl.md) > [isConst](./ts-morph-structures.enumdeclarationimpl.isconst.md) 4 | 5 | ## EnumDeclarationImpl.isConst property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isConst: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.enumdeclarationimpl.isexported.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [EnumDeclarationImpl](./ts-morph-structures.enumdeclarationimpl.md) > [isExported](./ts-morph-structures.enumdeclarationimpl.isexported.md) 4 | 5 | ## EnumDeclarationImpl.isExported property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isExported: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.enumdeclarationimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [EnumDeclarationImpl](./ts-morph-structures.enumdeclarationimpl.md) > [kind](./ts-morph-structures.enumdeclarationimpl.kind.md) 4 | 5 | ## EnumDeclarationImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.Enum; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.enumdeclarationimpl.members.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [EnumDeclarationImpl](./ts-morph-structures.enumdeclarationimpl.md) > [members](./ts-morph-structures.enumdeclarationimpl.members.md) 4 | 5 | ## EnumDeclarationImpl.members property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly members: EnumMemberImpl[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.enumdeclarationimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [EnumDeclarationImpl](./ts-morph-structures.enumdeclarationimpl.md) > [name](./ts-morph-structures.enumdeclarationimpl.name.md) 4 | 5 | ## EnumDeclarationImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.enummemberimpl.docs.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [EnumMemberImpl](./ts-morph-structures.enummemberimpl.md) > [docs](./ts-morph-structures.enummemberimpl.docs.md) 4 | 5 | ## EnumMemberImpl.docs property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly docs: (JSDocImpl | string)[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.enummemberimpl.initializer.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [EnumMemberImpl](./ts-morph-structures.enummemberimpl.md) > [initializer](./ts-morph-structures.enummemberimpl.initializer.md) 4 | 5 | ## EnumMemberImpl.initializer property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | initializer?: stringOrWriterFunction | undefined; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.enummemberimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [EnumMemberImpl](./ts-morph-structures.enummemberimpl.md) > [kind](./ts-morph-structures.enummemberimpl.kind.md) 4 | 5 | ## EnumMemberImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.EnumMember; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.enummemberimpl.leadingtrivia.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [EnumMemberImpl](./ts-morph-structures.enummemberimpl.md) > [leadingTrivia](./ts-morph-structures.enummemberimpl.leadingtrivia.md) 4 | 5 | ## EnumMemberImpl.leadingTrivia property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly leadingTrivia: stringOrWriterFunction[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.enummemberimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [EnumMemberImpl](./ts-morph-structures.enummemberimpl.md) > [name](./ts-morph-structures.enummemberimpl.name.md) 4 | 5 | ## EnumMemberImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.exportassignmentimpl.docs.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ExportAssignmentImpl](./ts-morph-structures.exportassignmentimpl.md) > [docs](./ts-morph-structures.exportassignmentimpl.docs.md) 4 | 5 | ## ExportAssignmentImpl.docs property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly docs: (JSDocImpl | string)[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.exportassignmentimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ExportAssignmentImpl](./ts-morph-structures.exportassignmentimpl.md) > [kind](./ts-morph-structures.exportassignmentimpl.kind.md) 4 | 5 | ## ExportAssignmentImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.ExportAssignment; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.exportdeclarationimpl.istypeonly.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ExportDeclarationImpl](./ts-morph-structures.exportdeclarationimpl.md) > [isTypeOnly](./ts-morph-structures.exportdeclarationimpl.istypeonly.md) 4 | 5 | ## ExportDeclarationImpl.isTypeOnly property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isTypeOnly: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.exportdeclarationimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ExportDeclarationImpl](./ts-morph-structures.exportdeclarationimpl.md) > [kind](./ts-morph-structures.exportdeclarationimpl.kind.md) 4 | 5 | ## ExportDeclarationImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.ExportDeclaration; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.exportspecifierimpl.alias.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ExportSpecifierImpl](./ts-morph-structures.exportspecifierimpl.md) > [alias](./ts-morph-structures.exportspecifierimpl.alias.md) 4 | 5 | ## ExportSpecifierImpl.alias property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | alias?: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.exportspecifierimpl.istypeonly.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ExportSpecifierImpl](./ts-morph-structures.exportspecifierimpl.md) > [isTypeOnly](./ts-morph-structures.exportspecifierimpl.istypeonly.md) 4 | 5 | ## ExportSpecifierImpl.isTypeOnly property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isTypeOnly: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.exportspecifierimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ExportSpecifierImpl](./ts-morph-structures.exportspecifierimpl.md) > [kind](./ts-morph-structures.exportspecifierimpl.kind.md) 4 | 5 | ## ExportSpecifierImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.ExportSpecifier; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.exportspecifierimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ExportSpecifierImpl](./ts-morph-structures.exportspecifierimpl.md) > [name](./ts-morph-structures.exportspecifierimpl.name.md) 4 | 5 | ## ExportSpecifierImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.functiondeclarationimpl.docs.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [FunctionDeclarationImpl](./ts-morph-structures.functiondeclarationimpl.md) > [docs](./ts-morph-structures.functiondeclarationimpl.docs.md) 4 | 5 | ## FunctionDeclarationImpl.docs property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly docs: (JSDocImpl | string)[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.functiondeclarationimpl.isasync.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [FunctionDeclarationImpl](./ts-morph-structures.functiondeclarationimpl.md) > [isAsync](./ts-morph-structures.functiondeclarationimpl.isasync.md) 4 | 5 | ## FunctionDeclarationImpl.isAsync property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isAsync: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.functiondeclarationimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [FunctionDeclarationImpl](./ts-morph-structures.functiondeclarationimpl.md) > [kind](./ts-morph-structures.functiondeclarationimpl.kind.md) 4 | 5 | ## FunctionDeclarationImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.Function; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.functiondeclarationimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [FunctionDeclarationImpl](./ts-morph-structures.functiondeclarationimpl.md) > [name](./ts-morph-structures.functiondeclarationimpl.name.md) 4 | 5 | ## FunctionDeclarationImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name?: string | undefined; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.functiontypecontext.isconstructor.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [FunctionTypeContext](./ts-morph-structures.functiontypecontext.md) > [isConstructor](./ts-morph-structures.functiontypecontext.isconstructor.md) 4 | 5 | ## FunctionTypeContext.isConstructor property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isConstructor: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.functiontypecontext.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [FunctionTypeContext](./ts-morph-structures.functiontypecontext.md) > [name](./ts-morph-structures.functiontypecontext.name.md) 4 | 5 | ## FunctionTypeContext.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string | undefined; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.functiontypestructureimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [FunctionTypeStructureImpl](./ts-morph-structures.functiontypestructureimpl.md) > [name](./ts-morph-structures.functiontypestructureimpl.name.md) 4 | 5 | ## FunctionTypeStructureImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.getaccessordeclarationimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [GetAccessorDeclarationImpl](./ts-morph-structures.getaccessordeclarationimpl.md) > [name](./ts-morph-structures.getaccessordeclarationimpl.name.md) 4 | 5 | ## GetAccessorDeclarationImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.importattributeimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ImportAttributeImpl](./ts-morph-structures.importattributeimpl.md) > [kind](./ts-morph-structures.importattributeimpl.kind.md) 4 | 5 | ## ImportAttributeImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.ImportAttribute; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.importattributeimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ImportAttributeImpl](./ts-morph-structures.importattributeimpl.md) > [name](./ts-morph-structures.importattributeimpl.name.md) 4 | 5 | ## ImportAttributeImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.importdeclarationimpl.istypeonly.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ImportDeclarationImpl](./ts-morph-structures.importdeclarationimpl.md) > [isTypeOnly](./ts-morph-structures.importdeclarationimpl.istypeonly.md) 4 | 5 | ## ImportDeclarationImpl.isTypeOnly property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isTypeOnly: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.importspecifierimpl.alias.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ImportSpecifierImpl](./ts-morph-structures.importspecifierimpl.md) > [alias](./ts-morph-structures.importspecifierimpl.alias.md) 4 | 5 | ## ImportSpecifierImpl.alias property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | alias?: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.importspecifierimpl.istypeonly.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ImportSpecifierImpl](./ts-morph-structures.importspecifierimpl.md) > [isTypeOnly](./ts-morph-structures.importspecifierimpl.istypeonly.md) 4 | 5 | ## ImportSpecifierImpl.isTypeOnly property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isTypeOnly: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.importspecifierimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ImportSpecifierImpl](./ts-morph-structures.importspecifierimpl.md) > [kind](./ts-morph-structures.importspecifierimpl.kind.md) 4 | 5 | ## ImportSpecifierImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.ImportSpecifier; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.importspecifierimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ImportSpecifierImpl](./ts-morph-structures.importspecifierimpl.md) > [name](./ts-morph-structures.importspecifierimpl.name.md) 4 | 5 | ## ImportSpecifierImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.infertypestructureimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [InferTypeStructureImpl](./ts-morph-structures.infertypestructureimpl.md) > [kind](./ts-morph-structures.infertypestructureimpl.kind.md) 4 | 5 | ## InferTypeStructureImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: TypeStructureKind.Infer; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.interfacedeclarationimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [InterfaceDeclarationImpl](./ts-morph-structures.interfacedeclarationimpl.md) > [name](./ts-morph-structures.interfacedeclarationimpl.name.md) 4 | 5 | ## InterfaceDeclarationImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsdocimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JSDocImpl](./ts-morph-structures.jsdocimpl.md) > [kind](./ts-morph-structures.jsdocimpl.kind.md) 4 | 5 | ## JSDocImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.JSDoc; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsdocimpl.leadingtrivia.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JSDocImpl](./ts-morph-structures.jsdocimpl.md) > [leadingTrivia](./ts-morph-structures.jsdocimpl.leadingtrivia.md) 4 | 5 | ## JSDocImpl.leadingTrivia property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly leadingTrivia: stringOrWriterFunction[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsdocimpl.trailingtrivia.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JSDocImpl](./ts-morph-structures.jsdocimpl.md) > [trailingTrivia](./ts-morph-structures.jsdocimpl.trailingtrivia.md) 4 | 5 | ## JSDocImpl.trailingTrivia property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly trailingTrivia: stringOrWriterFunction[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsdocstructureclassifc.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JSDocStructureClassIfc](./ts-morph-structures.jsdocstructureclassifc.md) > [kind](./ts-morph-structures.jsdocstructureclassifc.kind.md) 4 | 5 | ## JSDocStructureClassIfc.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.JSDoc; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsdoctagimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JSDocTagImpl](./ts-morph-structures.jsdoctagimpl.md) > [kind](./ts-morph-structures.jsdoctagimpl.kind.md) 4 | 5 | ## JSDocTagImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.JSDocTag; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsdoctagimpl.leadingtrivia.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JSDocTagImpl](./ts-morph-structures.jsdoctagimpl.md) > [leadingTrivia](./ts-morph-structures.jsdoctagimpl.leadingtrivia.md) 4 | 5 | ## JSDocTagImpl.leadingTrivia property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly leadingTrivia: stringOrWriterFunction[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsdoctagimpl.text.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JSDocTagImpl](./ts-morph-structures.jsdoctagimpl.md) > [text](./ts-morph-structures.jsdoctagimpl.text.md) 4 | 5 | ## JSDocTagImpl.text property 6 | 7 | The text that follows the tag name. 8 | 9 | **Signature:** 10 | 11 | ```typescript 12 | text?: stringOrWriterFunction; 13 | ``` 14 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsdoctagimpl.trailingtrivia.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JSDocTagImpl](./ts-morph-structures.jsdoctagimpl.md) > [trailingTrivia](./ts-morph-structures.jsdoctagimpl.trailingtrivia.md) 4 | 5 | ## JSDocTagImpl.trailingTrivia property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly trailingTrivia: stringOrWriterFunction[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsxattributeimpl.initializer.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JsxAttributeImpl](./ts-morph-structures.jsxattributeimpl.md) > [initializer](./ts-morph-structures.jsxattributeimpl.initializer.md) 4 | 5 | ## JsxAttributeImpl.initializer property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | initializer?: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsxattributeimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JsxAttributeImpl](./ts-morph-structures.jsxattributeimpl.md) > [kind](./ts-morph-structures.jsxattributeimpl.kind.md) 4 | 5 | ## JsxAttributeImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.JsxAttribute; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsxattributeimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JsxAttributeImpl](./ts-morph-structures.jsxattributeimpl.md) > [name](./ts-morph-structures.jsxattributeimpl.name.md) 4 | 5 | ## JsxAttributeImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: JsxNamespacedNameStructure | string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsxelementimpl.bodytext.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JsxElementImpl](./ts-morph-structures.jsxelementimpl.md) > [bodyText](./ts-morph-structures.jsxelementimpl.bodytext.md) 4 | 5 | ## JsxElementImpl.bodyText property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | bodyText?: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsxelementimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JsxElementImpl](./ts-morph-structures.jsxelementimpl.md) > [kind](./ts-morph-structures.jsxelementimpl.kind.md) 4 | 5 | ## JsxElementImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.JsxElement; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsxelementimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JsxElementImpl](./ts-morph-structures.jsxelementimpl.md) > [name](./ts-morph-structures.jsxelementimpl.name.md) 4 | 5 | ## JsxElementImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.jsxselfclosingelementimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [JsxSelfClosingElementImpl](./ts-morph-structures.jsxselfclosingelementimpl.md) > [name](./ts-morph-structures.jsxselfclosingelementimpl.name.md) 4 | 5 | ## JsxSelfClosingElementImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.kindedtypestructure.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [KindedTypeStructure](./ts-morph-structures.kindedtypestructure.md) > [kind](./ts-morph-structures.kindedtypestructure.kind.md) 4 | 5 | ## KindedTypeStructure.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: TKind; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.mappedtypestructureimpl.type.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [MappedTypeStructureImpl](./ts-morph-structures.mappedtypestructureimpl.md) > [type](./ts-morph-structures.mappedtypestructureimpl.type.md) 4 | 5 | ## MappedTypeStructureImpl.type property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | type: TypeStructures | undefined; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.memberedstatementskey.fieldkey.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [MemberedStatementsKey](./ts-morph-structures.memberedstatementskey.md) > [fieldKey](./ts-morph-structures.memberedstatementskey.fieldkey.md) 4 | 5 | ## MemberedStatementsKey.fieldKey property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly fieldKey: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.memberedstatementskey.purpose.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [MemberedStatementsKey](./ts-morph-structures.memberedstatementskey.md) > [purpose](./ts-morph-structures.memberedstatementskey.purpose.md) 4 | 5 | ## MemberedStatementsKey.purpose property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly purpose: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.methoddeclarationimpl.docs.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [MethodDeclarationImpl](./ts-morph-structures.methoddeclarationimpl.md) > [docs](./ts-morph-structures.methoddeclarationimpl.docs.md) 4 | 5 | ## MethodDeclarationImpl.docs property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly docs: (JSDocImpl | string)[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.methoddeclarationimpl.isabstract.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [MethodDeclarationImpl](./ts-morph-structures.methoddeclarationimpl.md) > [isAbstract](./ts-morph-structures.methoddeclarationimpl.isabstract.md) 4 | 5 | ## MethodDeclarationImpl.isAbstract property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isAbstract: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.methoddeclarationimpl.isasync.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [MethodDeclarationImpl](./ts-morph-structures.methoddeclarationimpl.md) > [isAsync](./ts-morph-structures.methoddeclarationimpl.isasync.md) 4 | 5 | ## MethodDeclarationImpl.isAsync property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isAsync: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.methoddeclarationimpl.isstatic.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [MethodDeclarationImpl](./ts-morph-structures.methoddeclarationimpl.md) > [isStatic](./ts-morph-structures.methoddeclarationimpl.isstatic.md) 4 | 5 | ## MethodDeclarationImpl.isStatic property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isStatic: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.methoddeclarationimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [MethodDeclarationImpl](./ts-morph-structures.methoddeclarationimpl.md) > [kind](./ts-morph-structures.methoddeclarationimpl.kind.md) 4 | 5 | ## MethodDeclarationImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.Method; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.methoddeclarationimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [MethodDeclarationImpl](./ts-morph-structures.methoddeclarationimpl.md) > [name](./ts-morph-structures.methoddeclarationimpl.name.md) 4 | 5 | ## MethodDeclarationImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.methodsignatureimpl.docs.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [MethodSignatureImpl](./ts-morph-structures.methodsignatureimpl.md) > [docs](./ts-morph-structures.methodsignatureimpl.docs.md) 4 | 5 | ## MethodSignatureImpl.docs property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly docs: (JSDocImpl | string)[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.methodsignatureimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [MethodSignatureImpl](./ts-morph-structures.methodsignatureimpl.md) > [kind](./ts-morph-structures.methodsignatureimpl.kind.md) 4 | 5 | ## MethodSignatureImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.MethodSignature; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.methodsignatureimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [MethodSignatureImpl](./ts-morph-structures.methodsignatureimpl.md) > [name](./ts-morph-structures.methodsignatureimpl.name.md) 4 | 5 | ## MethodSignatureImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.moduledeclarationimpl.docs.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ModuleDeclarationImpl](./ts-morph-structures.moduledeclarationimpl.md) > [docs](./ts-morph-structures.moduledeclarationimpl.docs.md) 4 | 5 | ## ModuleDeclarationImpl.docs property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly docs: (JSDocImpl | string)[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.moduledeclarationimpl.isexported.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ModuleDeclarationImpl](./ts-morph-structures.moduledeclarationimpl.md) > [isExported](./ts-morph-structures.moduledeclarationimpl.isexported.md) 4 | 5 | ## ModuleDeclarationImpl.isExported property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isExported: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.moduledeclarationimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ModuleDeclarationImpl](./ts-morph-structures.moduledeclarationimpl.md) > [kind](./ts-morph-structures.moduledeclarationimpl.kind.md) 4 | 5 | ## ModuleDeclarationImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.Module; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.moduledeclarationimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ModuleDeclarationImpl](./ts-morph-structures.moduledeclarationimpl.md) > [name](./ts-morph-structures.moduledeclarationimpl.name.md) 4 | 5 | ## ModuleDeclarationImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.namednodestructureclassifc.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [NamedNodeStructureClassIfc](./ts-morph-structures.namednodestructureclassifc.md) > [name](./ts-morph-structures.namednodestructureclassifc.name.md) 4 | 5 | ## NamedNodeStructureClassIfc.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.parameterdeclarationimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ParameterDeclarationImpl](./ts-morph-structures.parameterdeclarationimpl.md) > [name](./ts-morph-structures.parameterdeclarationimpl.name.md) 4 | 5 | ## ParameterDeclarationImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.parametertypestructureimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [ParameterTypeStructureImpl](./ts-morph-structures.parametertypestructureimpl.md) > [name](./ts-morph-structures.parametertypestructureimpl.name.md) 4 | 5 | ## ParameterTypeStructureImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.prefixunaryoperator.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [PrefixUnaryOperator](./ts-morph-structures.prefixunaryoperator.md) 4 | 5 | ## PrefixUnaryOperator type 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | export type PrefixUnaryOperator = "..." | "keyof" | "typeof" | "readonly" | "unique"; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.propertyassignmentimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [PropertyAssignmentImpl](./ts-morph-structures.propertyassignmentimpl.md) > [name](./ts-morph-structures.propertyassignmentimpl.name.md) 4 | 5 | ## PropertyAssignmentImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.propertydeclarationimpl.isstatic.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [PropertyDeclarationImpl](./ts-morph-structures.propertydeclarationimpl.md) > [isStatic](./ts-morph-structures.propertydeclarationimpl.isstatic.md) 4 | 5 | ## PropertyDeclarationImpl.isStatic property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isStatic: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.propertydeclarationimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [PropertyDeclarationImpl](./ts-morph-structures.propertydeclarationimpl.md) > [name](./ts-morph-structures.propertydeclarationimpl.name.md) 4 | 5 | ## PropertyDeclarationImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.propertysignatureimpl.docs.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [PropertySignatureImpl](./ts-morph-structures.propertysignatureimpl.md) > [docs](./ts-morph-structures.propertysignatureimpl.docs.md) 4 | 5 | ## PropertySignatureImpl.docs property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly docs: (JSDocImpl | string)[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.propertysignatureimpl.isreadonly.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [PropertySignatureImpl](./ts-morph-structures.propertysignatureimpl.md) > [isReadonly](./ts-morph-structures.propertysignatureimpl.isreadonly.md) 4 | 5 | ## PropertySignatureImpl.isReadonly property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isReadonly: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.propertysignatureimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [PropertySignatureImpl](./ts-morph-structures.propertysignatureimpl.md) > [name](./ts-morph-structures.propertysignatureimpl.name.md) 4 | 5 | ## PropertySignatureImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.propertysignatureimpl.type.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [PropertySignatureImpl](./ts-morph-structures.propertysignatureimpl.md) > [type](./ts-morph-structures.propertysignatureimpl.type.md) 4 | 5 | ## PropertySignatureImpl.type property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | type?: stringOrWriterFunction | undefined; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.setaccessordeclarationimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [SetAccessorDeclarationImpl](./ts-morph-structures.setaccessordeclarationimpl.md) > [name](./ts-morph-structures.setaccessordeclarationimpl.name.md) 4 | 5 | ## SetAccessorDeclarationImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.sourcefileimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [SourceFileImpl](./ts-morph-structures.sourcefileimpl.md) > [kind](./ts-morph-structures.sourcefileimpl.kind.md) 4 | 5 | ## SourceFileImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.SourceFile; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.spreadassignmentimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [SpreadAssignmentImpl](./ts-morph-structures.spreadassignmentimpl.md) > [kind](./ts-morph-structures.spreadassignmentimpl.kind.md) 4 | 5 | ## SpreadAssignmentImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind: StructureKind.SpreadAssignment; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.stringorwriterfunction.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [stringOrWriterFunction](./ts-morph-structures.stringorwriterfunction.md) 4 | 5 | ## stringOrWriterFunction type 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | export type stringOrWriterFunction = string | WriterFunction; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.tupletypestructureimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [TupleTypeStructureImpl](./ts-morph-structures.tupletypestructureimpl.md) > [kind](./ts-morph-structures.tupletypestructureimpl.kind.md) 4 | 5 | ## TupleTypeStructureImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind = TypeStructureKind.Tuple; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.typealiasdeclarationimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [TypeAliasDeclarationImpl](./ts-morph-structures.typealiasdeclarationimpl.md) > [name](./ts-morph-structures.typealiasdeclarationimpl.name.md) 4 | 5 | ## TypeAliasDeclarationImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.typednodetypestructure.type.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [TypedNodeTypeStructure](./ts-morph-structures.typednodetypestructure.md) > [type](./ts-morph-structures.typednodetypestructure.type.md) 4 | 5 | ## TypedNodeTypeStructure.type property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | type: stringOrWriterFunction | undefined; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.uniontypestructureimpl.kind.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [UnionTypeStructureImpl](./ts-morph-structures.uniontypestructureimpl.md) > [kind](./ts-morph-structures.uniontypestructureimpl.kind.md) 4 | 5 | ## UnionTypeStructureImpl.kind property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly kind = TypeStructureKind.Union; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.variabledeclarationimpl.name.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [VariableDeclarationImpl](./ts-morph-structures.variabledeclarationimpl.md) > [name](./ts-morph-structures.variabledeclarationimpl.name.md) 4 | 5 | ## VariableDeclarationImpl.name property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | name: string; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.variablestatementimpl.docs.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [VariableStatementImpl](./ts-morph-structures.variablestatementimpl.md) > [docs](./ts-morph-structures.variablestatementimpl.docs.md) 4 | 5 | ## VariableStatementImpl.docs property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | readonly docs: (JSDocImpl | string)[]; 11 | ``` 12 | -------------------------------------------------------------------------------- /docs/ts-morph-structures/api/ts-morph-structures.variablestatementimpl.isexported.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | [Home](./index.md) > [ts-morph-structures](./ts-morph-structures.md) > [VariableStatementImpl](./ts-morph-structures.variablestatementimpl.md) > [isExported](./ts-morph-structures.variablestatementimpl.isexported.md) 4 | 5 | ## VariableStatementImpl.isExported property 6 | 7 | **Signature:** 8 | 9 | ```typescript 10 | isExported: boolean; 11 | ``` 12 | -------------------------------------------------------------------------------- /old-0.9/docs/concepts/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Building Membranes in JavaScript 4 | 5 | 7 | 8 | 9 |

This page should automatically redirect to 10 | https://ajvincent.github.io/Membrane-concepts/ .

12 | 13 | 14 | -------------------------------------------------------------------------------- /old-0.9/docs/dist/browser/assert.js: -------------------------------------------------------------------------------- 1 | function assert(mustBeTrue, errMsg) { 2 | if (!mustBeTrue) { 3 | debugger; 4 | throw new Error("AssertionError: " + errMsg); 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /old-0.9/docs/dist/browser/fireJasmine.js: -------------------------------------------------------------------------------- 1 | window.addEventListener("load", function() { 2 | window.setTimeout(function() { 3 | jasmine.getEnv().execute(); 4 | }, 100); 5 | }, {once: true, capture: true}); 6 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/blob/BlobLoader.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Blob Loader 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/help.css: -------------------------------------------------------------------------------- 1 | #help-and-notes > * { 2 | height: 600px; 3 | } 4 | 5 | #help-and-notes > article { 6 | overflow: scroll; 7 | } 8 | 9 | #help-and-notes > *:not([data-selected="true"]) { 10 | display: none; 11 | } 12 | 13 | #help-and-notes > textarea { 14 | height: 99%; 15 | width: 99%; 16 | resize: none; 17 | } 18 | 19 | button.helpButton { 20 | background-image: url("icons/Tango-style_question_icon.svg"); 21 | } 22 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/icons/arrowicon-down.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/icons/arrowicon-up.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/icons/close.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 8 | 9 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/icons/minusicon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/icons/notes-icon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/icons/plusicon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 8 | 9 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/mainPanels/membrane.css: -------------------------------------------------------------------------------- 1 | #grid-outer-membrane-objectgraphs { 2 | display: grid; 3 | grid-template-columns: 110px 80px 20px; 4 | } 5 | 6 | #grid-outer-membrane-objectgraphs > button.deleteRow { 7 | background-image: url("../icons/close.svg"); 8 | } 9 | 10 | #grid-outer-membrane-objectgraphs > button.addRow { 11 | background-image: url("../icons/plusicon.svg"); 12 | grid-column-start: -2; 13 | } 14 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/multistate/multistate.css: -------------------------------------------------------------------------------- 1 | button.multistate { 2 | padding: 0; 3 | border: 1px dashed black; 4 | background-color: beige; 5 | font-family: monospace; 6 | font-size: 1em; 7 | width: 50px; 8 | text-align: center; 9 | cursor: pointer; 10 | } 11 | 12 | button.multistate > span:not(:first-child) { 13 | display: none; 14 | } 15 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/multistate/multistate.js: -------------------------------------------------------------------------------- 1 | function MultistateHandler(event) { 2 | let multistate = event.currentTarget; 3 | multistate.appendChild(multistate.firstElementChild); 4 | updateMultistate(multistate); 5 | } 6 | 7 | function updateMultistate(multistate) { 8 | multistate.value = multistate.firstElementChild.dataset.state; 9 | } 10 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/other.css: -------------------------------------------------------------------------------- 1 | #grid-outer-start-postSubmitError { 2 | color: red; 3 | white-space: pre; 4 | font-family: monospace; 5 | } 6 | 7 | #iframe-box { 8 | display: none; 9 | } 10 | 11 | *.CodeMirror .readOnly { 12 | background-color: #cccccc; 13 | } 14 | 15 | *.CodeMirror.disabled { 16 | opacity: 0.3; 17 | } 18 | 19 | h2 { 20 | margin-top: 0; 21 | margin-bottom: 0; 22 | } 23 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/spec-render.js: -------------------------------------------------------------------------------- 1 | window.addEventListener("load", function() { 2 | let editor = CodeMirrorManager.buildNewEditor( 3 | document.getElementById("root-source"), 4 | {readOnly: true} 5 | ); 6 | editor.setSize(800, 300); 7 | 8 | editor = CodeMirrorManager.buildNewEditor( 9 | document.getElementById("distortions"), 10 | {readOnly: true} 11 | ); 12 | editor.setSize(800, 300); 13 | }, true); 14 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/tests/promiseDone.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Promise invocation test 5 | 6 |

Hello World

7 | 8 | -------------------------------------------------------------------------------- /old-0.9/docs/gui/tests/promiseDone.js: -------------------------------------------------------------------------------- 1 | it("Jasmine allows using a Promise to load a specific webpage test", async function() { 2 | let document = await getDocumentLoadPromise("base/gui/tests/promiseDone.html"); 3 | expect(document.getElementById("foo")).toBe(document.body); 4 | }); 5 | -------------------------------------------------------------------------------- /old-0.9/docs/html-framework/index.css: -------------------------------------------------------------------------------- 1 | #editTable td { 2 | border: 1px solid black; 3 | } 4 | 5 | iframe { 6 | border: none; 7 | width: 600px; 8 | height: 300px; 9 | } 10 | -------------------------------------------------------------------------------- /old-0.9/docs/html-framework/utilities/CodeMirrorManager.js: -------------------------------------------------------------------------------- 1 | const CodeMirrorManager = { 2 | buildNewEditor: function(textarea, lang) 3 | { 4 | const options = { 5 | mode: lang, 6 | lineNumbers: true, 7 | foldGutter: true, 8 | gutters: [ 9 | "CodeMirror-linenumbers", 10 | "CodeMirror-foldgutter" 11 | ], 12 | }; 13 | const editor = CodeMirror.fromTextArea(textarea, options); 14 | editor.setSize(400, 300); 15 | return editor; 16 | }, 17 | }; 18 | -------------------------------------------------------------------------------- /old-0.9/docs/lab/error.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Error 6 | 7 | 8 | 9 | 10 |

Error: Test framework not run

11 | 12 | 13 | -------------------------------------------------------------------------------- /old-0.9/docs/lab/lab.js: -------------------------------------------------------------------------------- 1 | window.addEventListener( 2 | "DOMContentLoaded", 3 | function() 4 | { 5 | ObjectGraphManager.init(); 6 | FreeformManager.init(); 7 | TestDriver.init(); 8 | }, 9 | true 10 | ); 11 | 12 | window.addEventListener("load", function() { 13 | TestDriver.firstRun(); 14 | }, true); 15 | -------------------------------------------------------------------------------- /old-0.9/docs/lab/utilities/CodeMirrorManager.js: -------------------------------------------------------------------------------- 1 | const CodeMirrorManager = { 2 | buildNewEditor: function(textarea) 3 | { 4 | const options = { 5 | name: "javascript", 6 | lineNumbers: true, 7 | foldGutter: true, 8 | gutters: [ 9 | "CodeMirror-linenumbers", 10 | "CodeMirror-foldgutter" 11 | ], 12 | }; 13 | const editor = CodeMirror.fromTextArea(textarea, options); 14 | editor.setSize(600, 300); 15 | return editor; 16 | }, 17 | }; 18 | 19 | 20 | -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/.gitattributes: -------------------------------------------------------------------------------- 1 | *.txt text 2 | *.js text 3 | *.html text 4 | *.md text 5 | *.json text 6 | *.yml text 7 | *.css text 8 | *.svg text 9 | -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/.npmignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /demo 3 | /doc 4 | /test 5 | /test*.html 6 | /index.html 7 | /mode/*/*test.js 8 | /mode/*/*.html 9 | /mode/index.html 10 | .* 11 | bin 12 | -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - stable 4 | sudo: false 5 | -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/addon/display/fullscreen.css: -------------------------------------------------------------------------------- 1 | .CodeMirror-fullscreen { 2 | position: fixed; 3 | top: 0; left: 0; right: 0; bottom: 0; 4 | height: auto; 5 | z-index: 9; 6 | } 7 | -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/addon/search/matchesonscrollbar.css: -------------------------------------------------------------------------------- 1 | .CodeMirror-search-match { 2 | background: gold; 3 | border-top: 1px solid orange; 4 | border-bottom: 1px solid orange; 5 | -moz-box-sizing: border-box; 6 | box-sizing: border-box; 7 | opacity: .5; 8 | } 9 | -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/bin/authors.sh: -------------------------------------------------------------------------------- 1 | # Combine existing list of authors with everyone known in git, sort, add header. 2 | tail --lines=+3 AUTHORS > AUTHORS.tmp 3 | git log --format='%aN' >> AUTHORS.tmp 4 | echo -e "List of CodeMirror contributors. Updated before every release.\n" > AUTHORS 5 | sort -u AUTHORS.tmp >> AUTHORS 6 | rm -f AUTHORS.tmp 7 | -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/bin/lint: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | process.exit(require("../test/lint").ok ? 0 : 1); 4 | -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/doc/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvincent/es-membrane/7a9023c53b7395cda3f623745d81edeb95e46ddf/old-0.9/docs/libraries/codemirror-5.25.2/doc/logo.png -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/doc/yinyang.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvincent/es-membrane/7a9023c53b7395cda3f623745d81edeb95e46ddf/old-0.9/docs/libraries/codemirror-5.25.2/doc/yinyang.png -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/mode/tiddlywiki/tiddlywiki.css: -------------------------------------------------------------------------------- 1 | span.cm-underlined { 2 | text-decoration: underline; 3 | } 4 | span.cm-strikethrough { 5 | text-decoration: line-through; 6 | } 7 | span.cm-brace { 8 | color: #170; 9 | font-weight: bold; 10 | } 11 | span.cm-table { 12 | color: blue; 13 | font-weight: bold; 14 | } 15 | -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/src/codemirror.js: -------------------------------------------------------------------------------- 1 | import { CodeMirror } from "./edit/main" 2 | 3 | export default CodeMirror 4 | -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/src/edit/utils.js: -------------------------------------------------------------------------------- 1 | import { clearCaches } from "../measurement/position_measurement" 2 | 3 | export function themeChanged(cm) { 4 | cm.display.wrapper.className = cm.display.wrapper.className.replace(/\s*cm-s-\S+/g, "") + 5 | cm.options.theme.replace(/(^|\s)\s*/g, " cm-s-") 6 | clearCaches(cm) 7 | } 8 | -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/src/line/saw_special_spans.js: -------------------------------------------------------------------------------- 1 | // Optimize some code when these features are not used. 2 | export let sawReadOnlySpans = false, sawCollapsedSpans = false 3 | 4 | export function seeReadOnlySpans() { 5 | sawReadOnlySpans = true 6 | } 7 | 8 | export function seeCollapsedSpans() { 9 | sawCollapsedSpans = true 10 | } 11 | -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/test/mode_test.css: -------------------------------------------------------------------------------- 1 | .mt-output .mt-token { 2 | border: 1px solid #ddd; 3 | white-space: pre; 4 | font-family: "Consolas", monospace; 5 | text-align: center; 6 | } 7 | 8 | .mt-output .mt-style { 9 | font-size: x-small; 10 | } 11 | 12 | .mt-output .mt-state { 13 | font-size: x-small; 14 | vertical-align: top; 15 | } 16 | 17 | .mt-output .mt-state-row { 18 | display: none; 19 | } 20 | 21 | .mt-state-unhide .mt-output .mt-state-row { 22 | display: table-row; 23 | } 24 | -------------------------------------------------------------------------------- /old-0.9/docs/libraries/codemirror-5.25.2/theme/ambiance-mobile.css: -------------------------------------------------------------------------------- 1 | .cm-s-ambiance.CodeMirror { 2 | -webkit-box-shadow: none; 3 | -moz-box-shadow: none; 4 | box-shadow: none; 5 | } 6 | -------------------------------------------------------------------------------- /old-0.9/docs/libraries/jasmine-2.8.0/jasmine_favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvincent/es-membrane/7a9023c53b7395cda3f623745d81edeb95e46ddf/old-0.9/docs/libraries/jasmine-2.8.0/jasmine_favicon.png -------------------------------------------------------------------------------- /old-0.9/mocks/dampSymbol.js: -------------------------------------------------------------------------------- 1 | var DAMP = Symbol("damp"); 2 | -------------------------------------------------------------------------------- /old-0.9/mocks/intro.js.in: -------------------------------------------------------------------------------- 1 | function MembraneMocks(includeDamp, logger, mockOptions) { 2 | "use strict"; 3 | includeDamp = Boolean(includeDamp); 4 | if (!mockOptions) 5 | mockOptions = {}; 6 | 7 | var Mocks = {}; 8 | -------------------------------------------------------------------------------- /old-0.9/mocks/outro.js.in: -------------------------------------------------------------------------------- 1 | } 2 | -------------------------------------------------------------------------------- /old-0.9/mocks/return.js: -------------------------------------------------------------------------------- 1 | // The bare essentials. 2 | /* 3 | var Mocks = { 4 | wet: { 5 | doc: wetDocument, 6 | Node: NodeWet, 7 | Element: ElementWet, 8 | }, 9 | dry: { 10 | doc: dryDocument, 11 | Node: NodeDry, 12 | Element: ElementDry, 13 | }, 14 | 15 | membrane: dryWetMB 16 | }; 17 | */ 18 | 19 | if (includeDamp) 20 | dampObjectGraph(Mocks); 21 | 22 | return Mocks; 23 | -------------------------------------------------------------------------------- /old-0.9/mocks/static.js: -------------------------------------------------------------------------------- 1 | const parts = MembraneMocks(); 2 | -------------------------------------------------------------------------------- /old-0.9/source/ProxyHandlers/Base.js: -------------------------------------------------------------------------------- 1 | // A ProxyHandler base prototype, for instanceof checks. 2 | MembraneProxyHandlers.Base = function() {}; 3 | allTraps.forEach((trapName) => 4 | MembraneProxyHandlers.Base.prototype[trapName] = NOT_IMPLEMENTED 5 | ); 6 | -------------------------------------------------------------------------------- /old-0.9/source/ProxyHandlers/Forwarding.js: -------------------------------------------------------------------------------- 1 | MembraneProxyHandlers.Forwarding = function() { 2 | this.nextHandler = null; 3 | }; 4 | 5 | MembraneProxyHandlers.Forwarding.prototype = new MembraneProxyHandlers.Base(); 6 | 7 | { 8 | const proto = MembraneProxyHandlers.Forwarding.prototype; 9 | allTraps.forEach((trapName) => 10 | proto[trapName] = function(...args) { 11 | return this.nextHandler[trapName].apply(this.nextHandler, args); 12 | } 13 | ); 14 | } 15 | -------------------------------------------------------------------------------- /old-0.9/source/ProxyHandlers/intro.js: -------------------------------------------------------------------------------- 1 | var MembraneProxyHandlers = {}; 2 | -------------------------------------------------------------------------------- /old-0.9/spec/non-membrane/instanceof.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | it("Reflect Proxy objects correctly implement instanceof", function() { 3 | function a() {} 4 | const {proxy, revoke} = Proxy.revocable(a, Reflect); 5 | const A = proxy; 6 | 7 | const b = new a(); 8 | expect(b instanceof a).toBe(true); 9 | expect(b instanceof A).toBe(true); 10 | 11 | const B = new A(); 12 | expect(B instanceof a).toBe(true); 13 | expect(B instanceof A).toBe(true); 14 | }); 15 | -------------------------------------------------------------------------------- /old-0.9/spec/overrides/empty.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ajvincent/es-membrane/7a9023c53b7395cda3f623745d81edeb95e46ddf/old-0.9/spec/overrides/empty.js -------------------------------------------------------------------------------- /old-0.9/spec/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_dir": "spec", 3 | "spec_files": [ 4 | "**/*.js" 5 | ], 6 | "helpers": [ 7 | "helpers/**/*.js" 8 | ], 9 | "stopSpecOnExpectationFailure": false, 10 | "random": false 11 | } 12 | -------------------------------------------------------------------------------- /old-0.9/wrappers/browser/assert.js: -------------------------------------------------------------------------------- 1 | function assert(mustBeTrue, errMsg) { 2 | if (!mustBeTrue) { 3 | debugger; 4 | throw new Error("AssertionError: " + errMsg); 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /old-0.9/wrappers/browser/fireJasmine.js: -------------------------------------------------------------------------------- 1 | window.addEventListener("load", function() { 2 | window.setTimeout(function() { 3 | jasmine.getEnv().execute(); 4 | }, 100); 5 | }, {once: true, capture: true}); 6 | -------------------------------------------------------------------------------- /old-0.9/wrappers/browser/handlers-intro.js.in: -------------------------------------------------------------------------------- 1 | var MembraneProxyHandlers = (function() { 2 | -------------------------------------------------------------------------------- /old-0.9/wrappers/browser/handlers-outro.js.in: -------------------------------------------------------------------------------- 1 | return MembraneProxyHandlers; 2 | })(); 3 | -------------------------------------------------------------------------------- /old-0.9/wrappers/browser/membrane-intro.js.in: -------------------------------------------------------------------------------- 1 | var Membrane = (function() { 2 | // entering Membrane pseudo-module definition 3 | 4 | -------------------------------------------------------------------------------- /old-0.9/wrappers/browser/membrane-outro.js.in: -------------------------------------------------------------------------------- 1 | 2 | // exiting Membrane pseudo-module definition 3 | return Membrane; 4 | })(); 5 | -------------------------------------------------------------------------------- /old-0.9/wrappers/node/export-DimensionalMap.js: -------------------------------------------------------------------------------- 1 | module.exports.DimensionalMap = DimensionalMap; 2 | -------------------------------------------------------------------------------- /old-0.9/wrappers/node/export-membrane.js: -------------------------------------------------------------------------------- 1 | module.exports.Membrane = Membrane; 2 | -------------------------------------------------------------------------------- /old-0.9/wrappers/node/export-mocks.js: -------------------------------------------------------------------------------- 1 | module.exports.loggerLib = loggerLib; 2 | module.exports.MembraneMocks = MembraneMocks; 3 | module.exports.DAMP = DAMP; 4 | -------------------------------------------------------------------------------- /old-0.9/wrappers/node/export-proxyHandlers.js: -------------------------------------------------------------------------------- 1 | module.exports.MembraneProxyHandlers = MembraneProxyHandlers; 2 | -------------------------------------------------------------------------------- /old-0.9/wrappers/node/export-utilities.js: -------------------------------------------------------------------------------- 1 | module.exports.NOT_IMPLEMENTED = NOT_IMPLEMENTED; 2 | module.exports.NOT_IMPLEMENTED_DESC = NOT_IMPLEMENTED_DESC; 3 | module.exports.DataDescriptor = DataDescriptor; 4 | module.exports.AccessorDescriptor = AccessorDescriptor; 5 | module.exports.isDataDescriptor = isDataDescriptor; 6 | module.exports.isAccessorDescriptor = isAccessorDescriptor; 7 | module.exports.isGenericDescriptor = isGenericDescriptor; 8 | module.exports.allTraps = allTraps; 9 | -------------------------------------------------------------------------------- /old-0.9/wrappers/node/require-assert.js: -------------------------------------------------------------------------------- 1 | var assert = require("assert"); 2 | -------------------------------------------------------------------------------- /old-0.9/wrappers/node/require-membrane.js: -------------------------------------------------------------------------------- 1 | var { Membrane } = require("./es-membrane.js"); 2 | -------------------------------------------------------------------------------- /old-0.9/wrappers/node/require-proxyHandlers.js: -------------------------------------------------------------------------------- 1 | var { MembraneProxyHandlers } = require("./proxyHandlers.js"); 2 | -------------------------------------------------------------------------------- /old-0.9/wrappers/node/require-utilities.js: -------------------------------------------------------------------------------- 1 | var { 2 | NOT_IMPLEMENTED, 3 | NOT_IMPLEMENTED_DESC, 4 | DataDescriptor, 5 | AccessorDescriptor, 6 | isDataDescriptor, 7 | isAccessorDescriptor, 8 | allTraps, 9 | } = require("./utilities.js"); 10 | -------------------------------------------------------------------------------- /old-0.9/wrappers/useStrict.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | -------------------------------------------------------------------------------- /old-build/.gitignore: -------------------------------------------------------------------------------- 1 | **/*.mjs.map 2 | **/*.d.mts 3 | **/tsconfig.json 4 | tsconfig.json 5 | **/ts-stdout.txt 6 | generated 7 | spec-generated 8 | -------------------------------------------------------------------------------- /old-build/source/main.mjs: -------------------------------------------------------------------------------- 1 | import BPSet from "./targets.mjs"; 2 | const targets = process.argv.slice(2); 3 | targets.forEach(t => BPSet.main.addSubtarget(t)); 4 | await BPSet.main.run(); 5 | //# sourceMappingURL=main.mjs.map -------------------------------------------------------------------------------- /old-build/source/main.mts: -------------------------------------------------------------------------------- 1 | import BPSet from "./targets.mjs"; 2 | 3 | const targets = process.argv.slice(2); 4 | targets.forEach(t => BPSet.main.addSubtarget(t)); 5 | await BPSet.main.run(); 6 | -------------------------------------------------------------------------------- /old-build/source/mainWithBuild.mjs: -------------------------------------------------------------------------------- 1 | import { runModule } from "./utilities/runModule.mjs"; 2 | await runModule("./build/source/main.mjs", ["build:rebuild"]); 3 | await runModule("./build/source/main.mjs", process.argv.slice(2)); 4 | //# sourceMappingURL=mainWithBuild.mjs.map -------------------------------------------------------------------------------- /old-build/source/mainWithBuild.mts: -------------------------------------------------------------------------------- 1 | import { runModule } from "./utilities/runModule.mjs"; 2 | 3 | await runModule("./build/source/main.mjs", ["build:rebuild"]); 4 | await runModule("./build/source/main.mjs", process.argv.slice(2)); 5 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "es-membrane-monorepo", 3 | "private": true, 4 | "version": "1.0.0", 5 | "description": "Monorepo for es-membrane projects.", 6 | "author": "Alexander J. Vincent ", 7 | "workspaces": [ 8 | "./projects/*" 9 | ] 10 | } 11 | -------------------------------------------------------------------------------- /projects/build-utilities/.gitignore: -------------------------------------------------------------------------------- 1 | dist/spec 2 | -------------------------------------------------------------------------------- /projects/build-utilities/Gulpfile.js: -------------------------------------------------------------------------------- 1 | export { clean } from "./build/clean.js"; 2 | import compile from "./build/invokeTSC.js"; 3 | import test from "./build/runTests.js"; 4 | 5 | export { compile, test }; 6 | -------------------------------------------------------------------------------- /projects/build-utilities/build/clean.js: -------------------------------------------------------------------------------- 1 | import fs from "node:fs/promises"; 2 | import path from "node:path"; 3 | import { 4 | fileURLToPath, 5 | } from "node:url"; 6 | 7 | const distDir = path.normalize(path.join( 8 | fileURLToPath(import.meta.url), "../../dist" 9 | )); 10 | 11 | export async function clean() { 12 | return fs.rm(distDir, { recursive: true, force: true }); 13 | } 14 | -------------------------------------------------------------------------------- /projects/build-utilities/build/internal/constants.js: -------------------------------------------------------------------------------- 1 | import path from "node:path"; 2 | import { fileURLToPath } from "node:url"; 3 | export const projectRoot = path.normalize(path.join(fileURLToPath(import.meta.url), "../../..")); 4 | export const monorepoRoot = path.normalize(path.join(projectRoot, "../..")); 5 | -------------------------------------------------------------------------------- /projects/build-utilities/build/runTests.js: -------------------------------------------------------------------------------- 1 | import path from "node:path"; 2 | 3 | import { 4 | projectRoot 5 | } from "./internal/constants.js"; 6 | 7 | import { 8 | series 9 | } from "gulp"; 10 | 11 | import invokeTSC from "./invokeTSC.js"; 12 | 13 | async function runTests() { 14 | const { 15 | runJasmine 16 | } = await import("../dist/source/runJasmine.js"); 17 | await runJasmine(path.join(projectRoot, "spec/support/jasmine.json")); 18 | } 19 | 20 | export default series(invokeTSC, runTests); 21 | -------------------------------------------------------------------------------- /projects/build-utilities/dist/source/InvokeTSC.d.ts: -------------------------------------------------------------------------------- 1 | export declare function InvokeTSC(pathToTSConfig: string, excludesGlobs: string[]): Promise; 2 | export declare function InvokeTSC_excludeDirs(projectRoot: string): Promise; 3 | -------------------------------------------------------------------------------- /projects/build-utilities/dist/source/assertRepoIsClean.d.ts: -------------------------------------------------------------------------------- 1 | import { execFile } from "node:child_process"; 2 | export declare const execAsync: typeof execFile.__promisify__; 3 | export declare function assertRepoIsClean(): Promise; 4 | -------------------------------------------------------------------------------- /projects/build-utilities/dist/source/childProcess.d.ts: -------------------------------------------------------------------------------- 1 | export declare function asyncSpawn(pathToExecutable: string, cmdLineArgs: readonly string[], cwd: string): Promise; 2 | export declare function asyncFork(pathToJSFile: string, args: readonly string[], cwd: string): Promise; 3 | -------------------------------------------------------------------------------- /projects/build-utilities/dist/source/cleanTSC_output.d.ts: -------------------------------------------------------------------------------- 1 | export declare function cleanTSC_Output(this: void, projectRoot: string, topDirs: readonly string[]): Promise; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/dist/source/constants.d.ts: -------------------------------------------------------------------------------- 1 | export declare const projectRoot: string; 2 | export declare const monorepoRoot: string; 3 | -------------------------------------------------------------------------------- /projects/build-utilities/dist/source/constants.js: -------------------------------------------------------------------------------- 1 | import path from "node:path"; 2 | import { fileURLToPath, } from "node:url"; 3 | export const projectRoot = path.normalize(path.join(fileURLToPath(import.meta.url), "../../..")); 4 | export const monorepoRoot = path.normalize(path.join(projectRoot, "../..")); 5 | -------------------------------------------------------------------------------- /projects/build-utilities/dist/source/overwriteFileIfDifferent.d.ts: -------------------------------------------------------------------------------- 1 | export declare function overwriteFileIfDifferent(isContents: boolean, sourceOrContents: string, destination: string): Promise; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/dist/source/recursiveGulp.d.ts: -------------------------------------------------------------------------------- 1 | import type { series } from "gulp"; 2 | export declare function recursiveGulp(projectRoot: string, localPathToDir: string): ReturnType; 3 | -------------------------------------------------------------------------------- /projects/build-utilities/dist/source/runEslint.d.ts: -------------------------------------------------------------------------------- 1 | export declare function runESLint(cwd: string, files: string[]): Promise; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/dist/source/runJasmine.d.ts: -------------------------------------------------------------------------------- 1 | export declare function runJasmine(pathToConfigFile: string): Promise; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/dist/source/runPrettify.d.ts: -------------------------------------------------------------------------------- 1 | export declare function runPrettify(absolutePath: string): Promise; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/dist/source/synchronizeDirectories.d.ts: -------------------------------------------------------------------------------- 1 | export declare function synchronizeDirectories(sourceTopDir: string, destinationTopDir: string): Promise; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/dist/source/tempDirWithCleanup.d.ts: -------------------------------------------------------------------------------- 1 | import { type PromiseResolver } from "./PromiseTypes.js"; 2 | export interface TemporaryDirWithPromise { 3 | tempDir: string; 4 | resolve: PromiseResolver; 5 | promise: Promise; 6 | } 7 | /** 8 | * Create a temporary directory with a promise to clean it up later. 9 | * 10 | * @returns The directory and promise. 11 | */ 12 | export declare function tempDirWithCleanup(): Promise; 13 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/copyBase/dest/five.ts: -------------------------------------------------------------------------------- 1 | // this is deliberate: we want to test overwriting an existing file 2 | export default "zero"; 3 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/copyBase/dest/four.ts: -------------------------------------------------------------------------------- 1 | // this is deliberate: we want to test overwriting an existing file 2 | export default "zero"; 3 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/copyBase/dest/one.ts: -------------------------------------------------------------------------------- 1 | export default "one"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/copyBase/dest/zero.ts: -------------------------------------------------------------------------------- 1 | export default "zero"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/copyBase/src/four.ts: -------------------------------------------------------------------------------- 1 | export default "four"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/copyBase/src/one.ts: -------------------------------------------------------------------------------- 1 | export default "one"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/copyBase/src/two.ts: -------------------------------------------------------------------------------- 1 | export default "two"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/copyBase/src/zero.ts: -------------------------------------------------------------------------------- 1 | export default "zero"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/synchronizeDirsBase/dest/commonFiles/fileToDelete.ts: -------------------------------------------------------------------------------- 1 | export default "fileToDelete"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/synchronizeDirsBase/dest/commonFiles/fileToModify.ts: -------------------------------------------------------------------------------- 1 | export default "this should be overwritten"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/synchronizeDirsBase/dest/commonFiles/sharedFile.ts: -------------------------------------------------------------------------------- 1 | export default "sharedFile"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/synchronizeDirsBase/dest/dirsToDelete/leftoverFile.ts: -------------------------------------------------------------------------------- 1 | export default "leftoverFile"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/synchronizeDirsBase/dest/dirsToDelete/other/baz.ts: -------------------------------------------------------------------------------- 1 | export default "baz"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/synchronizeDirsBase/dest/dirsToDelete/outerJunk/innerJunk/bar.ts: -------------------------------------------------------------------------------- 1 | export default "bar"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/synchronizeDirsBase/dest/dirsToDelete/outerJunk/innerJunk/foo.ts: -------------------------------------------------------------------------------- 1 | export default "foo"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/synchronizeDirsBase/src/commonFiles/fileToCopy.ts: -------------------------------------------------------------------------------- 1 | export default "fileToCopy"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/synchronizeDirsBase/src/commonFiles/fileToModify.ts: -------------------------------------------------------------------------------- 1 | export default "fileToModify"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/synchronizeDirsBase/src/commonFiles/sharedFile.ts: -------------------------------------------------------------------------------- 1 | export default "sharedFile"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/synchronizeDirsBase/src/dirsToCopy/addedFile.ts: -------------------------------------------------------------------------------- 1 | export default "addedFile"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/synchronizeDirsBase/src/dirsToCopy/other/three.ts: -------------------------------------------------------------------------------- 1 | export default "three"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/synchronizeDirsBase/src/dirsToCopy/outerWaste/innerWaste/one.ts: -------------------------------------------------------------------------------- 1 | export default "one"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/fixtures/synchronizeDirsBase/src/dirsToCopy/outerWaste/innerWaste/two.ts: -------------------------------------------------------------------------------- 1 | export default "two"; 2 | -------------------------------------------------------------------------------- /projects/build-utilities/source/constants.ts: -------------------------------------------------------------------------------- 1 | import path from "node:path"; 2 | import { 3 | fileURLToPath, 4 | } from "node:url"; 5 | 6 | export const projectRoot = path.normalize(path.join( 7 | fileURLToPath(import.meta.url), "../../.." 8 | )); 9 | 10 | export const monorepoRoot = path.normalize(path.join(projectRoot, "../..")); 11 | -------------------------------------------------------------------------------- /projects/build-utilities/spec/constants.ts: -------------------------------------------------------------------------------- 1 | import path from "node:path"; 2 | 3 | import { 4 | projectRoot, 5 | monorepoRoot, 6 | } from "../source/constants.js"; 7 | 8 | it("projectRoot is correct", () => { 9 | expect(path.basename(projectRoot)).toBe("build-utilities"); 10 | }); 11 | 12 | it("monorepoRoot is correct", () => { 13 | expect(path.basename(monorepoRoot)).toBe("es-membrane"); 14 | }); 15 | -------------------------------------------------------------------------------- /projects/build-utilities/spec/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_files": [ 3 | "dist/spec/**/*.js" 4 | ], 5 | "stopSpecOnExpectationFailure": false 6 | } 7 | -------------------------------------------------------------------------------- /projects/build-utilities/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "lib": ["ESNext"], 4 | "module": "NodeNext", 5 | "target": "ES2022", 6 | "moduleResolution": "NodeNext", 7 | "strict": true, 8 | "sourceMap": false, 9 | "declaration": true, 10 | 11 | "baseUrl": ".", 12 | "outDir": "dist", 13 | }, 14 | 15 | "include": [ 16 | "exports", 17 | "source", 18 | "spec" 19 | ], 20 | 21 | "extends": "@tsconfig/node20/tsconfig.json", 22 | } 23 | -------------------------------------------------------------------------------- /projects/mixin-decorators/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | *.js 3 | *.d.ts 4 | *.js.map 5 | **/*.js 6 | **/*.js.map 7 | **/*.d.ts 8 | dist/fixtures 9 | dist/spec 10 | !dist/source/**/*.js 11 | !dist/source/**/*.d.ts 12 | !fixtures/**/types/**/*.d.ts 13 | !source/**/types/**/*.d.ts 14 | !source/MultiMixinBuilder.js 15 | !source/MultiMixinBuilder.d.ts 16 | !exports.d.ts 17 | mixin-decorators-*.tgz 18 | -------------------------------------------------------------------------------- /projects/mixin-decorators/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | // @ts-check 2 | 3 | import eslint from '@eslint/js'; 4 | import tseslint from 'typescript-eslint'; 5 | 6 | export default tseslint.config( 7 | eslint.configs.recommended, 8 | ...tseslint.configs.recommended, 9 | ); 10 | -------------------------------------------------------------------------------- /projects/mixin-decorators/fixtures/MixinBase.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * @internal 3 | */ 4 | export default class MixinBase { 5 | // eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any 6 | constructor(...args: any[]) 7 | { 8 | // do nothing 9 | } 10 | } 11 | Object.freeze(MixinBase.prototype); 12 | -------------------------------------------------------------------------------- /projects/mixin-decorators/fixtures/NumberStringClass.ts: -------------------------------------------------------------------------------- 1 | export default 2 | class NumberStringClass 3 | { 4 | constructor(...args: unknown[]) { 5 | void(args); 6 | } 7 | 8 | repeatForward( 9 | s: string, 10 | n: number 11 | ): string 12 | { 13 | return s.repeat(n); 14 | } 15 | 16 | repeatBack( 17 | n: number, 18 | s: string 19 | ): string 20 | { 21 | return s.repeat(n); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /projects/mixin-decorators/fixtures/types/NumberStringType.d.ts: -------------------------------------------------------------------------------- 1 | export type NumberStringType = { 2 | repeatForward(s: string, n: number): string; 3 | repeatBack(n: number, s: string): string; 4 | }; 5 | -------------------------------------------------------------------------------- /projects/mixin-decorators/gulp-utilities/.gitignore: -------------------------------------------------------------------------------- 1 | !assertRepoIsClean.js 2 | -------------------------------------------------------------------------------- /projects/mixin-decorators/gulp-utilities/assertRepoIsClean.js: -------------------------------------------------------------------------------- 1 | import { assertRepoIsClean } from "@ajvincent/build-utilities"; 2 | await assertRepoIsClean(); 3 | -------------------------------------------------------------------------------- /projects/mixin-decorators/spec/support/RightExtendsLeft.ts: -------------------------------------------------------------------------------- 1 | export type RightExtendsLeft = Right extends Left ? Right : never; 2 | -------------------------------------------------------------------------------- /projects/mixin-decorators/spec/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_files": [ 3 | "./dist/spec/**/*.js" 4 | ], 5 | "stopSpecOnExpectationFailure": false 6 | } 7 | -------------------------------------------------------------------------------- /projects/mixin-decorators/tsconfig-gulp.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "lib": ["ES2023"], 4 | "module": "ES2022", 5 | "target": "ES2022", 6 | "moduleResolution": "node", 7 | "declaration": false, 8 | 9 | "baseUrl": ".", 10 | }, 11 | 12 | "include": [ 13 | "./Gulpfile.ts", 14 | ], 15 | 16 | "extends": "@tsconfig/node18/tsconfig.json" 17 | } 18 | -------------------------------------------------------------------------------- /projects/mixin-decorators/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "lib": ["ES2023"], 4 | "module": "NodeNext", 5 | "target": "ES2022", 6 | "moduleResolution": "NodeNext", 7 | "strict": true, 8 | "sourceMap": true, 9 | "declaration": true, 10 | 11 | "baseUrl": ".", 12 | "outDir": "dist" 13 | }, 14 | 15 | "include": [ 16 | "fixtures/**/*.ts", 17 | "source/**/*.ts", 18 | "spec/**/*.ts" 19 | ], 20 | 21 | "extends": "@tsconfig/node18/tsconfig.json" 22 | } 23 | -------------------------------------------------------------------------------- /projects/search-references/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | *.js 3 | *.d.ts 4 | *.js.map 5 | **/*.js 6 | **/*.js.map 7 | **/*.d.ts 8 | !**/types/**/*.d.ts 9 | dist/** 10 | source/public/core-host/types/Virtualization262.d.ts 11 | !source/public/guest/searchReferences.d.ts 12 | !source/public/guest/searchReferences.js 13 | !source/rollup.config.js 14 | 15 | playground 16 | spec/playground 17 | -------------------------------------------------------------------------------- /projects/search-references/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | // @ts-check 2 | 3 | import eslint from '@eslint/js'; 4 | import tseslint from 'typescript-eslint'; 5 | 6 | export default tseslint.config( 7 | eslint.configs.recommended, 8 | ...tseslint.configs.recommended, 9 | ); 10 | -------------------------------------------------------------------------------- /projects/search-references/fixtures/engine262-demos/asyncPlusOne.ts: -------------------------------------------------------------------------------- 1 | report([await asyncPlusOne(9)]); 2 | -------------------------------------------------------------------------------- /projects/search-references/fixtures/engine262-demos/counter.ts: -------------------------------------------------------------------------------- 1 | async function * numbers(): AsyncGenerator { 2 | let i = 0; 3 | while (i < 10) { 4 | const n: number = await Promise.resolve(i++); 5 | yield n; 6 | } 7 | } 8 | 9 | (async () => { 10 | for await (const item of numbers()) { 11 | report([item]); 12 | } 13 | })(); 14 | -------------------------------------------------------------------------------- /projects/search-references/fixtures/engine262-demos/echo.ts: -------------------------------------------------------------------------------- 1 | const results = { 2 | _null: echoNull(), 3 | _false: echoNegate(true), 4 | three: echoPlusOne(2), 5 | string_: echoAppendUnderscore("my string"), 6 | Five: echoMinusOne(BigInt(6)), 7 | }; 8 | 9 | report([{results}]); 10 | -------------------------------------------------------------------------------- /projects/search-references/fixtures/engine262-demos/throwOnReport.ts: -------------------------------------------------------------------------------- 1 | function zero(): void { 2 | // @ts-expect-error deliberately calling with an invalid report argument to see how it reacts. 3 | report(0); 4 | } 5 | 6 | function one(): void { 7 | zero(); 8 | } 9 | 10 | function two(): void { 11 | one(); 12 | } 13 | 14 | function three(): void { 15 | two(); 16 | } 17 | 18 | three(); 19 | -------------------------------------------------------------------------------- /projects/search-references/fixtures/types/asyncPlusOne.d.ts: -------------------------------------------------------------------------------- 1 | declare function asyncPlusOne(value: number): Promise; 2 | -------------------------------------------------------------------------------- /projects/search-references/fixtures/types/echo.d.ts: -------------------------------------------------------------------------------- 1 | declare function echoNull(): null; 2 | declare function echoNegate(value: boolean): boolean; 3 | declare function echoPlusOne(value: number): number; 4 | declare function echoAppendUnderscore(value: string): string; 5 | declare function echoMinusOne(value: bigint): bigint; 6 | -------------------------------------------------------------------------------- /projects/search-references/fixtures/types/print.d.ts: -------------------------------------------------------------------------------- 1 | declare function print(value: unknown): void; 2 | declare function report(values: unknown[]): void; 3 | -------------------------------------------------------------------------------- /projects/search-references/gulp-utilities/.gitignore: -------------------------------------------------------------------------------- 1 | !assertRepoIsClean.js 2 | -------------------------------------------------------------------------------- /projects/search-references/gulp-utilities/assertRepoIsClean.js: -------------------------------------------------------------------------------- 1 | import { assertRepoIsClean } from "@ajvincent/build-utilities"; 2 | await assertRepoIsClean(); 3 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/classes/classStaticFields.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | class Person { 4 | name: string; 5 | constructor(name: string) { 6 | this.name = name; 7 | } 8 | } 9 | 10 | class Vehicle { 11 | static owners: Person[] = []; 12 | 13 | constructor(owner: Person) { 14 | Vehicle.owners.push(owner); 15 | } 16 | } 17 | 18 | const Fred = new Person("Fred"); 19 | const hisCar = new Vehicle(Fred); 20 | 21 | searchReferences("class static fields", Fred, [hisCar], true); 22 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/classes/classesWithoutExtensions.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | class Person { 4 | name: string; 5 | constructor(name: string) { 6 | this.name = name; 7 | } 8 | } 9 | 10 | class Vehicle { 11 | owner: Person; 12 | 13 | constructor(owner: Person) { 14 | this.owner = owner; 15 | } 16 | } 17 | 18 | const Fred = new Person("Fred"); 19 | const hisBike = new Vehicle(Fred); 20 | 21 | searchReferences("instance to class", Vehicle, [hisBike], true); 22 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/collections/mapKeyIsTarget.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | const target = { isTarget: true }; 4 | const value = { isValue: true } 5 | const objectHoldingTarget = new Map([[target, value]]); 6 | 7 | const heldValues: readonly object[] = [ 8 | objectHoldingTarget, 9 | ]; 10 | 11 | searchReferences("strongMapHoldsKeyStrongly", target, heldValues, true); 12 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/collections/mapValueIsTarget.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | const target = { isTarget: true }; 4 | const key = { isKey: true }; 5 | const objectHoldingTarget = new Map([[key, target]]); 6 | 7 | const heldValues: readonly object[] = [ 8 | objectHoldingTarget, 9 | ]; 10 | 11 | searchReferences("strongMapHoldsValueStrongly", target, heldValues, true); 12 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/collections/setHoldsTarget.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | const target = { isTarget: true }; 4 | const objectHoldingTarget = new Set([target]); 5 | 6 | const heldValues: readonly object[] = [ 7 | objectHoldingTarget, 8 | ]; 9 | 10 | searchReferences("setHoldsTargetStrongly", target, heldValues, true); 11 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/collections/weakMapKeyIsTarget.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | const target = { isTarget: true }; 4 | const objectHoldingTarget = new WeakMap([[target, true]]); 5 | 6 | const heldValues: readonly object[] = [ 7 | objectHoldingTarget, 8 | ]; 9 | 10 | searchReferences("weakMapHoldsKeyStrongly", target, heldValues, true); 11 | searchReferences("weakMapHoldsKeyWeakly", target, heldValues, false); 12 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/collections/weakSetHoldsTarget.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | const target = { isTarget: true }; 4 | const objectHoldingTarget = new WeakSet([target]); 5 | 6 | const heldValues: readonly object[] = [ 7 | objectHoldingTarget, 8 | ]; 9 | 10 | searchReferences("weakSetHoldsTargetStrongly", target, heldValues, true); 11 | searchReferences("weakSetHoldsTargetWeakly", target, heldValues, false); 12 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/functions/arrowReturnValue.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | const target = { isTarget: true }; 4 | const returnTarget = () => target; 5 | 6 | searchReferences("return target", target, [returnTarget], true); 7 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/functions/returnValue.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | const target = { isTarget: true }; 4 | 5 | function returnTarget() { 6 | return target; 7 | } 8 | 9 | searchReferences("return target", target, [returnTarget], true); 10 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/iterators/regExpString.ts: -------------------------------------------------------------------------------- 1 | // nothing here yet, not sure we need this 2 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/module-imports/exportAddProperty.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | import wrapObject from "./exportWrapObject.js"; 4 | export default function addProperty(value: object): Record<"value" | "addedProperty", object> { 5 | return { 6 | ...wrapObject(value), 7 | addedProperty: { isAddedProperty: true }, 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/module-imports/exportWrapObject.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | export default function wrapObject(value: object): Record<"value", object> { 4 | return { value }; 5 | } 6 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/module-imports/importWrapObject.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | import addProperty from "./exportAddProperty.js"; 4 | 5 | const target = { isTarget: true }; 6 | const objectHoldingTarget: Record<"value", object> = addProperty(target); 7 | 8 | const heldValues: readonly object[] = [ 9 | objectHoldingTarget, 10 | ]; 11 | 12 | searchReferences("importWrapObject", target, heldValues, true); 13 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/simple/symbolKeyHoldsTarget.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | const target = { isTarget: true }; 4 | const symbolKey = Symbol("This is a symbol"); 5 | const objectHoldingTarget = { [symbolKey]: target }; 6 | 7 | const heldValues: readonly object[] = [ 8 | objectHoldingTarget, 9 | ]; 10 | 11 | searchReferences("symbolKeyHoldsTarget", target, heldValues, true); 12 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/simple/targetIsElementOfHeldArray.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | const target = { isTarget: true }; 4 | 5 | const arrayHoldingTarget = [ target ]; 6 | const isFirstValue = { isFirstValue: true }; 7 | const isLastValue = { isLastValue: true }; 8 | 9 | const heldValues: readonly object[] = [ 10 | isFirstValue, 11 | arrayHoldingTarget, 12 | isLastValue, 13 | ]; 14 | 15 | searchReferences("targetIsElementOfHeldArray", target, heldValues, true); 16 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/simple/targetIsElementOfHeldObject.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | const target = { isTarget: true }; 4 | 5 | const objectHoldingTarget = { target }; 6 | const isFirstValue = { isFirstValue: true }; 7 | const isLastValue = { isLastValue: true }; 8 | 9 | const heldValues: readonly object[] = [ 10 | isFirstValue, 11 | objectHoldingTarget, 12 | isLastValue, 13 | ]; 14 | 15 | searchReferences("targetIsElementOfHeldObject", target, heldValues, true); 16 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/simple/targetIsSymbolKeyOfHeldObject.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | const target = Symbol("is target"); 4 | 5 | const isTailValue = { isTailValue: true }; 6 | const objectHoldingTarget = { [target]: isTailValue }; 7 | 8 | const heldValues: readonly object[] = [ 9 | objectHoldingTarget, 10 | ]; 11 | 12 | searchReferences("target is symbol key of held object", target, heldValues, true); 13 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/simple/targetUnreachable.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | const target = { isTarget: true }; 4 | 5 | const isFirstValue = { isFirstValue: true }; 6 | const isLastValue = { isLastValue: true }; 7 | 8 | const heldValues: readonly object[] = [ 9 | isFirstValue, 10 | isLastValue, 11 | ]; 12 | 13 | searchReferences("targetUnreachable", target, heldValues, true); 14 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/simple/weakRefToTarget.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | const target = { isTarget: true }; 4 | const weakRef = new WeakRef(target); 5 | 6 | const heldValues: readonly object[] = [ 7 | weakRef, 8 | ]; 9 | 10 | searchReferences("WeakRef to target does not hold strongly", target, heldValues, true); 11 | searchReferences("weakRef to target holds weakly", target, heldValues, false); 12 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/validateArguments/duplicateSearchKeys.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | let success: string | undefined; 4 | 5 | searchReferences("duplicateSearchKeys", {}, [{}, {}], true); 6 | 7 | try { 8 | searchReferences("duplicateSearchKeys", {}, [{}, {}], true); 9 | } 10 | catch (ex) { 11 | success = (ex as Error).message; 12 | } 13 | 14 | report(["duplicateSearchKeys", success]); 15 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/validateArguments/heldValuesIncludesAPrimitive.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | let success: string | undefined; 4 | try { 5 | //@ts-expect-error heldValues is not an array 6 | searchReferences("heldValuesIncludesAPrimitive", {}, [{}, true, {}], true) 7 | } 8 | catch (ex) { 9 | success = (ex as Error).message; 10 | } 11 | 12 | report(["heldValuesIncludesAPrimitive", success]); 13 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/validateArguments/heldValuesIsNotAnArray.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | let success: string | undefined; 4 | try { 5 | //@ts-expect-error heldValues is not an array 6 | searchReferences("heldValuesNotAnArray", {}, {}, true) 7 | } 8 | catch (ex) { 9 | success = (ex as Error).message; 10 | } 11 | 12 | report(["heldValuesNotAnArray", success]); 13 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/validateArguments/noArguments.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | let success: string | undefined; 4 | try { 5 | // @ts-expect-error not enough arguments 6 | searchReferences() 7 | } 8 | catch (ex) { 9 | success = (ex as Error).message; 10 | } 11 | 12 | report(["noArguments", success]); 13 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/validateArguments/reportKeyIsNotAString.ts: -------------------------------------------------------------------------------- 1 | try { 2 | report([0, false]); 3 | } 4 | catch (ex) { 5 | report(["keyIsNumber", (ex as Error).message]); 6 | } 7 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/validateArguments/reportSameKeyTwice.ts: -------------------------------------------------------------------------------- 1 | report(["key", true]); 2 | 3 | try { 4 | report(["key", false]); 5 | } 6 | catch (ex) { 7 | report(["sameKeyTwice", (ex as Error).message]); 8 | } 9 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/validateArguments/reportValueIsNotAPrimitive.ts: -------------------------------------------------------------------------------- 1 | try { 2 | report(["foo", { foo: true }]); 3 | } 4 | catch (ex) { 5 | report(["valueIsNotAPrimitive", (ex as Error).message]); 6 | } 7 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/validateArguments/resultsKeyNotAString.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | let success: string | undefined; 4 | try { 5 | // @ts-expect-error resultsKey is not a string 6 | searchReferences(15, {}, [], true) 7 | } 8 | catch (ex) { 9 | success = (ex as Error).message; 10 | } 11 | 12 | report(["resultsKeyMustBeAString", success]); 13 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/validateArguments/strongRefsIsNotABoolean.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | let success: string | undefined; 4 | try { 5 | //@ts-expect-error strongReferencesIsNotABoolean 6 | searchReferences("heldValuesIncludesAPrimitive", {}, [{}, {}], "hi mom"); 7 | } 8 | catch (ex) { 9 | success = (ex as Error).message; 10 | } 11 | 12 | report(["strongReferencesIsNotABoolean", success]); 13 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/validateArguments/targetValueMustNotBeNull.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | let success: string | undefined; 4 | try { 5 | //@ts-expect-error null is not an object or a symbol 6 | searchReferences("resultsKey", null, [], true); 7 | } 8 | catch (ex) { 9 | success = (ex as Error).message; 10 | } 11 | 12 | report(["targetKeyIsNull", success]); 13 | -------------------------------------------------------------------------------- /projects/search-references/reference-spec/validateArguments/targetValueNotAnObject.ts: -------------------------------------------------------------------------------- 1 | import "es-search-references/guest"; 2 | 3 | let success: string | undefined; 4 | try { 5 | //@ts-expect-error 6 is not an object or a symbol 6 | searchReferences("resultsKey", 6, [], true); 7 | } 8 | catch (ex) { 9 | success = (ex as Error).message; 10 | } 11 | 12 | report(["targetKeyIsNumber", success]); 13 | -------------------------------------------------------------------------------- /projects/search-references/source/engine262-tools/host-to-guest/GuestEngine.ts: -------------------------------------------------------------------------------- 1 | //FIXME: remove this file altogether. I wrote it when engine262 generated warnings on every import, and only to reduce noise. 2 | import type { 3 | ThrowCompletion 4 | } from "@engine262/engine262"; 5 | 6 | export * as GuestEngine from '@engine262/engine262'; 7 | export { 8 | type PlainCompletion, 9 | ThrowCompletion, 10 | } from '@engine262/engine262'; 11 | 12 | export type ThrowOr = ThrowCompletion | Value; 13 | -------------------------------------------------------------------------------- /projects/search-references/source/engine262-tools/host-to-guest/simpleEvaluator.ts: -------------------------------------------------------------------------------- 1 | import { GuestEngine } from "./GuestEngine.js"; 2 | 3 | // eslint-disable-next-line require-yield 4 | export function * simpleEvaluator( 5 | arg: T 6 | ): GuestEngine.Evaluator 7 | { 8 | return arg; 9 | } 10 | -------------------------------------------------------------------------------- /projects/search-references/source/engine262-tools/search/ObjectMetadata.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | BuiltInJSTypeName, 3 | } from "../../utilities/constants.js"; 4 | 5 | import type { 6 | GraphObjectMetadata 7 | } from "../../types/GraphObjectMetadata.js"; 8 | 9 | export function buildObjectMetadata( 10 | builtInJSTypeName: BuiltInJSTypeName, 11 | derivedClassName: string, 12 | ): GraphObjectMetadata 13 | { 14 | return { 15 | builtInJSTypeName, 16 | derivedClassName 17 | }; 18 | } 19 | -------------------------------------------------------------------------------- /projects/search-references/source/engine262-tools/types/InstanceGetterDefinitions.d.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | GuestEngine 3 | } from "../host-to-guest/GuestEngine.js"; 4 | 5 | export interface InstanceGetterDefinitions 6 | { 7 | defineInstanceGetter( 8 | instance: GuestEngine.ObjectValue, 9 | getterKey: string | number | GuestEngine.SymbolValue, 10 | ): GuestEngine.Evaluator; 11 | } 12 | -------------------------------------------------------------------------------- /projects/search-references/source/graph-analysis/types/CloneableGraphIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | Graph, 3 | } from "@dagrejs/graphlib"; 4 | 5 | export interface CloneableGraphIfc { 6 | cloneGraph(): Graph; 7 | 8 | /* 9 | // placeholder, to be clarified or removed from this interface 10 | defineGraphStyling(): never; 11 | */ 12 | } 13 | -------------------------------------------------------------------------------- /projects/search-references/source/graph-analysis/types/JointOwnersResolver.d.ts: -------------------------------------------------------------------------------- 1 | export type JointOwnersResolver< 2 | TrackerType extends object, 3 | KeyType extends PrefixedNumber, 4 | Context extends PrefixedNumber 5 | > = ( 6 | this: void, 7 | childKey: KeyType, 8 | jointOwnerKeys: readonly KeyType[], 9 | context: Context, 10 | tracker: TrackerType, 11 | ) => void; 12 | -------------------------------------------------------------------------------- /projects/search-references/source/graph-analysis/types/SearchReferencesIfc.d.ts: -------------------------------------------------------------------------------- 1 | export interface SearchReferencesIfc { 2 | setStrongReferenceCallback( 3 | callback: (key: WeakKey) => void 4 | ): void; 5 | 6 | markStrongReferencesFromHeldValues(): void; 7 | 8 | isKeyHeldStrongly( 9 | weakKey: WeakKey 10 | ): boolean; 11 | 12 | summarizeGraphToTarget( 13 | strongReferencesOnly: boolean 14 | ): void; 15 | } 16 | -------------------------------------------------------------------------------- /projects/search-references/source/public/guest/searchReferences.js: -------------------------------------------------------------------------------- 1 | export {}; 2 | -------------------------------------------------------------------------------- /projects/search-references/source/types/CallableMethodsOfArray.d.ts: -------------------------------------------------------------------------------- 1 | // https://stackoverflow.com/questions/51419176/how-to-get-a-subset-of-keyof-t-whose-value-tk-are-callable-functions-in-typ 2 | type PickOfType = { 3 | [P in keyof T as (T[P] extends V ? P : never)]: T[P] 4 | } 5 | 6 | export type CallableMethodsOfArray = PickOfType; 7 | -------------------------------------------------------------------------------- /projects/search-references/source/types/GraphObjectMetadata.d.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | JsonObject 3 | } from "type-fest"; 4 | 5 | import type { 6 | BuiltInJSTypeName, 7 | } from "../utilities/constants.js"; 8 | 9 | export interface GraphObjectMetadata extends JsonObject { 10 | readonly builtInJSTypeName: BuiltInJSTypeName; 11 | readonly derivedClassName: string; 12 | classSpecifier?: string; 13 | classLineNumber?: number; 14 | } 15 | -------------------------------------------------------------------------------- /projects/search-references/source/types/GraphRelationshipMetadata.d.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | JsonObject 3 | } from "type-fest"; 4 | 5 | import type { 6 | ChildReferenceEdgeType, 7 | } from "../utilities/constants.js"; 8 | 9 | export interface GraphRelationshipMetadata extends JsonObject { 10 | parentToChildEdgeType: ChildReferenceEdgeType 11 | } 12 | -------------------------------------------------------------------------------- /projects/search-references/source/types/PrefixedNumber.d.ts: -------------------------------------------------------------------------------- 1 | export type PrefixedNumber = `${Prefix}:${number}`; 2 | 3 | export type ObjectId = PrefixedNumber<"object" | "target" | "heldValues">; 4 | export type ReferenceId = PrefixedNumber<"reference">; 5 | export type SymbolId = PrefixedNumber<"symbol" | "target">; 6 | export type WeakKeyId = ObjectId | SymbolId; 7 | -------------------------------------------------------------------------------- /projects/search-references/source/utilities/StringCounter.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | PrefixedNumber 3 | } from "../types/PrefixedNumber.js"; 4 | 5 | export class StringCounter 6 | { 7 | #counter = 0; 8 | 9 | next(prefix: SpecificPrefix): PrefixedNumber 10 | { 11 | return `${prefix}:${this.#counter++}`; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /projects/search-references/source/utilities/isObjectOrSymbol.ts: -------------------------------------------------------------------------------- 1 | const OBJECT_OR_SYMBOL_TYPES = new Set(["symbol", "object", "function"]); 2 | export function isObjectOrSymbol( 3 | value: unknown 4 | ): value is (object | symbol) 5 | { 6 | return OBJECT_OR_SYMBOL_TYPES.has(typeof value); 7 | } 8 | -------------------------------------------------------------------------------- /projects/search-references/spec/runSearches/iterators/user-defined.ts: -------------------------------------------------------------------------------- 1 | import { 2 | getActualGraph, 3 | } from "../../support/getActualGraph.js"; 4 | 5 | it("Iterator searches, for user-defined iterators, don't necessarily return anything", async () => { 6 | const actual = await getActualGraph("iterators/user-defined.js", "no explicit hold", false); 7 | expect(actual).toBeNull(); 8 | }); 9 | -------------------------------------------------------------------------------- /projects/search-references/spec/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_files": [ 3 | "./dist/spec/**/*.js", 4 | "!./dist/spec/support/**/*.js" 5 | ], 6 | "stopSpecOnExpectationFailure": false 7 | } 8 | -------------------------------------------------------------------------------- /projects/search-references/spec/support/projectRoot.ts: -------------------------------------------------------------------------------- 1 | import path from "node:path"; 2 | 3 | import { 4 | monorepoRoot, 5 | } from "@ajvincent/build-utilities"; 6 | 7 | export const projectRoot = path.join(monorepoRoot, "projects/search-references"); 8 | export const referenceSpecDir = path.join(projectRoot, "dist/reference-spec"); 9 | 10 | export function getReferenceSpecPath(leafName: string): string { 11 | return path.join(referenceSpecDir, leafName); 12 | } 13 | -------------------------------------------------------------------------------- /projects/search-references/spec/support/reparse.ts: -------------------------------------------------------------------------------- 1 | export function reparse(value: object): object { 2 | return JSON.parse(JSON.stringify(value)) as object; 3 | } 4 | -------------------------------------------------------------------------------- /projects/search-references/tsconfig-gulp.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "lib": ["ES2023"], 4 | "module": "ES2022", 5 | "target": "ES2022", 6 | "moduleResolution": "node", 7 | "declaration": false, 8 | 9 | "baseUrl": ".", 10 | }, 11 | 12 | "include": [ 13 | "./Gulpfile.ts", 14 | ], 15 | 16 | "extends": "@tsconfig/node18/tsconfig.json" 17 | } 18 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | // @ts-check 2 | 3 | import eslint from '@eslint/js'; 4 | import tseslint from 'typescript-eslint'; 5 | 6 | export default tseslint.config( 7 | eslint.configs.recommended, 8 | ...tseslint.configs.recommended, 9 | ); 10 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/gulp-utilities/.gitignore: -------------------------------------------------------------------------------- 1 | !cleanTSC_output.js 2 | !assertRepoIsClean.js 3 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/gulp-utilities/assertRepoIsClean.js: -------------------------------------------------------------------------------- 1 | import { assertRepoIsClean } from "@ajvincent/build-utilities"; 2 | await assertRepoIsClean(); 3 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_0_references/Gulpfile.ts: -------------------------------------------------------------------------------- 1 | import buildStructuresReference from "./structures/driver.js"; 2 | export default buildStructuresReference; 3 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_0_references/structures/docsReference.ts: -------------------------------------------------------------------------------- 1 | import path from "node:path"; 2 | import { 3 | monorepoRoot 4 | } from "@ajvincent/build-utilities"; 5 | 6 | const docsAsHTMLPath = path.normalize(path.join( 7 | monorepoRoot, "docs/ts-morph-structures/reference/structure-types.html" 8 | )); 9 | 10 | const docsAsMDPath = path.normalize(path.join( 11 | monorepoRoot, "docs/ts-morph-structures/reference/structure-types.md" 12 | )); 13 | 14 | export { docsAsHTMLPath, docsAsMDPath } 15 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_0_references/structures/projectDir.ts: -------------------------------------------------------------------------------- 1 | import path from "path"; 2 | import url from "url"; 3 | export default path.normalize(path.join( 4 | url.fileURLToPath(import.meta.url), "../../.." 5 | )); 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_1_snapshot/fixtures/StringNumber.ts: -------------------------------------------------------------------------------- 1 | const StringNumber = { 2 | x: 4, 3 | } 4 | export default StringNumber; -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_1_snapshot/prototype-snapshot/base/StructuresClassesMap.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | Class 3 | } from "type-fest"; 4 | 5 | import { 6 | KindedStructure, 7 | StructureKind, 8 | type Structures, 9 | } from "ts-morph"; 10 | 11 | import { 12 | CloneableStructure 13 | } from "../types/CloneableStructure.js"; 14 | 15 | const StructuresClassesMap = new Map< 16 | StructureKind, 17 | CloneableStructure & Class> 18 | >; 19 | 20 | export default StructuresClassesMap; 21 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_1_snapshot/prototype-snapshot/internal-exports.ts: -------------------------------------------------------------------------------- 1 | export { default as StructureBase } from "./base/StructureBase.js"; 2 | export { default as TypeStructureClassesMap } from "./base/TypeStructureClassesMap.js"; 3 | export { default as TypeStructuresBase } from "./base/TypeStructuresBase.js"; 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_1_snapshot/prototype-snapshot/types/ArrayWithoutIndices.d.ts: -------------------------------------------------------------------------------- 1 | export type ArrayWithoutIndices = Omit; 2 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_1_snapshot/prototype-snapshot/types/BooleanFlagsStructure.d.ts: -------------------------------------------------------------------------------- 1 | export interface BooleanFlagsStructure { 2 | enableFlags(flags: Flags[]): this 3 | } 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_1_snapshot/prototype-snapshot/types/CloneableStructure.d.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | Class, 3 | } from "type-fest"; 4 | 5 | import type { 6 | OptionalKind, 7 | Structure, 8 | } from "ts-morph" 9 | 10 | import type { 11 | TypeStructures 12 | } from "../typeStructures/TypeStructures.js"; 13 | 14 | export type CloneableStructure = Class & { 15 | clone(other: OptionalKind | Base): Base 16 | }; 17 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_1_snapshot/prototype-snapshot/types/DataDescriptor.d.ts: -------------------------------------------------------------------------------- 1 | export type DataDescriptor = 2 | Omit & 3 | Pick, "value">; 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_1_snapshot/prototype-snapshot/types/ts-morph-native.d.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | WriterFunction, 3 | } from "ts-morph"; 4 | 5 | export type stringOrWriterFunction = string | WriterFunction; 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_1_snapshot/prototype-snapshot/types/ts-morph-typednodewriter.d.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | WriterFunction 3 | } from "ts-morph"; 4 | 5 | export interface TypedNodeWriter { 6 | writerFunction: WriterFunction 7 | } 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_1_snapshot/spec-snapshot/array-utilities/ArrayNotImplementedCanary.ts: -------------------------------------------------------------------------------- 1 | import ArrayNotImplementedCanary from "#stage_one/prototype-snapshot/array-utilities/ArrayNotImplementedCanary.js"; 2 | 3 | it("ArrayNotImplementedCanary covers all members of `readonly object[]`", () => { 4 | expect(ArrayNotImplementedCanary).toBeTruthy(); 5 | }); 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_1_snapshot/spec-snapshot/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_files": [ 3 | "spec-snapshot/**/*.js" 4 | ], 5 | "stopSpecOnExpectationFailure": false 6 | } 7 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_generation/.gitignore: -------------------------------------------------------------------------------- 1 | dist 2 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_generation/build/spec/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_files": [ 3 | "build/spec/**/*.js" 4 | ], 5 | "stopSpecOnExpectationFailure": false 6 | } 7 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_generation/build/support.ts: -------------------------------------------------------------------------------- 1 | export default async function support(): Promise 2 | { 3 | const dist = (await import("./dist.js")).default; 4 | await dist(); 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_generation/build/utilities/public/OrderedMap.ts: -------------------------------------------------------------------------------- 1 | export default class OrderedMap extends Map { 2 | sortEntries(comparator: (a: [K, V], b: [K, V]) => number): void { 3 | const entries: [K, V][] = Array.from(this.entries()); 4 | entries.sort(comparator); 5 | 6 | this.clear(); 7 | for (const [key, value] of entries) { 8 | this.set(key, value); 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_generation/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | // @ts-check 2 | 3 | import eslint from '@eslint/js'; 4 | import tseslint from 'typescript-eslint'; 5 | 6 | export default tseslint.config( 7 | eslint.configs.recommended, 8 | ...tseslint.configs.recommended, 9 | ); 10 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_generation/tsc-excludes.json: -------------------------------------------------------------------------------- 1 | [ 2 | "dist" 3 | ] 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_integration/.gitignore: -------------------------------------------------------------------------------- 1 | !build/rollup/rollup.config.js 2 | snapshot 3 | typings-snapshot 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_integration/build/docs/typings-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "lib": ["ESNext"], 4 | "module": "es2022", 5 | "target": "esnext", 6 | "moduleResolution": "node", 7 | 8 | "declaration": true, 9 | "emitDeclarationOnly": true, 10 | "outDir": "../typings-snapshot/source", 11 | "newLine": "lf" 12 | }, 13 | 14 | "extends": "@tsconfig/node18/tsconfig.json" 15 | } 16 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_integration/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | // @ts-check 2 | 3 | import eslint from '@eslint/js'; 4 | import tseslint from 'typescript-eslint'; 5 | 6 | export default tseslint.config( 7 | eslint.configs.recommended, 8 | ...tseslint.configs.recommended, 9 | ); 10 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_integration/pre-build/Gulpfile.ts: -------------------------------------------------------------------------------- 1 | import copySnapshot from "./copySnapshot.js"; 2 | export default copySnapshot; 3 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_integration/source/base/symbolKeys.ts: -------------------------------------------------------------------------------- 1 | export const COPY_FIELDS = Symbol("copy fields"); 2 | export const REPLACE_WRITER_WITH_STRING = Symbol("replaceWriterWithString"); 3 | export const STRUCTURE_AND_TYPES_CHILDREN = Symbol("otherwise unreachable structure and type-structure children"); 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_integration/source/bootstrap/typeNodeConsoles.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | TypeNode 3 | } from "ts-morph"; 4 | 5 | import type { 6 | TypeNodeToTypeStructureConsole 7 | } from "../../snapshot/source/exports.js"; 8 | 9 | export function VoidTypeNodeToTypeStructureConsole( 10 | message: string, 11 | failingTypeNode: TypeNode, 12 | ): void { 13 | void(message); 14 | void(failingTypeNode); 15 | } 16 | VoidTypeNodeToTypeStructureConsole satisfies TypeNodeToTypeStructureConsole; 17 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_integration/source/toolbox/OrderedMap.ts: -------------------------------------------------------------------------------- 1 | export default class OrderedMap extends Map { 2 | sortEntries(comparator: (a: [K, V], b: [K, V]) => number): void { 3 | const entries: [K, V][] = Array.from(this.entries()); 4 | entries.sort(comparator); 5 | 6 | this.clear(); 7 | for (const [key, value] of entries) { 8 | this.set(key, value); 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_integration/source/toolbox/README.md: -------------------------------------------------------------------------------- 1 | # Membered Type To Class 2 | 3 | See [`the Primer on the GitHub Pages website.`](https://ajvincent.github.io/ts-morph-structures/guides/MemberedTypeToClass.md) 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_integration/source/types/ExtractStructure.d.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | KindedStructure, 3 | OptionalKind, 4 | StructureKind, 5 | Structures, 6 | } from "ts-morph"; 7 | 8 | export type ExtractStructure< 9 | Kind extends StructureKind 10 | > = Extract>>; 11 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_integration/source/types/RightExtendsLeft.d.ts: -------------------------------------------------------------------------------- 1 | export type RightExtendsLeft = Right extends Left ? Right : never; 2 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_integration/source/types/stringOrWriterFunction.d.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | WriterFunction, 3 | } from "ts-morph"; 4 | 5 | export type stringOrWriterFunction = string | WriterFunction; 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_integration/source/types/ts-morph-typednodewriter.d.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | WriterFunction 3 | } from "ts-morph"; 4 | 5 | export interface TypedNodeWriter { 6 | writerFunction: WriterFunction 7 | } 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_integration/tsc-excludes.json: -------------------------------------------------------------------------------- 1 | [ 2 | "./pre-build", 3 | "./snapshot", 4 | "./source" 5 | ] 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/.gitignore: -------------------------------------------------------------------------------- 1 | !fixtures/import-dist/** 2 | snapshot/dist 3 | !snapshot/source/interfaces/standard/** 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/build/support.ts: -------------------------------------------------------------------------------- 1 | export default async function support(): Promise 2 | { 3 | return Promise.resolve(); 4 | } 5 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/fixtures/StringNumber.ts: -------------------------------------------------------------------------------- 1 | const StringNumber = { 2 | x: 4, 3 | } 4 | export default StringNumber; -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/fixtures/exportPromise.ts: -------------------------------------------------------------------------------- 1 | // ExportAssignment 2 | export default Promise.resolve(); 3 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/fixtures/import-dist/cmdLine.js: -------------------------------------------------------------------------------- 1 | import driver from "./driver.js"; 2 | driver(process.argv[process.argv.length - 1]); 3 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/pre-build/Gulpfile.ts: -------------------------------------------------------------------------------- 1 | import copySnapshot from "./copySnapshot.js"; 2 | export default copySnapshot; 3 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/pre-build/constants.ts: -------------------------------------------------------------------------------- 1 | import { 2 | type ModuleSourceDirectory, 3 | pathToModule, 4 | } from "#utilities/source/AsyncSpecModules.js"; 5 | 6 | const stageDir: ModuleSourceDirectory = { 7 | importMeta: import.meta, 8 | pathToDirectory: "../.." 9 | }; 10 | 11 | const snapshotDir = pathToModule(stageDir, "snapshot"); 12 | const sourceGeneratedDir = pathToModule(stageDir, "source/generated"); 13 | 14 | export { 15 | stageDir, 16 | snapshotDir, 17 | sourceGeneratedDir, 18 | }; 19 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/base/symbolKeys.ts: -------------------------------------------------------------------------------- 1 | export const COPY_FIELDS = Symbol("copy fields"); 2 | export const REPLACE_WRITER_WITH_STRING = Symbol("replaceWriterWithString"); 3 | export const STRUCTURE_AND_TYPES_CHILDREN = Symbol( 4 | "otherwise unreachable structure and type-structure children", 5 | ); 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/bootstrap/typeNodeConsoles.ts: -------------------------------------------------------------------------------- 1 | import type { TypeNode } from "ts-morph"; 2 | 3 | import type { TypeNodeToTypeStructureConsole } from "../exports.js"; 4 | 5 | export function VoidTypeNodeToTypeStructureConsole( 6 | message: string, 7 | failingTypeNode: TypeNode, 8 | ): void { 9 | void message; 10 | void failingTypeNode; 11 | } 12 | VoidTypeNodeToTypeStructureConsole satisfies TypeNodeToTypeStructureConsole; 13 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/AbstractableNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | export interface AbstractableNodeStructureClassIfc { 2 | isAbstract: boolean; 3 | } 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/AmbientableNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | export interface AmbientableNodeStructureClassIfc { 2 | hasDeclareKeyword: boolean; 3 | } 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/AsyncableNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | export interface AsyncableNodeStructureClassIfc { 2 | isAsync: boolean; 3 | } 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/CallSignatureDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface CallSignatureDeclarationStructureClassIfc { 4 | readonly kind: StructureKind.CallSignature; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ClassStaticBlockDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface ClassStaticBlockDeclarationStructureClassIfc { 4 | readonly kind: StructureKind.ClassStaticBlock; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ConstructSignatureDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface ConstructSignatureDeclarationStructureClassIfc { 4 | readonly kind: StructureKind.ConstructSignature; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ConstructorDeclarationOverloadStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface ConstructorDeclarationOverloadStructureClassIfc { 4 | readonly kind: StructureKind.ConstructorOverload; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ConstructorDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { ConstructorDeclarationOverloadImpl } from "../../exports.js"; 2 | import type { StructureKind } from "ts-morph"; 3 | 4 | export interface ConstructorDeclarationStructureClassIfc { 5 | readonly kind: StructureKind.Constructor; 6 | readonly overloads: ConstructorDeclarationOverloadImpl[]; 7 | } 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/DecoratableNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { DecoratorImpl } from "../../exports.js"; 2 | 3 | export interface DecoratableNodeStructureClassIfc { 4 | readonly decorators: DecoratorImpl[]; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/EnumDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { EnumMemberImpl } from "../../exports.js"; 2 | import type { StructureKind } from "ts-morph"; 3 | 4 | export interface EnumDeclarationStructureClassIfc { 5 | readonly kind: StructureKind.Enum; 6 | isConst: boolean; 7 | readonly members: EnumMemberImpl[]; 8 | } 9 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/EnumMemberStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface EnumMemberStructureClassIfc { 4 | readonly kind: StructureKind.EnumMember; 5 | /** Convenience property for setting the initializer. */ 6 | value?: number | string; 7 | } 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ExclamationTokenableNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | export interface ExclamationTokenableNodeStructureClassIfc { 2 | hasExclamationToken: boolean; 3 | } 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ExportAssignmentStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { stringOrWriterFunction } from "../../exports.js"; 2 | import type { StructureKind } from "ts-morph"; 3 | 4 | export interface ExportAssignmentStructureClassIfc { 5 | readonly kind: StructureKind.ExportAssignment; 6 | expression: stringOrWriterFunction; 7 | isExportEquals: boolean; 8 | } 9 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ExportSpecifierStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface ExportSpecifierStructureClassIfc { 4 | readonly kind: StructureKind.ExportSpecifier; 5 | alias?: string; 6 | isTypeOnly: boolean; 7 | } 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ExportableNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | export interface ExportableNodeStructureClassIfc { 2 | isDefaultExport: boolean; 3 | isExported: boolean; 4 | } 5 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/FunctionDeclarationOverloadStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface FunctionDeclarationOverloadStructureClassIfc { 4 | readonly kind: StructureKind.FunctionOverload; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/FunctionDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { FunctionDeclarationOverloadImpl } from "../../exports.js"; 2 | import type { StructureKind } from "ts-morph"; 3 | 4 | export interface FunctionDeclarationStructureClassIfc { 5 | readonly kind: StructureKind.Function; 6 | readonly overloads: FunctionDeclarationOverloadImpl[]; 7 | } 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/GeneratorableNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | export interface GeneratorableNodeStructureClassIfc { 2 | isGenerator: boolean; 3 | } 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/GetAccessorDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface GetAccessorDeclarationStructureClassIfc { 4 | readonly kind: StructureKind.GetAccessor; 5 | isStatic: boolean; 6 | } 7 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ImportAttributeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface ImportAttributeStructureClassIfc { 4 | readonly kind: StructureKind.ImportAttribute; 5 | /** Expression value. Quote this when providing a string. */ 6 | value: string; 7 | } 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ImportSpecifierStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface ImportSpecifierStructureClassIfc { 4 | readonly kind: StructureKind.ImportSpecifier; 5 | alias?: string; 6 | isTypeOnly: boolean; 7 | } 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/IndexSignatureDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { TypeStructures } from "../../exports.js"; 2 | import type { StructureKind } from "ts-morph"; 3 | 4 | export interface IndexSignatureDeclarationStructureClassIfc { 5 | readonly kind: StructureKind.IndexSignature; 6 | keyName?: string; 7 | keyType?: string; 8 | keyTypeStructure: TypeStructures | undefined; 9 | } 10 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/InitializerExpressionableNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { stringOrWriterFunction } from "../../exports.js"; 2 | 3 | export interface InitializerExpressionableNodeStructureClassIfc { 4 | initializer?: stringOrWriterFunction; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/JSDocTagStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { stringOrWriterFunction } from "../../exports.js"; 2 | import type { StructureKind } from "ts-morph"; 3 | 4 | export interface JSDocTagStructureClassIfc { 5 | readonly kind: StructureKind.JSDocTag; 6 | /** The name for the JS doc tag that comes after the "at" symbol. */ 7 | tagName: string; 8 | /** The text that follows the tag name. */ 9 | text?: stringOrWriterFunction; 10 | } 11 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/JSDocableNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { JSDocImpl } from "../../exports.js"; 2 | 3 | export interface JSDocableNodeStructureClassIfc { 4 | readonly docs: (JSDocImpl | string)[]; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/JsxAttributeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { JsxNamespacedNameStructure, StructureKind } from "ts-morph"; 2 | 3 | export interface JsxAttributeStructureClassIfc { 4 | readonly kind: StructureKind.JsxAttribute; 5 | initializer?: string; 6 | name: JsxNamespacedNameStructure | string; 7 | } 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/JsxSelfClosingElementStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | JsxAttributeImpl, 3 | JsxSpreadAttributeImpl, 4 | } from "../../exports.js"; 5 | import type { StructureKind } from "ts-morph"; 6 | 7 | export interface JsxSelfClosingElementStructureClassIfc { 8 | readonly kind: StructureKind.JsxSelfClosingElement; 9 | readonly attributes: (JsxAttributeImpl | JsxSpreadAttributeImpl)[]; 10 | } 11 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/JsxSpreadAttributeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface JsxSpreadAttributeStructureClassIfc { 4 | readonly kind: StructureKind.JsxSpreadAttribute; 5 | expression: string; 6 | } 7 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/MethodDeclarationOverloadStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface MethodDeclarationOverloadStructureClassIfc { 4 | readonly kind: StructureKind.MethodOverload; 5 | isStatic: boolean; 6 | } 7 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/MethodDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { MethodDeclarationOverloadImpl } from "../../exports.js"; 2 | import type { StructureKind } from "ts-morph"; 3 | 4 | export interface MethodDeclarationStructureClassIfc { 5 | readonly kind: StructureKind.Method; 6 | isStatic: boolean; 7 | readonly overloads: MethodDeclarationOverloadImpl[]; 8 | } 9 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/MethodSignatureStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface MethodSignatureStructureClassIfc { 4 | readonly kind: StructureKind.MethodSignature; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ModuleDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { ModuleDeclarationKind, StructureKind } from "ts-morph"; 2 | 3 | export interface ModuleDeclarationStructureClassIfc { 4 | readonly kind: StructureKind.Module; 5 | /** 6 | * The module declaration kind. 7 | * 8 | * @remarks Defaults to "namespace". 9 | */ 10 | declarationKind?: ModuleDeclarationKind; 11 | } 12 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/NameableNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | export interface NameableNodeStructureClassIfc { 2 | name?: string; 3 | } 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/NamedNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | export interface NamedNodeStructureClassIfc { 2 | name: string; 3 | } 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/OverrideableNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | export interface OverrideableNodeStructureClassIfc { 2 | hasOverrideKeyword: boolean; 3 | } 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ParameterDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface ParameterDeclarationStructureClassIfc { 4 | readonly kind: StructureKind.Parameter; 5 | isRestParameter: boolean; 6 | } 7 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ParameteredNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { ParameterDeclarationImpl } from "../../exports.js"; 2 | 3 | export interface ParameteredNodeStructureClassIfc { 4 | readonly parameters: ParameterDeclarationImpl[]; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/PropertyAssignmentStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { stringOrWriterFunction } from "../../exports.js"; 2 | import type { StructureKind } from "ts-morph"; 3 | 4 | export interface PropertyAssignmentStructureClassIfc { 5 | readonly kind: StructureKind.PropertyAssignment; 6 | initializer: stringOrWriterFunction; 7 | } 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/PropertyDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface PropertyDeclarationStructureClassIfc { 4 | readonly kind: StructureKind.Property; 5 | hasAccessorKeyword: boolean; 6 | isStatic: boolean; 7 | } 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/PropertySignatureStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface PropertySignatureStructureClassIfc { 4 | readonly kind: StructureKind.PropertySignature; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/QuestionTokenableNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | export interface QuestionTokenableNodeStructureClassIfc { 2 | hasQuestionToken: boolean; 3 | } 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ReadonlyableNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | export interface ReadonlyableNodeStructureClassIfc { 2 | isReadonly: boolean; 3 | } 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ReturnTypedNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { stringOrWriterFunction, TypeStructures } from "../../exports.js"; 2 | 3 | export interface ReturnTypedNodeStructureClassIfc { 4 | returnType?: stringOrWriterFunction; 5 | returnTypeStructure: TypeStructures | undefined; 6 | } 7 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ScopedNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { Scope } from "ts-morph"; 2 | 3 | export interface ScopedNodeStructureClassIfc { 4 | scope?: Scope; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/SetAccessorDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface SetAccessorDeclarationStructureClassIfc { 4 | readonly kind: StructureKind.SetAccessor; 5 | isStatic: boolean; 6 | } 7 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/ShorthandPropertyAssignmentStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface ShorthandPropertyAssignmentStructureClassIfc { 4 | readonly kind: StructureKind.ShorthandPropertyAssignment; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/SourceFileStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface SourceFileStructureClassIfc { 4 | readonly kind: StructureKind.SourceFile; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/SpreadAssignmentStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { stringOrWriterFunction } from "../../exports.js"; 2 | import type { StructureKind } from "ts-morph"; 3 | 4 | export interface SpreadAssignmentStructureClassIfc { 5 | readonly kind: StructureKind.SpreadAssignment; 6 | expression: stringOrWriterFunction; 7 | } 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/StatementedNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | StatementStructureImpls, 3 | stringOrWriterFunction, 4 | } from "../../exports.js"; 5 | 6 | export interface StatementedNodeStructureClassIfc { 7 | readonly statements: (StatementStructureImpls | stringOrWriterFunction)[]; 8 | } 9 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/StructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { stringOrWriterFunction } from "../../exports.js"; 2 | 3 | export interface StructureClassIfc { 4 | /** Leading comments or whitespace. */ 5 | readonly leadingTrivia: stringOrWriterFunction[]; 6 | /** Trailing comments or whitespace. */ 7 | readonly trailingTrivia: stringOrWriterFunction[]; 8 | } 9 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/TypeAliasDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { stringOrWriterFunction } from "../../exports.js"; 2 | import type { StructureKind } from "ts-morph"; 3 | 4 | export interface TypeAliasDeclarationStructureClassIfc { 5 | readonly kind: StructureKind.TypeAlias; 6 | type: stringOrWriterFunction; 7 | } 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/TypeParameteredNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { TypeParameterDeclarationImpl } from "../../exports.js"; 2 | 3 | export interface TypeParameteredNodeStructureClassIfc { 4 | readonly typeParameters: (TypeParameterDeclarationImpl | string)[]; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/TypedNodeStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { stringOrWriterFunction, TypeStructures } from "../../exports.js"; 2 | 3 | export interface TypedNodeStructureClassIfc { 4 | type?: stringOrWriterFunction; 5 | typeStructure: TypeStructures | undefined; 6 | } 7 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/VariableDeclarationStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { StructureKind } from "ts-morph"; 2 | 3 | export interface VariableDeclarationStructureClassIfc { 4 | readonly kind: StructureKind.VariableDeclaration; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/interfaces/standard/VariableStatementStructureClassIfc.d.ts: -------------------------------------------------------------------------------- 1 | import type { VariableDeclarationImpl } from "../../exports.js"; 2 | import type { StructureKind, VariableDeclarationKind } from "ts-morph"; 3 | 4 | export interface VariableStatementStructureClassIfc { 5 | readonly kind: StructureKind.VariableStatement; 6 | declarationKind?: VariableDeclarationKind; 7 | readonly declarations: VariableDeclarationImpl[]; 8 | } 9 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/toolbox/OrderedMap.ts: -------------------------------------------------------------------------------- 1 | export default class OrderedMap extends Map { 2 | sortEntries(comparator: (a: [K, V], b: [K, V]) => number): void { 3 | const entries: [K, V][] = Array.from(this.entries()); 4 | entries.sort(comparator); 5 | 6 | this.clear(); 7 | for (const [key, value] of entries) { 8 | this.set(key, value); 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/toolbox/README.md: -------------------------------------------------------------------------------- 1 | # Membered Type To Class 2 | 3 | See [`the Primer on the GitHub Pages website.`](https://ajvincent.github.io/ts-morph-structures/guides/MemberedTypeToClass.md) 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/types/ExtractStructure.d.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | KindedStructure, 3 | OptionalKind, 4 | StructureKind, 5 | Structures, 6 | } from "ts-morph"; 7 | 8 | export type ExtractStructure = Extract< 9 | Structures, 10 | OptionalKind> 11 | >; 12 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/types/RightExtendsLeft.d.ts: -------------------------------------------------------------------------------- 1 | export type RightExtendsLeft = Right extends Left ? Right : never; 2 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/types/stringOrWriterFunction.d.ts: -------------------------------------------------------------------------------- 1 | import type { WriterFunction } from "ts-morph"; 2 | 3 | export type stringOrWriterFunction = string | WriterFunction; 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/snapshot/source/types/ts-morph-typednodewriter.d.ts: -------------------------------------------------------------------------------- 1 | import type { WriterFunction } from "ts-morph"; 2 | 3 | export interface TypedNodeWriter { 4 | writerFunction: WriterFunction; 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/spec-snapshot/dist/README.md: -------------------------------------------------------------------------------- 1 | # Dist tests 2 | 3 | These are largely just tests I copy & paste from [../source](../source/), which don't have dependencies on internal exports. The idea is if we are bundling correctly, the tests should still work pointing at the bundle. 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/spec-snapshot/source/array-utilities/ArrayNotImplementedCanary.ts: -------------------------------------------------------------------------------- 1 | import ArrayNotImplementedCanary from "#stage_two/snapshot/source/array-utilities/ArrayNotImplementedCanary.js"; 2 | 3 | it("ArrayNotImplementedCanary covers all members of `readonly object[]`", () => { 4 | expect(ArrayNotImplementedCanary).toBeTruthy(); 5 | }); 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/spec-snapshot/source/bootstrap/structureToSyntax.ts: -------------------------------------------------------------------------------- 1 | import { StructureKindToSyntaxKindMap } from "#stage_two/snapshot/source/internal-exports.js"; 2 | 3 | it("StructureKindToSyntaxKindMap is importable", () => { 4 | expect(StructureKindToSyntaxKindMap).toBeTruthy(); 5 | }); 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/spec-snapshot/source/structures/standard/MethodSignatureImpl.ts: -------------------------------------------------------------------------------- 1 | import { 2 | MethodSignatureImpl 3 | } from "#stage_two/snapshot/source/exports.js"; 4 | 5 | describe("MethodSignatureImpl", () => { 6 | it("supports the returnType and returnTypeStructure properties", () => { 7 | const signature = new MethodSignatureImpl("foo"); 8 | expect(signature.returnType).toBe(undefined); 9 | expect(signature.returnTypeStructure).toBe(undefined); 10 | }); 11 | }); 12 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/spec-snapshot/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_files": [ 3 | "spec-snapshot/**/*.js" 4 | ], 5 | "stopSpecOnExpectationFailure": false 6 | } 7 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_2_snapshot/tsc-excludes.json: -------------------------------------------------------------------------------- 1 | [ 2 | "./pre-build" 3 | ] 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_generation/.gitignore: -------------------------------------------------------------------------------- 1 | dist 2 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_generation/build/classTools/InternalJSDocTag.ts: -------------------------------------------------------------------------------- 1 | import { 2 | JSDocImpl, 3 | JSDocTagImpl 4 | } from "#stage_two/snapshot/source/exports.js"; 5 | 6 | const InternalJSDocTag = new JSDocImpl; 7 | InternalJSDocTag.tags.push(new JSDocTagImpl("internal")); 8 | 9 | export default InternalJSDocTag; 10 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_generation/build/spec/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_files": [ 3 | "build/spec/**/*.js" 4 | ], 5 | "stopSpecOnExpectationFailure": false 6 | } 7 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_generation/build/support.ts: -------------------------------------------------------------------------------- 1 | export default async function support(): Promise 2 | { 3 | const dist = (await import("./dist.js")).default; 4 | await dist(); 5 | } 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_generation/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | // @ts-check 2 | 3 | import eslint from '@eslint/js'; 4 | import tseslint from 'typescript-eslint'; 5 | 6 | export default tseslint.config( 7 | eslint.configs.recommended, 8 | ...tseslint.configs.recommended, 9 | ); 10 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_generation/moduleClasses/ExportsModule.ts: -------------------------------------------------------------------------------- 1 | import { 2 | ExportManager 3 | } from "#stage_two/snapshot/source/exports.js"; 4 | 5 | import { 6 | pathToModule, 7 | } from "#utilities/source/AsyncSpecModules.js"; 8 | 9 | import { 10 | distDir 11 | } from "../build/constants.js"; 12 | 13 | export const internalExports = new ExportManager(pathToModule(distDir, "source/internal-exports.ts")); 14 | export const publicExports = new ExportManager(pathToModule(distDir, "source/exports.ts")); 15 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_generation/moduleClasses/OrderedSet.ts: -------------------------------------------------------------------------------- 1 | export default class OrderedSet extends Set { 2 | public sort(comparator: (a: V, b: V) => number): void { 3 | const values = Array.from(this); 4 | values.sort(comparator); 5 | 6 | this.clear(); 7 | for (const value of values) { 8 | this.add(value); 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_generation/moduleClasses/exports.ts: -------------------------------------------------------------------------------- 1 | export { default as addImportsToModule } from "./addImportsToModule.js"; 2 | export type { default as BaseClassModule } from "./BaseClassModule.js"; 3 | export { default as DecoratorModule } from "./DecoratorModule.js"; 4 | export { default as InterfaceModule } from "./InterfaceModule.js"; 5 | export { default as StructureModule } from "./StructureModule.js"; 6 | export { default as UnionModule } from "./UnionModule.js"; 7 | export * from "./ExportsModule.js"; 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_generation/pseudoStatements/README.md: -------------------------------------------------------------------------------- 1 | # This is throw-away code 2 | 3 | I had hoped I would spend time to [investigate the AST](https://ts-ast-viewer.com) of particular statement nodes and properly design these classes... but no, I was in too much of a hurry. 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_generation/tsc-excludes.json: -------------------------------------------------------------------------------- 1 | [ 2 | "dist" 3 | ] 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_generation/vanilla/README.md: -------------------------------------------------------------------------------- 1 | # Vanilla interfaces 2 | 3 | These modules represent original interfaces and unions from ts-morph. 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_generation/vanilla/initializer.ts: -------------------------------------------------------------------------------- 1 | import { 2 | requireUnion 3 | } from "./UnionMap.js"; 4 | 5 | let hasCompleted = false; 6 | 7 | export default function initializeTypes(): void 8 | { 9 | if (!hasCompleted) { 10 | requireUnion("Structures"); 11 | hasCompleted = true; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_integration/.gitignore: -------------------------------------------------------------------------------- 1 | !build/rollup/rollup.config.js 2 | snapshot 3 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_integration/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | // @ts-check 2 | 3 | import eslint from '@eslint/js'; 4 | import tseslint from 'typescript-eslint'; 5 | 6 | export default tseslint.config( 7 | eslint.configs.recommended, 8 | ...tseslint.configs.recommended, 9 | ); 10 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_integration/pre-build/Gulpfile.ts: -------------------------------------------------------------------------------- 1 | import copySnapshot from "./copySnapshot.js"; 2 | export default copySnapshot; 3 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_integration/tsc-excludes.json: -------------------------------------------------------------------------------- 1 | [ 2 | "./pre-build", 3 | "./snapshot", 4 | "./source" 5 | ] 6 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_snapshot/.gitignore: -------------------------------------------------------------------------------- 1 | snapshot 2 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_snapshot/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | // @ts-check 2 | 3 | import eslint from '@eslint/js'; 4 | import tseslint from 'typescript-eslint'; 5 | 6 | export default tseslint.config( 7 | eslint.configs.recommended, 8 | ...tseslint.configs.recommended, 9 | ); 10 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_snapshot/pre-build/Gulpfile.ts: -------------------------------------------------------------------------------- 1 | import copySnapshot from "./copySnapshot.js"; 2 | export default copySnapshot; 3 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_snapshot/pre-build/constants.ts: -------------------------------------------------------------------------------- 1 | import { 2 | type ModuleSourceDirectory, 3 | pathToModule, 4 | } from "#utilities/source/AsyncSpecModules.js"; 5 | 6 | const stageDir: ModuleSourceDirectory = { 7 | importMeta: import.meta, 8 | pathToDirectory: "../.." 9 | }; 10 | 11 | const snapshotDir = pathToModule(stageDir, "snapshot"); 12 | const sourceGeneratedDir = pathToModule(stageDir, "source/generated"); 13 | 14 | export { 15 | stageDir, 16 | snapshotDir, 17 | sourceGeneratedDir, 18 | }; 19 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_snapshot/spec-snapshot/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_files": [ 3 | "spec-snapshot/**/*.js" 4 | ], 5 | "stopSpecOnExpectationFailure": false 6 | } 7 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/stage_3_snapshot/tsc-excludes.json: -------------------------------------------------------------------------------- 1 | [ 2 | "./pre-build" 3 | ] 4 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/tsconfig-gulp.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig.json", 3 | "include": [ 4 | "Gulpfile.ts", 5 | "gulp-utilities/**/*.ts" 6 | ] 7 | } 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/use-cases/README.md: -------------------------------------------------------------------------------- 1 | # Use cases 2 | 3 | The files in this directory are demonstrations of `ts-morph-structures` and `ts-morph` in action. These are not test cases. The formal testing is over at this point. 4 | 5 | Instead, I'm going to focus on how to use these libraries to generate TypeScript code. 6 | 7 | As a result, you'll see a lot of console logging when you run this "stage". You'll also see greater numbers of code comments than usual (or at least, I hope so). 8 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/use-cases/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | // @ts-check 2 | 3 | import eslint from '@eslint/js'; 4 | import tseslint from 'typescript-eslint'; 5 | 6 | export default tseslint.config( 7 | eslint.configs.recommended, 8 | ...tseslint.configs.recommended, 9 | ); 10 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/utilities/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | // @ts-check 2 | 3 | import eslint from '@eslint/js'; 4 | import tseslint from 'typescript-eslint'; 5 | 6 | export default tseslint.config( 7 | eslint.configs.recommended, 8 | ...tseslint.configs.recommended, 9 | //...tseslint.configs.strict, 10 | ); 11 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/utilities/source/_types/NodeWithStructures.d.ts: -------------------------------------------------------------------------------- 1 | import type { 2 | Node, 3 | Structures, 4 | } from "ts-morph"; 5 | 6 | export interface NodeWithStructures extends Node { 7 | getStructure(): Structures; 8 | } 9 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/utilities/source/tasks/.gitignore: -------------------------------------------------------------------------------- 1 | *.js 2 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/utilities/source/tasks/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.json", 3 | "compilerOptions": { 4 | "declaration": false, 5 | "inlineSourceMap": true, 6 | }, 7 | "files": [ 8 | "SerializeSource.ts" 9 | ] 10 | } 11 | -------------------------------------------------------------------------------- /projects/ts-morph-structures/utilities/spec/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_files": [ 3 | "spec/**/*.js" 4 | ], 5 | "stopSpecOnExpectationFailure": false 6 | } 7 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/.gitignore: -------------------------------------------------------------------------------- 1 | **/.DS_Store 2 | _*/generated 3 | _*/**/playground 4 | _*/**/ts-stdout.txt 5 | _*/**/tsconfig.json 6 | _*/*.js 7 | _*/*.d.ts 8 | _*/*.map 9 | _*/**/*.js 10 | _*/**/*.d.ts 11 | _*/**/*.map 12 | !_*/**/types/*.d.ts 13 | !_*/**/types/**/*.d.ts 14 | Gulpfile.d.ts 15 | Gulpfile.js 16 | Gulpfile.js.map 17 | 18 | playground/ 19 | .tsimp 20 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_00_ecma_references/Gulpfile.ts: -------------------------------------------------------------------------------- 1 | import { 2 | runJasmine 3 | } from "@ajvincent/build-utilities"; 4 | 5 | async function internalTests(): Promise { 6 | return runJasmine("./spec/support/jasmine.json"); 7 | } 8 | 9 | export default internalTests; 10 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_00_ecma_references/fixtures/NumberStringClass.ts: -------------------------------------------------------------------------------- 1 | export default class NumberStringClass 2 | { 3 | constructor(...args: unknown[]) { 4 | void(args); 5 | } 6 | 7 | repeatForward( 8 | s: string, 9 | n: number 10 | ): string 11 | { 12 | return s.repeat(n); 13 | } 14 | 15 | repeatBack( 16 | n: number, 17 | s: string 18 | ): string 19 | { 20 | return s.repeat(n); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_00_ecma_references/fixtures/types/NumberStringType.d.ts: -------------------------------------------------------------------------------- 1 | export type NumberStringType = { 2 | repeatForward(s: string, n: number): string; 3 | repeatBack(n: number, s: string): string; 4 | }; 5 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_00_ecma_references/spec/README.md: -------------------------------------------------------------------------------- 1 | # ECMAScript references 2 | 3 | This is for specs which illustrate particular behaviors of ECMAScript. 4 | 5 | ## test-262 references 6 | 7 | ### apply 8 | 9 | - [basic call-target](https://github.com/tc39/test262/blob/main/test/built-ins/Reflect/apply/call-target.js) 10 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_00_ecma_references/spec/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_files": [ 3 | "./spec/**/*.js" 4 | ], 5 | "stopSpecOnExpectationFailure": false 6 | } 7 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_01_stage_utilities/Gulpfile.ts: -------------------------------------------------------------------------------- 1 | import { 2 | runJasmine 3 | } from "@ajvincent/build-utilities"; 4 | 5 | async function internalTests(): Promise { 6 | return runJasmine("./spec/support/jasmine.json"); 7 | } 8 | 9 | export default internalTests; 10 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_01_stage_utilities/examples/run.ts: -------------------------------------------------------------------------------- 1 | import { doubleArray } from "./source/AsyncModule.js"; 2 | 3 | export default async function() : Promise { 4 | console.log(await doubleArray.run()); 5 | } 6 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_01_stage_utilities/fixtures/NumberStringClass.ts: -------------------------------------------------------------------------------- 1 | export default 2 | class NumberStringClass 3 | { 4 | constructor(...args: unknown[]) { 5 | void(args); 6 | } 7 | 8 | repeatForward( 9 | s: string, 10 | n: number 11 | ): string 12 | { 13 | return s.repeat(n); 14 | } 15 | 16 | repeatBack( 17 | n: number, 18 | s: string 19 | ): string 20 | { 21 | return s.repeat(n); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_01_stage_utilities/fixtures/types/NumberStringType.d.ts: -------------------------------------------------------------------------------- 1 | export type NumberStringType = { 2 | repeatForward(s: string, n: number): string; 3 | repeatBack(n: number, s: string): string; 4 | }; 5 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_01_stage_utilities/source/gc/promiseFinalizer.ts: -------------------------------------------------------------------------------- 1 | export type PromiseResolver = (value: T | PromiseLike) => unknown; 2 | 3 | /** @internal */ 4 | export default function PromiseFinalizer(): FinalizationRegistry> 5 | { 6 | return new FinalizationRegistry>( 7 | resolver => resolver() 8 | ); 9 | } 10 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_01_stage_utilities/source/types/MethodsOnlyType.d.ts: -------------------------------------------------------------------------------- 1 | export type MethodsOnlyType = { 2 | /* eslint-disable-next-line @typescript-eslint/no-explicit-any */ 3 | [key: string | number | symbol]: (this: MethodsOnlyType, ...args: any[]) => any 4 | } 5 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_01_stage_utilities/spec/PromiseTypes/PromiseDictionary.ts: -------------------------------------------------------------------------------- 1 | import { PromiseDictionary } from "#stage_utilities/source/PromiseTypes.js"; 2 | 3 | it("PromiseDictionary resolves", async () => { 4 | const THREE = Symbol("three"); 5 | expect(await PromiseDictionary({ 6 | "one": Promise.resolve(1), 7 | "two": Promise.resolve(2), 8 | [THREE]: Promise.resolve(3), 9 | })).toEqual({ 10 | "one": 1, 11 | "two": 2, 12 | [THREE]: 3, 13 | }); 14 | }); 15 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_01_stage_utilities/spec/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_files": [ 3 | "./spec/**/*.js" 4 | ], 5 | "stopSpecOnExpectationFailure": false 6 | } 7 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_02_code_generation/source/UnionStringOrSymbol.ts: -------------------------------------------------------------------------------- 1 | import { 2 | UnionTypeStructureImpl, 3 | LiteralTypeStructureImpl 4 | } from "ts-morph-structures"; 5 | 6 | const UnionStringOrSymbol = new UnionTypeStructureImpl([ 7 | LiteralTypeStructureImpl.get("string"), 8 | LiteralTypeStructureImpl.get("symbol"), 9 | ]); 10 | 11 | export default UnionStringOrSymbol; 12 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_02_code_generation/source/constants.ts: -------------------------------------------------------------------------------- 1 | import path from "path"; 2 | import { fileURLToPath } from "url"; 3 | 4 | export const stageDir = path.normalize(path.join( 5 | fileURLToPath(import.meta.url), "../.." 6 | )); 7 | 8 | export const generatedDirs: Record = { 9 | raw: path.join(stageDir, "generated/raw"), 10 | prettified: path.join(stageDir, "generated/prettified"), 11 | final: path.join(stageDir, "generated/final"), 12 | }; 13 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_02_code_generation/tsc-excludes.json: -------------------------------------------------------------------------------- 1 | [ 2 | "./generated" 3 | ] 4 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_03_objectgraph_handlers/Gulpfile.ts: -------------------------------------------------------------------------------- 1 | import { 2 | runJasmine 3 | } from "@ajvincent/build-utilities"; 4 | 5 | async function internalTests(): Promise { 6 | return runJasmine("./spec/support/jasmine.json"); 7 | } 8 | 9 | export default internalTests; 10 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_03_objectgraph_handlers/pre-build/constants.ts: -------------------------------------------------------------------------------- 1 | import { 2 | type ModuleSourceDirectory, 3 | pathToModule, 4 | } from "#stage_utilities/source/AsyncSpecModules.js"; 5 | 6 | const stageDir: ModuleSourceDirectory = { 7 | importMeta: import.meta, 8 | pathToDirectory: "../.." 9 | }; 10 | 11 | const sourceGeneratedDir = pathToModule(stageDir, "source/generated"); 12 | 13 | export { 14 | stageDir, 15 | sourceGeneratedDir, 16 | }; 17 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_03_objectgraph_handlers/source/AlwaysRevokedProxy.ts: -------------------------------------------------------------------------------- 1 | function createAlwaysRevokedProxy(): () => null { 2 | const { proxy, revoke } = Proxy.revocable<() => null>(() => null, Reflect); 3 | revoke(); 4 | return proxy; 5 | } 6 | 7 | export default createAlwaysRevokedProxy(); 8 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_03_objectgraph_handlers/source/exceptions/MembraneInternalError.ts: -------------------------------------------------------------------------------- 1 | export default class MembraneInternalError extends Error { 2 | // deliberately empty 3 | } 4 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_03_objectgraph_handlers/source/types/RequiredProxyHandler.d.ts: -------------------------------------------------------------------------------- 1 | export type RequiredProxyHandler = Required>; 2 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_03_objectgraph_handlers/spec/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_files": [ 3 | "./spec/**/*.js" 4 | ], 5 | "stopSpecOnExpectationFailure": false 6 | } 7 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_03_objectgraph_handlers/tsc-excludes.json: -------------------------------------------------------------------------------- 1 | [ 2 | "./pre-build" 3 | ] 4 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_04_mirror_membranes/Gulpfile.ts: -------------------------------------------------------------------------------- 1 | import { 2 | runJasmine 3 | } from "@ajvincent/build-utilities"; 4 | 5 | async function internalTests(): Promise { 6 | return runJasmine("./spec/support/jasmine.json"); 7 | } 8 | 9 | export default internalTests; 10 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_04_mirror_membranes/spec/MirrorMembrane.ts: -------------------------------------------------------------------------------- 1 | import MirrorMembrane from "#mirror_membranes/source/MirrorMembrane.js"; 2 | 3 | describe("MirrorMembrane", () => { 4 | xit("is not ready to go", () => { 5 | void(MirrorMembrane); 6 | expect(true).toBe(false); 7 | }); 8 | }); 9 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_04_mirror_membranes/spec/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_files": [ 3 | "./spec/**/*.js" 4 | ], 5 | "stopSpecOnExpectationFailure": false 6 | } 7 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/_10_exported_decorators/Gulpfile.ts: -------------------------------------------------------------------------------- 1 | export default async function noTasksDefined(): Promise { 2 | // do nothing 3 | } 4 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_x1_aspects_mockups/README.md: -------------------------------------------------------------------------------- 1 | # Aspect-oriented programming: mockups 2 | 3 | The spec files here represent mockups of what I want to do with aspect-oriented programming decorators. This is why there are no _source_ or _build_ files here. 4 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_x1_aspects_mockups/spec/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_files": [ 3 | "./spec/**/*.ts" 4 | ], 5 | "stopSpecOnExpectationFailure": false 6 | } 7 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_x1_collections/source/array-utilities/types/ArrayWithoutIndices.d.mts: -------------------------------------------------------------------------------- 1 | export type ArrayWithoutIndices = Omit; 2 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_x1_collections/source/array-utilities/types/DataDescriptor.d.mts: -------------------------------------------------------------------------------- 1 | export type DataDescriptor = 2 | Omit & 3 | Pick, "value">; 4 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_x1_collections/source/array-utilities/types/PublicTypeUpdateableArray.d.mts: -------------------------------------------------------------------------------- 1 | import type { 2 | UpdateSymbolTracking 3 | } from "./export-types.d.mts"; 4 | 5 | export interface PublicTypeUpdateableArray 6 | extends Array 7 | { 8 | set symbolTracker( 9 | tracking: UpdateSymbolTracking 10 | ); 11 | 12 | refreshFromBackingArray(): void; 13 | } -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_x1_collections/source/array-utilities/types/UpdateSymbolTracking.d.mts: -------------------------------------------------------------------------------- 1 | export interface UpdateSymbolTracking { 2 | markUpdated(): symbol; 3 | get lastUpdateSymbol(): symbol; 4 | } 5 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_y4b_aspects_stubs/source/types/AddImport.d.mts: -------------------------------------------------------------------------------- 1 | // eslint-disable-next-line tsdoc/syntax 2 | /** @see {@link ../AspectsStubBase.mts} the `.addImport()` method */ 3 | export interface AddImport { 4 | pathToModule: string, 5 | importString: string, 6 | isDefault: boolean, 7 | isPackageImport: boolean, 8 | } 9 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_y4b_aspects_stubs/source/types/AspectsStubDecorator.d.mts: -------------------------------------------------------------------------------- 1 | import type { 2 | StaticAndInstance 3 | } from "#mixin_decorators/source/types/StaticAndInstance.mjs"; 4 | 5 | import type { 6 | SubclassDecorator, 7 | } from "#mixin_decorators/source/types/SubclassDecorator.mjs"; 8 | 9 | import AspectsStubBase from "../AspectsStubBase.mts"; 10 | 11 | export type AspectsStubDecorator< 12 | Added extends StaticAndInstance, 13 | > = SubclassDecorator; 14 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_y4b_aspects_stubs/source/types/paramRenamer.d.mts: -------------------------------------------------------------------------------- 1 | /** Give me a new name for wrapping an existing parameter. */ 2 | export type ParamRenamer = (this: void, name: string) => string; 3 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_y4b_aspects_stubs/source/utilities/aspectTypeImport.mts: -------------------------------------------------------------------------------- 1 | import AspectsStubBase from "../AspectsStubBase.mjs"; 2 | 3 | export default function addAspectTypeImport( 4 | stubGenerator: AspectsStubBase, 5 | typeFile: string, 6 | typeToImport: string 7 | ) : void 8 | { 9 | stubGenerator.addImport( 10 | "#aspects/stubs/source/types/" + typeFile, 11 | `type ${typeToImport}`, 12 | false, 13 | true 14 | ); 15 | } 16 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_y4b_aspects_stubs/source/utilities/serializeParameter.mts: -------------------------------------------------------------------------------- 1 | import { TS_Parameter } from "../types/ts-morph-native.mjs"; 2 | import extractType from "./extractType.mjs"; 3 | 4 | /** 5 | * Serialize a TypeScript parameter to a string. 6 | */ 7 | export default function serializeParameter(param: TS_Parameter): string { 8 | let rv = param.name; 9 | const typeData = param.type ? extractType(param.type, true) : undefined; 10 | if (typeData) 11 | rv += ": " + typeData; 12 | return rv; 13 | } 14 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_y4b_aspects_stubs/spec-build/support.mts: -------------------------------------------------------------------------------- 1 | import aspectsStubs from "./aspectsStubs.mjs"; 2 | import cleanStubs from "./cleanStubsDir.mjs"; 3 | import buildMethodDecoratedStub from "./methodDecoratedStub.mjs"; 4 | 5 | export default async function runModule(): Promise { 6 | // This has to happen first, to clear and recreate the fixtures/generated directory. 7 | await cleanStubs(); 8 | 9 | await Promise.all([ 10 | aspectsStubs(), 11 | buildMethodDecoratedStub(), 12 | ]); 13 | } 14 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_y4c_aspects_decorators/fixtures/NumberStringClassAssert.mts: -------------------------------------------------------------------------------- 1 | import NumberStringClass from "#stage_utilities/fixtures/NumberStringClass.mjs"; 2 | 3 | import type { 4 | AssertInterface 5 | } from "#stage_utilities/source/types/assert.mjs"; 6 | 7 | export default class NumberStringClassAssert 8 | extends NumberStringClass 9 | implements AssertInterface 10 | { 11 | assert(condition: boolean, message: string): void 12 | { 13 | if (!condition) 14 | throw new Error(message); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_y4c_aspects_decorators/source/symbol-keys.mts: -------------------------------------------------------------------------------- 1 | export const INDETERMINATE = Symbol("indeterminate result"); 2 | export const RETURN_NOT_REPLACED = Symbol("I have not replaced the return value"); 3 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_y4c_aspects_decorators/source/types/GenericFunction.d.mts: -------------------------------------------------------------------------------- 1 | /* eslint-disable @typescript-eslint/no-explicit-any */ 2 | 3 | export type GenericFunction = (this: any, ...args: any[]) => any; 4 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/mothballed/_y4z_aspects_test_fixtures/build/support.mts: -------------------------------------------------------------------------------- 1 | import aspectsStubs from "./aspectsStubs.mjs"; 2 | import cleanStubs from "./cleanStubsDir.mjs"; 3 | import buildMethodDecoratedStub from "./methodDecoratedStub.mjs"; 4 | 5 | export default async function runModule(): Promise { 6 | // This has to happen first, to clear and recreate the fixtures/generated directory. 7 | await cleanStubs(); 8 | 9 | await Promise.all([ 10 | aspectsStubs(), 11 | buildMethodDecoratedStub(), 12 | ]); 13 | } 14 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/register-hooks.js: -------------------------------------------------------------------------------- 1 | import url from 'node:url' 2 | import { register } from 'node:module' 3 | 4 | const __filename = url.fileURLToPath(import.meta.url); 5 | register('ts-node/esm', url.pathToFileURL(__filename)); 6 | -------------------------------------------------------------------------------- /projects/v2-es-membrane/tsconfig-gulp.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig.json", 3 | "include": [ 4 | "Gulpfile.ts", 5 | "gulp-utilities/**/*.ts", 6 | "*/pre-build/Gulpfile.ts", 7 | "*/Gulpfile.ts" 8 | ] 9 | } 10 | 11 | --------------------------------------------------------------------------------