@ttsc/factory 0.15.9 → 0.15.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (541) hide show
  1. package/README.md +3 -2
  2. package/lib/TsPrinter.d.ts +51 -11
  3. package/lib/TsPrinter.js +555 -70
  4. package/lib/TsPrinter.js.map +1 -1
  5. package/lib/TsPrinter.mjs +1827 -0
  6. package/lib/TsPrinter.mjs.map +1 -0
  7. package/lib/comments.mjs +76 -0
  8. package/lib/comments.mjs.map +1 -0
  9. package/lib/factory/clauses/createHeritageClause.mjs +26 -0
  10. package/lib/factory/clauses/createHeritageClause.mjs.map +1 -0
  11. package/lib/factory/clauses/createParameterDeclaration.mjs +43 -0
  12. package/lib/factory/clauses/createParameterDeclaration.mjs.map +1 -0
  13. package/lib/factory/declarations/createClassDeclaration.mjs +44 -0
  14. package/lib/factory/declarations/createClassDeclaration.mjs.map +1 -0
  15. package/lib/factory/declarations/createClassStaticBlockDeclaration.mjs +25 -0
  16. package/lib/factory/declarations/createClassStaticBlockDeclaration.mjs.map +1 -0
  17. package/lib/factory/declarations/createConstructorDeclaration.mjs +28 -0
  18. package/lib/factory/declarations/createConstructorDeclaration.mjs.map +1 -0
  19. package/lib/factory/declarations/createEnumDeclaration.mjs +31 -0
  20. package/lib/factory/declarations/createEnumDeclaration.mjs.map +1 -0
  21. package/lib/factory/declarations/createEnumMember.mjs +26 -0
  22. package/lib/factory/declarations/createEnumMember.mjs.map +1 -0
  23. package/lib/factory/declarations/createExternalModuleReference.mjs +23 -0
  24. package/lib/factory/declarations/createExternalModuleReference.mjs.map +1 -0
  25. package/lib/factory/declarations/createFunctionDeclaration.mjs +48 -0
  26. package/lib/factory/declarations/createFunctionDeclaration.mjs.map +1 -0
  27. package/lib/factory/declarations/createGetAccessorDeclaration.mjs +39 -0
  28. package/lib/factory/declarations/createGetAccessorDeclaration.mjs.map +1 -0
  29. package/lib/factory/declarations/createImportEqualsDeclaration.mjs +35 -0
  30. package/lib/factory/declarations/createImportEqualsDeclaration.mjs.map +1 -0
  31. package/lib/factory/declarations/createInterfaceDeclaration.mjs +40 -0
  32. package/lib/factory/declarations/createInterfaceDeclaration.mjs.map +1 -0
  33. package/lib/factory/declarations/createMethodDeclaration.mjs +50 -0
  34. package/lib/factory/declarations/createMethodDeclaration.mjs.map +1 -0
  35. package/lib/factory/declarations/createModuleBlock.mjs +25 -0
  36. package/lib/factory/declarations/createModuleBlock.mjs.map +1 -0
  37. package/lib/factory/declarations/createModuleDeclaration.mjs +43 -0
  38. package/lib/factory/declarations/createModuleDeclaration.mjs.map +1 -0
  39. package/lib/factory/declarations/createNamespaceExportDeclaration.mjs +24 -0
  40. package/lib/factory/declarations/createNamespaceExportDeclaration.mjs.map +1 -0
  41. package/lib/factory/declarations/createPropertyDeclaration.mjs +41 -0
  42. package/lib/factory/declarations/createPropertyDeclaration.mjs.map +1 -0
  43. package/lib/factory/declarations/createSemicolonClassElement.mjs +20 -0
  44. package/lib/factory/declarations/createSemicolonClassElement.mjs.map +1 -0
  45. package/lib/factory/declarations/createSetAccessorDeclaration.mjs +37 -0
  46. package/lib/factory/declarations/createSetAccessorDeclaration.mjs.map +1 -0
  47. package/lib/factory/declarations/createTypeAliasDeclaration.mjs +35 -0
  48. package/lib/factory/declarations/createTypeAliasDeclaration.mjs.map +1 -0
  49. package/lib/factory/expressions/createAdd.mjs +26 -0
  50. package/lib/factory/expressions/createAdd.mjs.map +1 -0
  51. package/lib/factory/expressions/createArrayBindingPattern.mjs +23 -0
  52. package/lib/factory/expressions/createArrayBindingPattern.mjs.map +1 -0
  53. package/lib/factory/expressions/createArrayLiteralExpression.mjs +25 -0
  54. package/lib/factory/expressions/createArrayLiteralExpression.mjs.map +1 -0
  55. package/lib/factory/expressions/createArrowFunction.mjs +32 -0
  56. package/lib/factory/expressions/createArrowFunction.mjs.map +1 -0
  57. package/lib/factory/expressions/createAsExpression.mjs +23 -0
  58. package/lib/factory/expressions/createAsExpression.mjs.map +1 -0
  59. package/lib/factory/expressions/createAssignment.mjs +26 -0
  60. package/lib/factory/expressions/createAssignment.mjs.map +1 -0
  61. package/lib/factory/expressions/createAwaitExpression.mjs +22 -0
  62. package/lib/factory/expressions/createAwaitExpression.mjs.map +1 -0
  63. package/lib/factory/expressions/createBinaryExpression.mjs +33 -0
  64. package/lib/factory/expressions/createBinaryExpression.mjs.map +1 -0
  65. package/lib/factory/expressions/createBindingElement.mjs +39 -0
  66. package/lib/factory/expressions/createBindingElement.mjs.map +1 -0
  67. package/lib/factory/expressions/createBitwiseAnd.mjs +26 -0
  68. package/lib/factory/expressions/createBitwiseAnd.mjs.map +1 -0
  69. package/lib/factory/expressions/createBitwiseNot.mjs +25 -0
  70. package/lib/factory/expressions/createBitwiseNot.mjs.map +1 -0
  71. package/lib/factory/expressions/createBitwiseOr.mjs +25 -0
  72. package/lib/factory/expressions/createBitwiseOr.mjs.map +1 -0
  73. package/lib/factory/expressions/createBitwiseXor.mjs +25 -0
  74. package/lib/factory/expressions/createBitwiseXor.mjs.map +1 -0
  75. package/lib/factory/expressions/createCallChain.mjs +35 -0
  76. package/lib/factory/expressions/createCallChain.mjs.map +1 -0
  77. package/lib/factory/expressions/createCallExpression.mjs +29 -0
  78. package/lib/factory/expressions/createCallExpression.mjs.map +1 -0
  79. package/lib/factory/expressions/createClassExpression.mjs +34 -0
  80. package/lib/factory/expressions/createClassExpression.mjs.map +1 -0
  81. package/lib/factory/expressions/createComma.mjs +28 -0
  82. package/lib/factory/expressions/createComma.mjs.map +1 -0
  83. package/lib/factory/expressions/createCommaListExpression.mjs +23 -0
  84. package/lib/factory/expressions/createCommaListExpression.mjs.map +1 -0
  85. package/lib/factory/expressions/createComputedPropertyName.mjs +23 -0
  86. package/lib/factory/expressions/createComputedPropertyName.mjs.map +1 -0
  87. package/lib/factory/expressions/createConditionalExpression.mjs +28 -0
  88. package/lib/factory/expressions/createConditionalExpression.mjs.map +1 -0
  89. package/lib/factory/expressions/createDeleteExpression.mjs +22 -0
  90. package/lib/factory/expressions/createDeleteExpression.mjs.map +1 -0
  91. package/lib/factory/expressions/createDivide.mjs +25 -0
  92. package/lib/factory/expressions/createDivide.mjs.map +1 -0
  93. package/lib/factory/expressions/createElementAccessChain.mjs +32 -0
  94. package/lib/factory/expressions/createElementAccessChain.mjs.map +1 -0
  95. package/lib/factory/expressions/createElementAccessExpression.mjs +28 -0
  96. package/lib/factory/expressions/createElementAccessExpression.mjs.map +1 -0
  97. package/lib/factory/expressions/createEquality.mjs +27 -0
  98. package/lib/factory/expressions/createEquality.mjs.map +1 -0
  99. package/lib/factory/expressions/createExponent.mjs +26 -0
  100. package/lib/factory/expressions/createExponent.mjs.map +1 -0
  101. package/lib/factory/expressions/createFunctionExpression.mjs +38 -0
  102. package/lib/factory/expressions/createFunctionExpression.mjs.map +1 -0
  103. package/lib/factory/expressions/createGreaterThan.mjs +27 -0
  104. package/lib/factory/expressions/createGreaterThan.mjs.map +1 -0
  105. package/lib/factory/expressions/createGreaterThanEquals.mjs +27 -0
  106. package/lib/factory/expressions/createGreaterThanEquals.mjs.map +1 -0
  107. package/lib/factory/expressions/createImmediatelyInvokedArrowFunction.mjs +29 -0
  108. package/lib/factory/expressions/createImmediatelyInvokedArrowFunction.mjs.map +1 -0
  109. package/lib/factory/expressions/createImmediatelyInvokedFunctionExpression.mjs +29 -0
  110. package/lib/factory/expressions/createImmediatelyInvokedFunctionExpression.mjs.map +1 -0
  111. package/lib/factory/expressions/createInequality.mjs +27 -0
  112. package/lib/factory/expressions/createInequality.mjs.map +1 -0
  113. package/lib/factory/expressions/createLeftShift.mjs +26 -0
  114. package/lib/factory/expressions/createLeftShift.mjs.map +1 -0
  115. package/lib/factory/expressions/createLessThan.mjs +26 -0
  116. package/lib/factory/expressions/createLessThan.mjs.map +1 -0
  117. package/lib/factory/expressions/createLessThanEquals.mjs +27 -0
  118. package/lib/factory/expressions/createLessThanEquals.mjs.map +1 -0
  119. package/lib/factory/expressions/createLogicalAnd.mjs +27 -0
  120. package/lib/factory/expressions/createLogicalAnd.mjs.map +1 -0
  121. package/lib/factory/expressions/createLogicalNot.mjs +25 -0
  122. package/lib/factory/expressions/createLogicalNot.mjs.map +1 -0
  123. package/lib/factory/expressions/createLogicalOr.mjs +26 -0
  124. package/lib/factory/expressions/createLogicalOr.mjs.map +1 -0
  125. package/lib/factory/expressions/createMetaProperty.mjs +29 -0
  126. package/lib/factory/expressions/createMetaProperty.mjs.map +1 -0
  127. package/lib/factory/expressions/createModulo.mjs +24 -0
  128. package/lib/factory/expressions/createModulo.mjs.map +1 -0
  129. package/lib/factory/expressions/createMultiply.mjs +24 -0
  130. package/lib/factory/expressions/createMultiply.mjs.map +1 -0
  131. package/lib/factory/expressions/createNewExpression.mjs +30 -0
  132. package/lib/factory/expressions/createNewExpression.mjs.map +1 -0
  133. package/lib/factory/expressions/createNonNullChain.mjs +24 -0
  134. package/lib/factory/expressions/createNonNullChain.mjs.map +1 -0
  135. package/lib/factory/expressions/createNonNullExpression.mjs +24 -0
  136. package/lib/factory/expressions/createNonNullExpression.mjs.map +1 -0
  137. package/lib/factory/expressions/createObjectBindingPattern.mjs +24 -0
  138. package/lib/factory/expressions/createObjectBindingPattern.mjs.map +1 -0
  139. package/lib/factory/expressions/createObjectLiteralExpression.mjs +27 -0
  140. package/lib/factory/expressions/createObjectLiteralExpression.mjs.map +1 -0
  141. package/lib/factory/expressions/createOmittedExpression.mjs +23 -0
  142. package/lib/factory/expressions/createOmittedExpression.mjs.map +1 -0
  143. package/lib/factory/expressions/createParenthesizedExpression.mjs +24 -0
  144. package/lib/factory/expressions/createParenthesizedExpression.mjs.map +1 -0
  145. package/lib/factory/expressions/createPartiallyEmittedExpression.mjs +26 -0
  146. package/lib/factory/expressions/createPartiallyEmittedExpression.mjs.map +1 -0
  147. package/lib/factory/expressions/createPostfixDecrement.mjs +23 -0
  148. package/lib/factory/expressions/createPostfixDecrement.mjs.map +1 -0
  149. package/lib/factory/expressions/createPostfixIncrement.mjs +23 -0
  150. package/lib/factory/expressions/createPostfixIncrement.mjs.map +1 -0
  151. package/lib/factory/expressions/createPostfixUnaryExpression.mjs +25 -0
  152. package/lib/factory/expressions/createPostfixUnaryExpression.mjs.map +1 -0
  153. package/lib/factory/expressions/createPrefixDecrement.mjs +23 -0
  154. package/lib/factory/expressions/createPrefixDecrement.mjs.map +1 -0
  155. package/lib/factory/expressions/createPrefixIncrement.mjs +23 -0
  156. package/lib/factory/expressions/createPrefixIncrement.mjs.map +1 -0
  157. package/lib/factory/expressions/createPrefixMinus.mjs +23 -0
  158. package/lib/factory/expressions/createPrefixMinus.mjs.map +1 -0
  159. package/lib/factory/expressions/createPrefixPlus.mjs +23 -0
  160. package/lib/factory/expressions/createPrefixPlus.mjs.map +1 -0
  161. package/lib/factory/expressions/createPrefixUnaryExpression.mjs +25 -0
  162. package/lib/factory/expressions/createPrefixUnaryExpression.mjs.map +1 -0
  163. package/lib/factory/expressions/createPropertyAccessChain.mjs +32 -0
  164. package/lib/factory/expressions/createPropertyAccessChain.mjs.map +1 -0
  165. package/lib/factory/expressions/createPropertyAccessExpression.mjs +28 -0
  166. package/lib/factory/expressions/createPropertyAccessExpression.mjs.map +1 -0
  167. package/lib/factory/expressions/createPropertyAssignment.mjs +26 -0
  168. package/lib/factory/expressions/createPropertyAssignment.mjs.map +1 -0
  169. package/lib/factory/expressions/createRegularExpressionLiteral.mjs +23 -0
  170. package/lib/factory/expressions/createRegularExpressionLiteral.mjs.map +1 -0
  171. package/lib/factory/expressions/createRightShift.mjs +24 -0
  172. package/lib/factory/expressions/createRightShift.mjs.map +1 -0
  173. package/lib/factory/expressions/createSatisfiesExpression.mjs +25 -0
  174. package/lib/factory/expressions/createSatisfiesExpression.mjs.map +1 -0
  175. package/lib/factory/expressions/createShorthandPropertyAssignment.mjs +31 -0
  176. package/lib/factory/expressions/createShorthandPropertyAssignment.mjs.map +1 -0
  177. package/lib/factory/expressions/createSpreadAssignment.mjs +23 -0
  178. package/lib/factory/expressions/createSpreadAssignment.mjs.map +1 -0
  179. package/lib/factory/expressions/createSpreadElement.mjs +23 -0
  180. package/lib/factory/expressions/createSpreadElement.mjs.map +1 -0
  181. package/lib/factory/expressions/createStrictEquality.mjs +24 -0
  182. package/lib/factory/expressions/createStrictEquality.mjs.map +1 -0
  183. package/lib/factory/expressions/createStrictInequality.mjs +24 -0
  184. package/lib/factory/expressions/createStrictInequality.mjs.map +1 -0
  185. package/lib/factory/expressions/createSubtract.mjs +24 -0
  186. package/lib/factory/expressions/createSubtract.mjs.map +1 -0
  187. package/lib/factory/expressions/createTaggedTemplateExpression.mjs +27 -0
  188. package/lib/factory/expressions/createTaggedTemplateExpression.mjs.map +1 -0
  189. package/lib/factory/expressions/createTemplateExpression.mjs +27 -0
  190. package/lib/factory/expressions/createTemplateExpression.mjs.map +1 -0
  191. package/lib/factory/expressions/createTemplateSpan.mjs +28 -0
  192. package/lib/factory/expressions/createTemplateSpan.mjs.map +1 -0
  193. package/lib/factory/expressions/createTypeAssertion.mjs +25 -0
  194. package/lib/factory/expressions/createTypeAssertion.mjs.map +1 -0
  195. package/lib/factory/expressions/createTypeOfExpression.mjs +22 -0
  196. package/lib/factory/expressions/createTypeOfExpression.mjs.map +1 -0
  197. package/lib/factory/expressions/createUnsignedRightShift.mjs +24 -0
  198. package/lib/factory/expressions/createUnsignedRightShift.mjs.map +1 -0
  199. package/lib/factory/expressions/createVoidExpression.mjs +23 -0
  200. package/lib/factory/expressions/createVoidExpression.mjs.map +1 -0
  201. package/lib/factory/expressions/createVoidZero.mjs +22 -0
  202. package/lib/factory/expressions/createVoidZero.mjs.map +1 -0
  203. package/lib/factory/expressions/createYieldExpression.mjs +26 -0
  204. package/lib/factory/expressions/createYieldExpression.mjs.map +1 -0
  205. package/lib/factory/file/createBundle.mjs +29 -0
  206. package/lib/factory/file/createBundle.mjs.map +1 -0
  207. package/lib/factory/file/createNodeArray.mjs +24 -0
  208. package/lib/factory/file/createNodeArray.mjs.map +1 -0
  209. package/lib/factory/file/createSourceFile.mjs +24 -0
  210. package/lib/factory/file/createSourceFile.mjs.map +1 -0
  211. package/lib/factory/file/updateSourceFile.mjs +14 -0
  212. package/lib/factory/file/updateSourceFile.mjs.map +1 -0
  213. package/lib/factory/imports/createExportAssignment.mjs +27 -0
  214. package/lib/factory/imports/createExportAssignment.mjs.map +1 -0
  215. package/lib/factory/imports/createExportDeclaration.mjs +38 -0
  216. package/lib/factory/imports/createExportDeclaration.mjs.map +1 -0
  217. package/lib/factory/imports/createExportDefault.mjs +23 -0
  218. package/lib/factory/imports/createExportDefault.mjs.map +1 -0
  219. package/lib/factory/imports/createExportSpecifier.mjs +32 -0
  220. package/lib/factory/imports/createExportSpecifier.mjs.map +1 -0
  221. package/lib/factory/imports/createExternalModuleExport.mjs +26 -0
  222. package/lib/factory/imports/createExternalModuleExport.mjs.map +1 -0
  223. package/lib/factory/imports/createImportAttribute.mjs +25 -0
  224. package/lib/factory/imports/createImportAttribute.mjs.map +1 -0
  225. package/lib/factory/imports/createImportAttributes.mjs +30 -0
  226. package/lib/factory/imports/createImportAttributes.mjs.map +1 -0
  227. package/lib/factory/imports/createImportClause.mjs +27 -0
  228. package/lib/factory/imports/createImportClause.mjs.map +1 -0
  229. package/lib/factory/imports/createImportDeclaration.mjs +34 -0
  230. package/lib/factory/imports/createImportDeclaration.mjs.map +1 -0
  231. package/lib/factory/imports/createImportSpecifier.mjs +28 -0
  232. package/lib/factory/imports/createImportSpecifier.mjs.map +1 -0
  233. package/lib/factory/imports/createNamedExports.mjs +25 -0
  234. package/lib/factory/imports/createNamedExports.mjs.map +1 -0
  235. package/lib/factory/imports/createNamedImports.mjs +25 -0
  236. package/lib/factory/imports/createNamedImports.mjs.map +1 -0
  237. package/lib/factory/imports/createNamespaceExport.mjs +25 -0
  238. package/lib/factory/imports/createNamespaceExport.mjs.map +1 -0
  239. package/lib/factory/imports/createNamespaceImport.mjs +24 -0
  240. package/lib/factory/imports/createNamespaceImport.mjs.map +1 -0
  241. package/lib/factory/index.mjs +268 -0
  242. package/lib/factory/index.mjs.map +1 -0
  243. package/lib/factory/internal/asEntityName.mjs +7 -0
  244. package/lib/factory/internal/asEntityName.mjs.map +1 -0
  245. package/lib/factory/internal/asName.mjs +11 -0
  246. package/lib/factory/internal/asName.mjs.map +1 -0
  247. package/lib/factory/internal/asPropertyName.mjs +7 -0
  248. package/lib/factory/internal/asPropertyName.mjs.map +1 -0
  249. package/lib/factory/internal/make.mjs +14 -0
  250. package/lib/factory/internal/make.mjs.map +1 -0
  251. package/lib/factory/jsdoc/createJSDocAllType.mjs +21 -0
  252. package/lib/factory/jsdoc/createJSDocAllType.mjs.map +1 -0
  253. package/lib/factory/jsdoc/createJSDocAugmentsTag.mjs +30 -0
  254. package/lib/factory/jsdoc/createJSDocAugmentsTag.mjs.map +1 -0
  255. package/lib/factory/jsdoc/createJSDocAuthorTag.mjs +27 -0
  256. package/lib/factory/jsdoc/createJSDocAuthorTag.mjs.map +1 -0
  257. package/lib/factory/jsdoc/createJSDocCallbackTag.mjs +37 -0
  258. package/lib/factory/jsdoc/createJSDocCallbackTag.mjs.map +1 -0
  259. package/lib/factory/jsdoc/createJSDocClassTag.mjs +27 -0
  260. package/lib/factory/jsdoc/createJSDocClassTag.mjs.map +1 -0
  261. package/lib/factory/jsdoc/createJSDocComment.mjs +29 -0
  262. package/lib/factory/jsdoc/createJSDocComment.mjs.map +1 -0
  263. package/lib/factory/jsdoc/createJSDocDeprecatedTag.mjs +27 -0
  264. package/lib/factory/jsdoc/createJSDocDeprecatedTag.mjs.map +1 -0
  265. package/lib/factory/jsdoc/createJSDocEnumTag.mjs +31 -0
  266. package/lib/factory/jsdoc/createJSDocEnumTag.mjs.map +1 -0
  267. package/lib/factory/jsdoc/createJSDocFunctionType.mjs +26 -0
  268. package/lib/factory/jsdoc/createJSDocFunctionType.mjs.map +1 -0
  269. package/lib/factory/jsdoc/createJSDocImplementsTag.mjs +30 -0
  270. package/lib/factory/jsdoc/createJSDocImplementsTag.mjs.map +1 -0
  271. package/lib/factory/jsdoc/createJSDocImportTag.mjs +34 -0
  272. package/lib/factory/jsdoc/createJSDocImportTag.mjs.map +1 -0
  273. package/lib/factory/jsdoc/createJSDocLink.mjs +29 -0
  274. package/lib/factory/jsdoc/createJSDocLink.mjs.map +1 -0
  275. package/lib/factory/jsdoc/createJSDocLinkCode.mjs +29 -0
  276. package/lib/factory/jsdoc/createJSDocLinkCode.mjs.map +1 -0
  277. package/lib/factory/jsdoc/createJSDocLinkPlain.mjs +29 -0
  278. package/lib/factory/jsdoc/createJSDocLinkPlain.mjs.map +1 -0
  279. package/lib/factory/jsdoc/createJSDocMemberName.mjs +26 -0
  280. package/lib/factory/jsdoc/createJSDocMemberName.mjs.map +1 -0
  281. package/lib/factory/jsdoc/createJSDocNameReference.mjs +25 -0
  282. package/lib/factory/jsdoc/createJSDocNameReference.mjs.map +1 -0
  283. package/lib/factory/jsdoc/createJSDocNamepathType.mjs +25 -0
  284. package/lib/factory/jsdoc/createJSDocNamepathType.mjs.map +1 -0
  285. package/lib/factory/jsdoc/createJSDocNonNullableType.mjs +33 -0
  286. package/lib/factory/jsdoc/createJSDocNonNullableType.mjs.map +1 -0
  287. package/lib/factory/jsdoc/createJSDocNullableType.mjs +33 -0
  288. package/lib/factory/jsdoc/createJSDocNullableType.mjs.map +1 -0
  289. package/lib/factory/jsdoc/createJSDocOptionalType.mjs +23 -0
  290. package/lib/factory/jsdoc/createJSDocOptionalType.mjs.map +1 -0
  291. package/lib/factory/jsdoc/createJSDocOverloadTag.mjs +35 -0
  292. package/lib/factory/jsdoc/createJSDocOverloadTag.mjs.map +1 -0
  293. package/lib/factory/jsdoc/createJSDocOverrideTag.mjs +27 -0
  294. package/lib/factory/jsdoc/createJSDocOverrideTag.mjs.map +1 -0
  295. package/lib/factory/jsdoc/createJSDocParameterTag.mjs +46 -0
  296. package/lib/factory/jsdoc/createJSDocParameterTag.mjs.map +1 -0
  297. package/lib/factory/jsdoc/createJSDocPrivateTag.mjs +27 -0
  298. package/lib/factory/jsdoc/createJSDocPrivateTag.mjs.map +1 -0
  299. package/lib/factory/jsdoc/createJSDocPropertyTag.mjs +40 -0
  300. package/lib/factory/jsdoc/createJSDocPropertyTag.mjs.map +1 -0
  301. package/lib/factory/jsdoc/createJSDocProtectedTag.mjs +27 -0
  302. package/lib/factory/jsdoc/createJSDocProtectedTag.mjs.map +1 -0
  303. package/lib/factory/jsdoc/createJSDocPublicTag.mjs +27 -0
  304. package/lib/factory/jsdoc/createJSDocPublicTag.mjs.map +1 -0
  305. package/lib/factory/jsdoc/createJSDocReadonlyTag.mjs +27 -0
  306. package/lib/factory/jsdoc/createJSDocReadonlyTag.mjs.map +1 -0
  307. package/lib/factory/jsdoc/createJSDocReturnTag.mjs +32 -0
  308. package/lib/factory/jsdoc/createJSDocReturnTag.mjs.map +1 -0
  309. package/lib/factory/jsdoc/createJSDocSatisfiesTag.mjs +31 -0
  310. package/lib/factory/jsdoc/createJSDocSatisfiesTag.mjs.map +1 -0
  311. package/lib/factory/jsdoc/createJSDocSeeTag.mjs +31 -0
  312. package/lib/factory/jsdoc/createJSDocSeeTag.mjs.map +1 -0
  313. package/lib/factory/jsdoc/createJSDocSignature.mjs +32 -0
  314. package/lib/factory/jsdoc/createJSDocSignature.mjs.map +1 -0
  315. package/lib/factory/jsdoc/createJSDocTemplateTag.mjs +34 -0
  316. package/lib/factory/jsdoc/createJSDocTemplateTag.mjs.map +1 -0
  317. package/lib/factory/jsdoc/createJSDocText.mjs +25 -0
  318. package/lib/factory/jsdoc/createJSDocText.mjs.map +1 -0
  319. package/lib/factory/jsdoc/createJSDocThisTag.mjs +30 -0
  320. package/lib/factory/jsdoc/createJSDocThisTag.mjs.map +1 -0
  321. package/lib/factory/jsdoc/createJSDocThrowsTag.mjs +30 -0
  322. package/lib/factory/jsdoc/createJSDocThrowsTag.mjs.map +1 -0
  323. package/lib/factory/jsdoc/createJSDocTypeExpression.mjs +24 -0
  324. package/lib/factory/jsdoc/createJSDocTypeExpression.mjs.map +1 -0
  325. package/lib/factory/jsdoc/createJSDocTypeLiteral.mjs +29 -0
  326. package/lib/factory/jsdoc/createJSDocTypeLiteral.mjs.map +1 -0
  327. package/lib/factory/jsdoc/createJSDocTypeTag.mjs +31 -0
  328. package/lib/factory/jsdoc/createJSDocTypeTag.mjs.map +1 -0
  329. package/lib/factory/jsdoc/createJSDocTypedefTag.mjs +34 -0
  330. package/lib/factory/jsdoc/createJSDocTypedefTag.mjs.map +1 -0
  331. package/lib/factory/jsdoc/createJSDocUnknownTag.mjs +27 -0
  332. package/lib/factory/jsdoc/createJSDocUnknownTag.mjs.map +1 -0
  333. package/lib/factory/jsdoc/createJSDocUnknownType.mjs +21 -0
  334. package/lib/factory/jsdoc/createJSDocUnknownType.mjs.map +1 -0
  335. package/lib/factory/jsdoc/createJSDocVariadicType.mjs +24 -0
  336. package/lib/factory/jsdoc/createJSDocVariadicType.mjs.map +1 -0
  337. package/lib/factory/jsx/createJsxAttribute.mjs +29 -0
  338. package/lib/factory/jsx/createJsxAttribute.mjs.map +1 -0
  339. package/lib/factory/jsx/createJsxAttributes.mjs +27 -0
  340. package/lib/factory/jsx/createJsxAttributes.mjs.map +1 -0
  341. package/lib/factory/jsx/createJsxClosingElement.mjs +24 -0
  342. package/lib/factory/jsx/createJsxClosingElement.mjs.map +1 -0
  343. package/lib/factory/jsx/createJsxElement.mjs +32 -0
  344. package/lib/factory/jsx/createJsxElement.mjs.map +1 -0
  345. package/lib/factory/jsx/createJsxExpression.mjs +29 -0
  346. package/lib/factory/jsx/createJsxExpression.mjs.map +1 -0
  347. package/lib/factory/jsx/createJsxFragment.mjs +32 -0
  348. package/lib/factory/jsx/createJsxFragment.mjs.map +1 -0
  349. package/lib/factory/jsx/createJsxJsxClosingFragment.mjs +23 -0
  350. package/lib/factory/jsx/createJsxJsxClosingFragment.mjs.map +1 -0
  351. package/lib/factory/jsx/createJsxNamespacedName.mjs +28 -0
  352. package/lib/factory/jsx/createJsxNamespacedName.mjs.map +1 -0
  353. package/lib/factory/jsx/createJsxOpeningElement.mjs +32 -0
  354. package/lib/factory/jsx/createJsxOpeningElement.mjs.map +1 -0
  355. package/lib/factory/jsx/createJsxOpeningFragment.mjs +22 -0
  356. package/lib/factory/jsx/createJsxOpeningFragment.mjs.map +1 -0
  357. package/lib/factory/jsx/createJsxSelfClosingElement.mjs +31 -0
  358. package/lib/factory/jsx/createJsxSelfClosingElement.mjs.map +1 -0
  359. package/lib/factory/jsx/createJsxSpreadAttribute.mjs +24 -0
  360. package/lib/factory/jsx/createJsxSpreadAttribute.mjs.map +1 -0
  361. package/lib/factory/jsx/createJsxText.mjs +31 -0
  362. package/lib/factory/jsx/createJsxText.mjs.map +1 -0
  363. package/lib/factory/literals/createBigIntLiteral.mjs +23 -0
  364. package/lib/factory/literals/createBigIntLiteral.mjs.map +1 -0
  365. package/lib/factory/literals/createNoSubstitutionTemplateLiteral.mjs +24 -0
  366. package/lib/factory/literals/createNoSubstitutionTemplateLiteral.mjs.map +1 -0
  367. package/lib/factory/literals/createNumericLiteral.mjs +23 -0
  368. package/lib/factory/literals/createNumericLiteral.mjs.map +1 -0
  369. package/lib/factory/literals/createStringLiteral.mjs +29 -0
  370. package/lib/factory/literals/createStringLiteral.mjs.map +1 -0
  371. package/lib/factory/literals/createStringLiteralFromNode.mjs +25 -0
  372. package/lib/factory/literals/createStringLiteralFromNode.mjs.map +1 -0
  373. package/lib/factory/literals/createTemplateHead.mjs +27 -0
  374. package/lib/factory/literals/createTemplateHead.mjs.map +1 -0
  375. package/lib/factory/literals/createTemplateMiddle.mjs +25 -0
  376. package/lib/factory/literals/createTemplateMiddle.mjs.map +1 -0
  377. package/lib/factory/literals/createTemplateTail.mjs +25 -0
  378. package/lib/factory/literals/createTemplateTail.mjs.map +1 -0
  379. package/lib/factory/names/createDecorator.mjs +23 -0
  380. package/lib/factory/names/createDecorator.mjs.map +1 -0
  381. package/lib/factory/names/createFalse.mjs +23 -0
  382. package/lib/factory/names/createFalse.mjs.map +1 -0
  383. package/lib/factory/names/createIdentifier.mjs +23 -0
  384. package/lib/factory/names/createIdentifier.mjs.map +1 -0
  385. package/lib/factory/names/createLoopVariable.mjs +28 -0
  386. package/lib/factory/names/createLoopVariable.mjs.map +1 -0
  387. package/lib/factory/names/createModifier.mjs +25 -0
  388. package/lib/factory/names/createModifier.mjs.map +1 -0
  389. package/lib/factory/names/createModifiersFromModifierFlags.mjs +82 -0
  390. package/lib/factory/names/createModifiersFromModifierFlags.mjs.map +1 -0
  391. package/lib/factory/names/createNull.mjs +23 -0
  392. package/lib/factory/names/createNull.mjs.map +1 -0
  393. package/lib/factory/names/createPrivateIdentifier.mjs +23 -0
  394. package/lib/factory/names/createPrivateIdentifier.mjs.map +1 -0
  395. package/lib/factory/names/createQualifiedName.mjs +28 -0
  396. package/lib/factory/names/createQualifiedName.mjs.map +1 -0
  397. package/lib/factory/names/createSuper.mjs +23 -0
  398. package/lib/factory/names/createSuper.mjs.map +1 -0
  399. package/lib/factory/names/createTempVariable.mjs +33 -0
  400. package/lib/factory/names/createTempVariable.mjs.map +1 -0
  401. package/lib/factory/names/createThis.mjs +23 -0
  402. package/lib/factory/names/createThis.mjs.map +1 -0
  403. package/lib/factory/names/createToken.mjs +24 -0
  404. package/lib/factory/names/createToken.mjs.map +1 -0
  405. package/lib/factory/names/createTrue.mjs +23 -0
  406. package/lib/factory/names/createTrue.mjs.map +1 -0
  407. package/lib/factory/names/createUniqueName.mjs +32 -0
  408. package/lib/factory/names/createUniqueName.mjs.map +1 -0
  409. package/lib/factory/names/createUniquePrivateName.mjs +29 -0
  410. package/lib/factory/names/createUniquePrivateName.mjs.map +1 -0
  411. package/lib/factory/statements/createBlock.mjs +29 -0
  412. package/lib/factory/statements/createBlock.mjs.map +1 -0
  413. package/lib/factory/statements/createBreakStatement.mjs +31 -0
  414. package/lib/factory/statements/createBreakStatement.mjs.map +1 -0
  415. package/lib/factory/statements/createCaseBlock.mjs +30 -0
  416. package/lib/factory/statements/createCaseBlock.mjs.map +1 -0
  417. package/lib/factory/statements/createCaseClause.mjs +28 -0
  418. package/lib/factory/statements/createCaseClause.mjs.map +1 -0
  419. package/lib/factory/statements/createCatchClause.mjs +35 -0
  420. package/lib/factory/statements/createCatchClause.mjs.map +1 -0
  421. package/lib/factory/statements/createContinueStatement.mjs +31 -0
  422. package/lib/factory/statements/createContinueStatement.mjs.map +1 -0
  423. package/lib/factory/statements/createDebuggerStatement.mjs +21 -0
  424. package/lib/factory/statements/createDebuggerStatement.mjs.map +1 -0
  425. package/lib/factory/statements/createDefaultClause.mjs +24 -0
  426. package/lib/factory/statements/createDefaultClause.mjs.map +1 -0
  427. package/lib/factory/statements/createDoStatement.mjs +27 -0
  428. package/lib/factory/statements/createDoStatement.mjs.map +1 -0
  429. package/lib/factory/statements/createEmptyStatement.mjs +21 -0
  430. package/lib/factory/statements/createEmptyStatement.mjs.map +1 -0
  431. package/lib/factory/statements/createExpressionStatement.mjs +23 -0
  432. package/lib/factory/statements/createExpressionStatement.mjs.map +1 -0
  433. package/lib/factory/statements/createForInStatement.mjs +29 -0
  434. package/lib/factory/statements/createForInStatement.mjs.map +1 -0
  435. package/lib/factory/statements/createForOfStatement.mjs +39 -0
  436. package/lib/factory/statements/createForOfStatement.mjs.map +1 -0
  437. package/lib/factory/statements/createForStatement.mjs +32 -0
  438. package/lib/factory/statements/createForStatement.mjs.map +1 -0
  439. package/lib/factory/statements/createIfStatement.mjs +31 -0
  440. package/lib/factory/statements/createIfStatement.mjs.map +1 -0
  441. package/lib/factory/statements/createLabeledStatement.mjs +28 -0
  442. package/lib/factory/statements/createLabeledStatement.mjs.map +1 -0
  443. package/lib/factory/statements/createNotEmittedStatement.mjs +20 -0
  444. package/lib/factory/statements/createNotEmittedStatement.mjs.map +1 -0
  445. package/lib/factory/statements/createReturnStatement.mjs +28 -0
  446. package/lib/factory/statements/createReturnStatement.mjs.map +1 -0
  447. package/lib/factory/statements/createSwitchStatement.mjs +31 -0
  448. package/lib/factory/statements/createSwitchStatement.mjs.map +1 -0
  449. package/lib/factory/statements/createThrowStatement.mjs +22 -0
  450. package/lib/factory/statements/createThrowStatement.mjs.map +1 -0
  451. package/lib/factory/statements/createTryStatement.mjs +34 -0
  452. package/lib/factory/statements/createTryStatement.mjs.map +1 -0
  453. package/lib/factory/statements/createVariableDeclaration.mjs +38 -0
  454. package/lib/factory/statements/createVariableDeclaration.mjs.map +1 -0
  455. package/lib/factory/statements/createVariableDeclarationList.mjs +28 -0
  456. package/lib/factory/statements/createVariableDeclarationList.mjs.map +1 -0
  457. package/lib/factory/statements/createVariableStatement.mjs +33 -0
  458. package/lib/factory/statements/createVariableStatement.mjs.map +1 -0
  459. package/lib/factory/statements/createWhileStatement.mjs +27 -0
  460. package/lib/factory/statements/createWhileStatement.mjs.map +1 -0
  461. package/lib/factory/statements/createWithStatement.mjs +27 -0
  462. package/lib/factory/statements/createWithStatement.mjs.map +1 -0
  463. package/lib/factory/types/createArrayTypeNode.mjs +25 -0
  464. package/lib/factory/types/createArrayTypeNode.mjs.map +1 -0
  465. package/lib/factory/types/createCallSignature.mjs +26 -0
  466. package/lib/factory/types/createCallSignature.mjs.map +1 -0
  467. package/lib/factory/types/createConditionalTypeNode.mjs +28 -0
  468. package/lib/factory/types/createConditionalTypeNode.mjs.map +1 -0
  469. package/lib/factory/types/createConstructSignature.mjs +25 -0
  470. package/lib/factory/types/createConstructSignature.mjs.map +1 -0
  471. package/lib/factory/types/createConstructorTypeNode.mjs +27 -0
  472. package/lib/factory/types/createConstructorTypeNode.mjs.map +1 -0
  473. package/lib/factory/types/createExpressionWithTypeArguments.mjs +25 -0
  474. package/lib/factory/types/createExpressionWithTypeArguments.mjs.map +1 -0
  475. package/lib/factory/types/createFunctionTypeNode.mjs +27 -0
  476. package/lib/factory/types/createFunctionTypeNode.mjs.map +1 -0
  477. package/lib/factory/types/createImportTypeNode.mjs +27 -0
  478. package/lib/factory/types/createImportTypeNode.mjs.map +1 -0
  479. package/lib/factory/types/createIndexSignature.mjs +25 -0
  480. package/lib/factory/types/createIndexSignature.mjs.map +1 -0
  481. package/lib/factory/types/createIndexedAccessTypeNode.mjs +25 -0
  482. package/lib/factory/types/createIndexedAccessTypeNode.mjs.map +1 -0
  483. package/lib/factory/types/createInferTypeNode.mjs +24 -0
  484. package/lib/factory/types/createInferTypeNode.mjs.map +1 -0
  485. package/lib/factory/types/createIntersectionTypeNode.mjs +24 -0
  486. package/lib/factory/types/createIntersectionTypeNode.mjs.map +1 -0
  487. package/lib/factory/types/createKeywordTypeNode.mjs +25 -0
  488. package/lib/factory/types/createKeywordTypeNode.mjs.map +1 -0
  489. package/lib/factory/types/createLiteralTypeNode.mjs +26 -0
  490. package/lib/factory/types/createLiteralTypeNode.mjs.map +1 -0
  491. package/lib/factory/types/createMappedTypeNode.mjs +44 -0
  492. package/lib/factory/types/createMappedTypeNode.mjs.map +1 -0
  493. package/lib/factory/types/createMethodSignature.mjs +39 -0
  494. package/lib/factory/types/createMethodSignature.mjs.map +1 -0
  495. package/lib/factory/types/createNamedTupleMember.mjs +33 -0
  496. package/lib/factory/types/createNamedTupleMember.mjs.map +1 -0
  497. package/lib/factory/types/createNotEmittedTypeElement.mjs +17 -0
  498. package/lib/factory/types/createNotEmittedTypeElement.mjs.map +1 -0
  499. package/lib/factory/types/createOptionalTypeNode.mjs +23 -0
  500. package/lib/factory/types/createOptionalTypeNode.mjs.map +1 -0
  501. package/lib/factory/types/createParenthesizedType.mjs +23 -0
  502. package/lib/factory/types/createParenthesizedType.mjs.map +1 -0
  503. package/lib/factory/types/createPropertySignature.mjs +34 -0
  504. package/lib/factory/types/createPropertySignature.mjs.map +1 -0
  505. package/lib/factory/types/createRestTypeNode.mjs +22 -0
  506. package/lib/factory/types/createRestTypeNode.mjs.map +1 -0
  507. package/lib/factory/types/createTemplateLiteralType.mjs +27 -0
  508. package/lib/factory/types/createTemplateLiteralType.mjs.map +1 -0
  509. package/lib/factory/types/createTemplateLiteralTypeSpan.mjs +27 -0
  510. package/lib/factory/types/createTemplateLiteralTypeSpan.mjs.map +1 -0
  511. package/lib/factory/types/createThisTypeNode.mjs +22 -0
  512. package/lib/factory/types/createThisTypeNode.mjs.map +1 -0
  513. package/lib/factory/types/createTupleTypeNode.mjs +24 -0
  514. package/lib/factory/types/createTupleTypeNode.mjs.map +1 -0
  515. package/lib/factory/types/createTypeLiteralNode.mjs +25 -0
  516. package/lib/factory/types/createTypeLiteralNode.mjs.map +1 -0
  517. package/lib/factory/types/createTypeOperatorNode.mjs +26 -0
  518. package/lib/factory/types/createTypeOperatorNode.mjs.map +1 -0
  519. package/lib/factory/types/createTypeParameterDeclaration.mjs +34 -0
  520. package/lib/factory/types/createTypeParameterDeclaration.mjs.map +1 -0
  521. package/lib/factory/types/createTypePredicateNode.mjs +35 -0
  522. package/lib/factory/types/createTypePredicateNode.mjs.map +1 -0
  523. package/lib/factory/types/createTypeQueryNode.mjs +23 -0
  524. package/lib/factory/types/createTypeQueryNode.mjs.map +1 -0
  525. package/lib/factory/types/createTypeReferenceNode.mjs +30 -0
  526. package/lib/factory/types/createTypeReferenceNode.mjs.map +1 -0
  527. package/lib/factory/types/createUnionTypeNode.mjs +24 -0
  528. package/lib/factory/types/createUnionTypeNode.mjs.map +1 -0
  529. package/lib/index.d.ts +0 -1
  530. package/lib/index.js.map +1 -1
  531. package/lib/index.mjs +10 -0
  532. package/lib/index.mjs.map +1 -0
  533. package/lib/internal/doc.mjs +171 -0
  534. package/lib/internal/doc.mjs.map +1 -0
  535. package/lib/syntax/NodeFlags.mjs +23 -0
  536. package/lib/syntax/NodeFlags.mjs.map +1 -0
  537. package/lib/syntax/SyntaxKind.mjs +110 -0
  538. package/lib/syntax/SyntaxKind.mjs.map +1 -0
  539. package/package.json +6 -9
  540. package/src/TsPrinter.ts +702 -88
  541. package/src/index.ts +0 -1
@@ -0,0 +1,28 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create a {@link ReturnStatement}: a `return ...;` statement.
5
+ *
6
+ * The optional `expression` is the value handed back to the caller. Omit it for
7
+ * a bare `return;` that yields `undefined`.
8
+ *
9
+ * With no expression the result is:
10
+ *
11
+ * ```ts
12
+ * return;
13
+ * ```
14
+ *
15
+ * With an `expression` of `value` the result is:
16
+ *
17
+ * ```ts
18
+ * return value;
19
+ * ```
20
+ *
21
+ * @author Jeongho Nam - https://github.com/samchon
22
+ * @param expression The expression.
23
+ * @returns The created {@link ReturnStatement}.
24
+ */
25
+ const createReturnStatement = (expression) => make("ReturnStatement", { expression });
26
+
27
+ export { createReturnStatement };
28
+ //# sourceMappingURL=createReturnStatement.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createReturnStatement.mjs","sources":["../../../src/factory/statements/createReturnStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;;;;AAqBG;AACI,MAAM,qBAAqB,GAAG,CACnC,UAAuB,KACH,IAAI,CAAC,iBAAiB,EAAE,EAAE,UAAU,EAAE;;;;"}
@@ -0,0 +1,31 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create a {@link SwitchStatement}: a `switch (...) { ... }` statement.
5
+ *
6
+ * The `expression` is the subject compared against each arm, and `caseBlock` is
7
+ * the braced body of `case` and `default` clauses, built with
8
+ * {@link createCaseBlock}.
9
+ *
10
+ * With `expression` of `x` and a `caseBlock` holding a `case 1:` arm (calling
11
+ * `a()` then `break`) and a `default:` arm (calling `b()`), the result is:
12
+ *
13
+ * ```ts
14
+ * switch (x) {
15
+ * case 1:
16
+ * a();
17
+ * break;
18
+ * default:
19
+ * b();
20
+ * }
21
+ * ```
22
+ *
23
+ * @author Jeongho Nam - https://github.com/samchon
24
+ * @param expression The expression.
25
+ * @param caseBlock The caseBlock.
26
+ * @returns The created {@link SwitchStatement}.
27
+ */
28
+ const createSwitchStatement = (expression, caseBlock) => make("SwitchStatement", { expression, caseBlock });
29
+
30
+ export { createSwitchStatement };
31
+ //# sourceMappingURL=createSwitchStatement.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSwitchStatement.mjs","sources":["../../../src/factory/statements/createSwitchStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;;;;;;;AAwBG;MACU,qBAAqB,GAAG,CACnC,UAAsB,EACtB,SAAoB,KACA,IAAI,CAAC,iBAAiB,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE;;;;"}
@@ -0,0 +1,22 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create a {@link ThrowStatement}: a `throw ...;` statement.
5
+ *
6
+ * The `expression` is the value raised, commonly a freshly constructed error.
7
+ * Unlike `return`, the expression is required.
8
+ *
9
+ * With an `expression` of `new Error("oops")`, the result is:
10
+ *
11
+ * ```ts
12
+ * throw new Error("oops");
13
+ * ```
14
+ *
15
+ * @author Jeongho Nam - https://github.com/samchon
16
+ * @param expression The expression.
17
+ * @returns The created {@link ThrowStatement}.
18
+ */
19
+ const createThrowStatement = (expression) => make("ThrowStatement", { expression });
20
+
21
+ export { createThrowStatement };
22
+ //# sourceMappingURL=createThrowStatement.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createThrowStatement.mjs","sources":["../../../src/factory/statements/createThrowStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;AAeG;AACI,MAAM,oBAAoB,GAAG,CAAC,UAAsB,KACzD,IAAI,CAAC,gBAAgB,EAAE,EAAE,UAAU,EAAE;;;;"}
@@ -0,0 +1,34 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create a {@link TryStatement}: a `try { ... } catch { ... } finally { ... }`
5
+ * statement.
6
+ *
7
+ * The `tryBlock` is the guarded body. The `catchClause` and `finallyBlock` are
8
+ * both optional, but at least one must be present for valid TypeScript: pass
9
+ * `undefined` for `catchClause` to emit a `try`/`finally`, or `undefined` for
10
+ * `finallyBlock` to emit a `try`/`catch`.
11
+ *
12
+ * With a `tryBlock` calling `risky()`, a `catchClause` binding `e` and calling
13
+ * `handle(e)`, and a `finallyBlock` calling `cleanup()`, the result is:
14
+ *
15
+ * ```ts
16
+ * try {
17
+ * risky();
18
+ * } catch (e) {
19
+ * handle(e);
20
+ * } finally {
21
+ * cleanup();
22
+ * }
23
+ * ```
24
+ *
25
+ * @author Jeongho Nam - https://github.com/samchon
26
+ * @param tryBlock The tryBlock.
27
+ * @param catchClause The catchClause.
28
+ * @param finallyBlock The finallyBlock.
29
+ * @returns The created {@link TryStatement}.
30
+ */
31
+ const createTryStatement = (tryBlock, catchClause, finallyBlock) => make("TryStatement", { tryBlock, catchClause, finallyBlock });
32
+
33
+ export { createTryStatement };
34
+ //# sourceMappingURL=createTryStatement.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTryStatement.mjs","sources":["../../../src/factory/statements/createTryStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BG;AACI,MAAM,kBAAkB,GAAG,CAChC,QAAe,EACf,WAAoC,EACpC,YAA+B,KAE/B,IAAI,CAAC,cAAc,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE;;;;"}
@@ -0,0 +1,38 @@
1
+ import { make } from '../internal/make.mjs';
2
+ import { createIdentifier } from '../names/createIdentifier.mjs';
3
+
4
+ /**
5
+ * Create a {@link VariableDeclaration}: one `name = value` binding.
6
+ *
7
+ * The `name` is the binding target; a string becomes an identifier, while a
8
+ * {@link BindingName} allows array or object destructuring such as `[a, b]`. The
9
+ * `exclamationToken` adds the definite-assignment `!`, `type` adds a `: T`
10
+ * annotation, and `initializer` adds `= value`. Each of those three is
11
+ * optional.
12
+ *
13
+ * This node is a single declarator, not a full statement: it carries no `const`
14
+ * / `let` / `var` keyword (that lives on the enclosing
15
+ * {@link VariableDeclarationList}) and no trailing semicolon. With a `name` of
16
+ * `x` and an `initializer` of `1`, it prints as:
17
+ *
18
+ * ```ts
19
+ * x = 1;
20
+ * ```
21
+ *
22
+ * @author Jeongho Nam - https://github.com/samchon
23
+ * @param name The name; a {@link BindingName} allows array / object
24
+ * destructuring (e.g. `const [a, b] = ...`).
25
+ * @param exclamationToken The definite-assignment marker (`!`), if any.
26
+ * @param type The type.
27
+ * @param initializer The initializer, if any.
28
+ * @returns The created {@link VariableDeclaration}.
29
+ */
30
+ const createVariableDeclaration = (name, exclamationToken, type, initializer) => make("VariableDeclaration", {
31
+ name: typeof name === "string" ? createIdentifier(name) : name,
32
+ exclamationToken,
33
+ type,
34
+ initializer,
35
+ });
36
+
37
+ export { createVariableDeclaration };
38
+ //# sourceMappingURL=createVariableDeclaration.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createVariableDeclaration.mjs","sources":["../../../src/factory/statements/createVariableDeclaration.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAUA;;;;;;;;;;;;;;;;;;;;;;;;;AAyBG;AACI,MAAM,yBAAyB,GAAG,CACvC,IAA0B,EAC1B,gBAAwB,EACxB,IAAe,EACf,WAAwB,KAExB,IAAI,CAAC,qBAAqB,EAAE;AAC1B,IAAA,IAAI,EAAE,OAAO,IAAI,KAAK,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,IAAI;IAC9D,gBAAgB;IAChB,IAAI;IACJ,WAAW;AACZ,CAAA;;;;"}
@@ -0,0 +1,28 @@
1
+ import '../../syntax/SyntaxKind.mjs';
2
+ import { NodeFlags } from '../../syntax/NodeFlags.mjs';
3
+ import { make } from '../internal/make.mjs';
4
+
5
+ /**
6
+ * Create a {@link VariableDeclarationList}: the `const x = 1` group.
7
+ *
8
+ * The `declarations` are the comma-separated declarators, and `flags` chooses
9
+ * the keyword the printer emits: `const`, `let`, or plain `var` when no flag is
10
+ * set. This is the keyword-bearing part shared by a {@link VariableStatement}
11
+ * and by `for` loop headers.
12
+ *
13
+ * The list carries no trailing semicolon on its own. With a single declaration
14
+ * of `x = 1` and the `const` flag, it prints as:
15
+ *
16
+ * ```ts
17
+ * const x = 1;
18
+ * ```
19
+ *
20
+ * @author Jeongho Nam - https://github.com/samchon
21
+ * @param declarations The declarations.
22
+ * @param flags The declaration flags (`const` / `let` / `var`).
23
+ * @returns The created {@link VariableDeclarationList}.
24
+ */
25
+ const createVariableDeclarationList = (declarations, flags = NodeFlags.None) => make("VariableDeclarationList", { declarations, flags });
26
+
27
+ export { createVariableDeclarationList };
28
+ //# sourceMappingURL=createVariableDeclarationList.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createVariableDeclarationList.mjs","sources":["../../../src/factory/statements/createVariableDeclarationList.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAIA;;;;;;;;;;;;;;;;;;;AAmBG;AACI,MAAM,6BAA6B,GAAG,CAC3C,YAA4C,EAC5C,KAAA,GAAmB,SAAS,CAAC,IAAI,KAEjC,IAAI,CAAC,yBAAyB,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE;;;;"}
@@ -0,0 +1,33 @@
1
+ import { make } from '../internal/make.mjs';
2
+ import { createVariableDeclarationList } from './createVariableDeclarationList.mjs';
3
+
4
+ /**
5
+ * Create a {@link VariableStatement}: a full `const x = 1;` statement.
6
+ *
7
+ * The optional `modifiers` are leading keywords such as `export` or `declare`.
8
+ * The `declarationList` carries the keyword and declarators; pass a
9
+ * {@link VariableDeclarationList} directly, or pass a plain array of
10
+ * declarations and it is wrapped into a list for you (defaulting to `var`, so
11
+ * build the list yourself when you need `const` or `let`).
12
+ *
13
+ * This is the statement-level wrapper that adds the trailing semicolon. With no
14
+ * modifiers and a `const` declaration list of `x = 1`, the result is:
15
+ *
16
+ * ```ts
17
+ * const x = 1;
18
+ * ```
19
+ *
20
+ * @author Jeongho Nam - https://github.com/samchon
21
+ * @param modifiers The leading modifiers and decorators, if any.
22
+ * @param declarationList The declaration list.
23
+ * @returns The created {@link VariableStatement}.
24
+ */
25
+ const createVariableStatement = (modifiers, declarationList) => make("VariableStatement", {
26
+ modifiers,
27
+ declarationList: Array.isArray(declarationList)
28
+ ? createVariableDeclarationList(declarationList)
29
+ : declarationList,
30
+ });
31
+
32
+ export { createVariableStatement };
33
+ //# sourceMappingURL=createVariableStatement.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createVariableStatement.mjs","sources":["../../../src/factory/statements/createVariableStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AASA;;;;;;;;;;;;;;;;;;;;AAoBG;AACI,MAAM,uBAAuB,GAAG,CACrC,SAA8C,EAC9C,eAAyE,KAEzE,IAAI,CAAC,mBAAmB,EAAE;IACxB,SAAS;AACT,IAAA,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe;AAC5C,UAAE,6BAA6B,CAC3B,eAAiD;AAErD,UAAG,eAA2C;AACjD,CAAA;;;;"}
@@ -0,0 +1,27 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create a {@link WhileStatement}: a `while (...) ...` loop.
5
+ *
6
+ * The `expression` is the condition tested before each pass and `statement` is
7
+ * the loop body. The body runs zero or more times, only while the condition
8
+ * holds.
9
+ *
10
+ * With an `expression` of `cond` and a `statement` block calling `a()`, the
11
+ * result is:
12
+ *
13
+ * ```ts
14
+ * while (cond) {
15
+ * a();
16
+ * }
17
+ * ```
18
+ *
19
+ * @author Jeongho Nam - https://github.com/samchon
20
+ * @param expression The expression.
21
+ * @param statement The statement.
22
+ * @returns The created {@link WhileStatement}.
23
+ */
24
+ const createWhileStatement = (expression, statement) => make("WhileStatement", { expression, statement });
25
+
26
+ export { createWhileStatement };
27
+ //# sourceMappingURL=createWhileStatement.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createWhileStatement.mjs","sources":["../../../src/factory/statements/createWhileStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;;;AAoBG;MACU,oBAAoB,GAAG,CAClC,UAAsB,EACtB,SAAoB,KACD,IAAI,CAAC,gBAAgB,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE;;;;"}
@@ -0,0 +1,27 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create a {@link WithStatement}: a `with (...) ...` statement.
5
+ *
6
+ * The `expression` supplies the object whose properties join the scope of
7
+ * `statement`, the body. `with` is disallowed in strict mode and in ES modules,
8
+ * so this exists mainly for completeness and faithful round-tripping.
9
+ *
10
+ * With an `expression` of `obj` and a `statement` block calling `a()`, the
11
+ * result is:
12
+ *
13
+ * ```ts
14
+ * with (obj) {
15
+ * a();
16
+ * }
17
+ * ```
18
+ *
19
+ * @author Jeongho Nam - https://github.com/samchon
20
+ * @param expression The expression.
21
+ * @param statement The statement.
22
+ * @returns The created {@link WithStatement}.
23
+ */
24
+ const createWithStatement = (expression, statement) => make("WithStatement", { expression, statement });
25
+
26
+ export { createWithStatement };
27
+ //# sourceMappingURL=createWithStatement.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createWithStatement.mjs","sources":["../../../src/factory/statements/createWithStatement.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;;;AAoBG;MACU,mBAAmB,GAAG,CACjC,UAAsB,EACtB,SAAoB,KACF,IAAI,CAAC,eAAe,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE;;;;"}
@@ -0,0 +1,25 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create an {@link ArrayTypeNode}: a `T[]` postfix array type.
5
+ *
6
+ * The element type is emitted in postfix-operand position, so a
7
+ * lower-precedence form that would otherwise re-associate gets wrapped in
8
+ * parentheses first. A union, intersection, function, constructor, conditional,
9
+ * infer, or type-operator element prints as `(...)[]`; anything else prints
10
+ * bare.
11
+ *
12
+ * Given a `string` element, the printer renders:
13
+ *
14
+ * ```ts
15
+ * string[]
16
+ * ```
17
+ *
18
+ * @author Jeongho Nam - https://github.com/samchon
19
+ * @param elementType The element type.
20
+ * @returns The created {@link ArrayTypeNode}.
21
+ */
22
+ const createArrayTypeNode = (elementType) => make("ArrayTypeNode", { elementType });
23
+
24
+ export { createArrayTypeNode };
25
+ //# sourceMappingURL=createArrayTypeNode.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createArrayTypeNode.mjs","sources":["../../../src/factory/types/createArrayTypeNode.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;AAkBG;AACI,MAAM,mBAAmB,GAAG,CAAC,WAAqB,KACvD,IAAI,CAAC,eAAe,EAAE,EAAE,WAAW,EAAE;;;;"}
@@ -0,0 +1,26 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create a {@link CallSignature}: a `(params): ReturnType` call signature for an
5
+ * interface or type literal.
6
+ *
7
+ * Optional type parameters print first as `<...>`, then the parameter list,
8
+ * then the return type as `: Type` when present.
9
+ *
10
+ * Given one `x: number` parameter and a `string` return type, the printer
11
+ * renders:
12
+ *
13
+ * ```ts
14
+ * (x: number): string
15
+ * ```
16
+ *
17
+ * @author Jeongho Nam - https://github.com/samchon
18
+ * @param typeParameters The generic type parameters, if any.
19
+ * @param parameters The parameters.
20
+ * @param type The return type, if any.
21
+ * @returns The created {@link CallSignature}.
22
+ */
23
+ const createCallSignature = (typeParameters, parameters, type) => make("CallSignature", { typeParameters, parameters, type });
24
+
25
+ export { createCallSignature };
26
+ //# sourceMappingURL=createCallSignature.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createCallSignature.mjs","sources":["../../../src/factory/types/createCallSignature.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAQA;;;;;;;;;;;;;;;;;;;AAmBG;AACI,MAAM,mBAAmB,GAAG,CACjC,cAA+D,EAC/D,UAA2C,EAC3C,IAA0B,KAE1B,IAAI,CAAC,eAAe,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE;;;;"}
@@ -0,0 +1,28 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create a {@link ConditionalTypeNode}: a `C extends E ? X : Y` conditional
5
+ * type.
6
+ *
7
+ * The four type arms print in order, joined by `extends`, `?`, and `:`. The
8
+ * printer emits each arm as-is without adding parentheses, so the caller is
9
+ * responsible for wrapping any arm that needs grouping.
10
+ *
11
+ * Given check `T`, extends `U`, true `string`, and false `number`, the printer
12
+ * renders:
13
+ *
14
+ * ```ts
15
+ * T extends U ? string : number
16
+ * ```
17
+ *
18
+ * @author Jeongho Nam - https://github.com/samchon
19
+ * @param checkType The type being tested.
20
+ * @param extendsType The type tested against.
21
+ * @param trueType The branch type when the test passes.
22
+ * @param falseType The branch type when the test fails.
23
+ * @returns The created {@link ConditionalTypeNode}.
24
+ */
25
+ const createConditionalTypeNode = (checkType, extendsType, trueType, falseType) => make("ConditionalTypeNode", { checkType, extendsType, trueType, falseType });
26
+
27
+ export { createConditionalTypeNode };
28
+ //# sourceMappingURL=createConditionalTypeNode.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createConditionalTypeNode.mjs","sources":["../../../src/factory/types/createConditionalTypeNode.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;;;;AAqBG;AACI,MAAM,yBAAyB,GAAG,CACvC,SAAmB,EACnB,WAAqB,EACrB,QAAkB,EAClB,SAAmB,KAEnB,IAAI,CAAC,qBAAqB,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE;;;;"}
@@ -0,0 +1,25 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create a {@link ConstructSignature}: a `new (params): T` construct signature
5
+ * for an interface or type literal.
6
+ *
7
+ * The `new ` keyword prints first, then optional type parameters as `<...>`,
8
+ * the parameter list, and the return type as `: Type` when present.
9
+ *
10
+ * Given one `x: number` parameter and a `Foo` return type, the printer renders:
11
+ *
12
+ * ```ts
13
+ * new (x: number): Foo
14
+ * ```
15
+ *
16
+ * @author Jeongho Nam - https://github.com/samchon
17
+ * @param typeParameters The generic type parameters, if any.
18
+ * @param parameters The parameters.
19
+ * @param type The return type, if any.
20
+ * @returns The created {@link ConstructSignature}.
21
+ */
22
+ const createConstructSignature = (typeParameters, parameters, type) => make("ConstructSignature", { typeParameters, parameters, type });
23
+
24
+ export { createConstructSignature };
25
+ //# sourceMappingURL=createConstructSignature.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createConstructSignature.mjs","sources":["../../../src/factory/types/createConstructSignature.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAQA;;;;;;;;;;;;;;;;;;AAkBG;AACI,MAAM,wBAAwB,GAAG,CACtC,cAA+D,EAC/D,UAA2C,EAC3C,IAA0B,KAE1B,IAAI,CAAC,oBAAoB,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE;;;;"}
@@ -0,0 +1,27 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create a {@link ConstructorTypeNode}: a `new (params) => T` constructor type.
5
+ *
6
+ * Any modifiers print first (for example `abstract`), then the `new ` keyword,
7
+ * then optional type parameters as `<...>`, the parameter list, and finally
8
+ * `=>` followed by the return type.
9
+ *
10
+ * Given no modifiers, one `x: number` parameter, and a `Foo` return type, the
11
+ * printer renders:
12
+ *
13
+ * ```ts
14
+ * new (x: number) => Foo
15
+ * ```
16
+ *
17
+ * @author Jeongho Nam - https://github.com/samchon
18
+ * @param modifiers The leading modifiers, if any.
19
+ * @param typeParameters The generic type parameters, if any.
20
+ * @param parameters The parameters.
21
+ * @param type The return type.
22
+ * @returns The created {@link ConstructorTypeNode}.
23
+ */
24
+ const createConstructorTypeNode = (modifiers, typeParameters, parameters, type) => make("ConstructorTypeNode", { modifiers, typeParameters, parameters, type });
25
+
26
+ export { createConstructorTypeNode };
27
+ //# sourceMappingURL=createConstructorTypeNode.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createConstructorTypeNode.mjs","sources":["../../../src/factory/types/createConstructorTypeNode.ts"],"sourcesContent":[null],"names":[],"mappings":";;AASA;;;;;;;;;;;;;;;;;;;;AAoBG;AACI,MAAM,yBAAyB,GAAG,CACvC,SAA0C,EAC1C,cAA+D,EAC/D,UAA2C,EAC3C,IAAc,KAEd,IAAI,CAAC,qBAAqB,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE;;;;"}
@@ -0,0 +1,25 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create an {@link ExpressionWithTypeArguments}: an `Expr<TypeArgs>` form used
5
+ * in heritage clauses such as `extends Base<T>`.
6
+ *
7
+ * The expression prints first, followed by the type arguments as `<...>` when
8
+ * present. With no type arguments only the bare expression prints.
9
+ *
10
+ * Given a `Foo` expression and a single `string` type argument, the printer
11
+ * renders:
12
+ *
13
+ * ```ts
14
+ * Foo<string>;
15
+ * ```
16
+ *
17
+ * @author Jeongho Nam - https://github.com/samchon
18
+ * @param expression The base expression.
19
+ * @param typeArguments The generic type arguments, if any.
20
+ * @returns The created {@link ExpressionWithTypeArguments}.
21
+ */
22
+ const createExpressionWithTypeArguments = (expression, typeArguments) => make("ExpressionWithTypeArguments", { expression, typeArguments });
23
+
24
+ export { createExpressionWithTypeArguments };
25
+ //# sourceMappingURL=createExpressionWithTypeArguments.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createExpressionWithTypeArguments.mjs","sources":["../../../src/factory/types/createExpressionWithTypeArguments.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAOA;;;;;;;;;;;;;;;;;;AAkBG;MACU,iCAAiC,GAAG,CAC/C,UAAsB,EACtB,aAA8C,KAE9C,IAAI,CAAC,6BAA6B,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE;;;;"}
@@ -0,0 +1,27 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create a {@link FunctionTypeNode}: a `(params) => T` function type.
5
+ *
6
+ * Optional type parameters print first as `<...>`, then the parameter list,
7
+ * then `=>` followed by the return type. In postfix and array positions the
8
+ * surrounding printer wraps a function type in parentheses, since `() => T[]`
9
+ * would otherwise read as an array of the return type.
10
+ *
11
+ * Given one `x: number` parameter and a `string` return type, the printer
12
+ * renders:
13
+ *
14
+ * ```ts
15
+ * (x: number) => string;
16
+ * ```
17
+ *
18
+ * @author Jeongho Nam - https://github.com/samchon
19
+ * @param typeParameters The generic type parameters, if any.
20
+ * @param parameters The parameters.
21
+ * @param type The return type.
22
+ * @returns The created {@link FunctionTypeNode}.
23
+ */
24
+ const createFunctionTypeNode = (typeParameters, parameters, type) => make("FunctionTypeNode", { typeParameters, parameters, type });
25
+
26
+ export { createFunctionTypeNode };
27
+ //# sourceMappingURL=createFunctionTypeNode.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createFunctionTypeNode.mjs","sources":["../../../src/factory/types/createFunctionTypeNode.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAQA;;;;;;;;;;;;;;;;;;;;AAoBG;AACI,MAAM,sBAAsB,GAAG,CACpC,cAA+D,EAC/D,UAA2C,EAC3C,IAAc,KAEd,IAAI,CAAC,kBAAkB,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE;;;;"}
@@ -0,0 +1,27 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create an {@link ImportTypeNode}: an `import("module").Qualifier<Args>` type.
5
+ *
6
+ * The `argument` is the module specifier inside `import(...)`. A `qualifier`
7
+ * adds a `.Member` access, and type arguments add `<...>`. When `isTypeOf` is
8
+ * true the whole thing is prefixed with `typeof ` to query a value's type.
9
+ *
10
+ * Given the module `"foo"`, qualifier `Bar`, and a single `string` type
11
+ * argument, the printer renders:
12
+ *
13
+ * ```ts
14
+ * import("foo").Bar<string>;
15
+ * ```
16
+ *
17
+ * @author Jeongho Nam - https://github.com/samchon
18
+ * @param argument The module specifier inside `import(...)`.
19
+ * @param qualifier The `.Member` access on the import, if any.
20
+ * @param typeArguments The generic type arguments, if any.
21
+ * @param isTypeOf Whether to prefix the type with `typeof`.
22
+ * @returns The created {@link ImportTypeNode}.
23
+ */
24
+ const createImportTypeNode = (argument, qualifier, typeArguments, isTypeOf = false) => make("ImportTypeNode", { argument, qualifier, typeArguments, isTypeOf });
25
+
26
+ export { createImportTypeNode };
27
+ //# sourceMappingURL=createImportTypeNode.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createImportTypeNode.mjs","sources":["../../../src/factory/types/createImportTypeNode.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;;;AAoBG;AACI,MAAM,oBAAoB,GAAG,CAClC,QAAkB,EAClB,SAAsB,EACtB,aAAmC,EACnC,QAAA,GAAoB,KAAK,KAEzB,IAAI,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE;;;;"}
@@ -0,0 +1,25 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create an {@link IndexSignatureDeclaration}: a `[key: K]: V` index signature.
5
+ *
6
+ * Any modifiers print first (for example `readonly`), then the single key
7
+ * parameter inside `[...]`, then `: ` followed by the value type.
8
+ *
9
+ * Given no modifiers, a `key: string` parameter, and a `number` value type, the
10
+ * printer renders:
11
+ *
12
+ * ```ts
13
+ * [key: string]: number
14
+ * ```
15
+ *
16
+ * @author Jeongho Nam - https://github.com/samchon
17
+ * @param modifiers The leading modifiers and decorators, if any.
18
+ * @param parameters The index parameter list.
19
+ * @param type The value type.
20
+ * @returns The created {@link IndexSignatureDeclaration}.
21
+ */
22
+ const createIndexSignature = (modifiers, parameters, type) => make("IndexSignature", { modifiers, parameters, type });
23
+
24
+ export { createIndexSignature };
25
+ //# sourceMappingURL=createIndexSignature.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createIndexSignature.mjs","sources":["../../../src/factory/types/createIndexSignature.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAQA;;;;;;;;;;;;;;;;;;AAkBG;AACI,MAAM,oBAAoB,GAAG,CAClC,SAA8C,EAC9C,UAA2C,EAC3C,IAAc,KAEd,IAAI,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE;;;;"}
@@ -0,0 +1,25 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create an {@link IndexedAccessTypeNode}: a `T[K]` indexed access type.
5
+ *
6
+ * The object type is emitted in postfix-operand position, so a lower-precedence
7
+ * form (union, intersection, function, constructor, conditional, infer, or
8
+ * type-operator) gets wrapped in parentheses before the `[...]`. The index type
9
+ * prints bare inside the brackets.
10
+ *
11
+ * Given a `T` object type and a `"key"` index, the printer renders:
12
+ *
13
+ * ```ts
14
+ * T["key"];
15
+ * ```
16
+ *
17
+ * @author Jeongho Nam - https://github.com/samchon
18
+ * @param objectType The object type being indexed.
19
+ * @param indexType The index type.
20
+ * @returns The created {@link IndexedAccessTypeNode}.
21
+ */
22
+ const createIndexedAccessTypeNode = (objectType, indexType) => make("IndexedAccessTypeNode", { objectType, indexType });
23
+
24
+ export { createIndexedAccessTypeNode };
25
+ //# sourceMappingURL=createIndexedAccessTypeNode.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createIndexedAccessTypeNode.mjs","sources":["../../../src/factory/types/createIndexedAccessTypeNode.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA;;;;;;;;;;;;;;;;;;AAkBG;MACU,2BAA2B,GAAG,CACzC,UAAoB,EACpB,SAAmB,KAEnB,IAAI,CAAC,uBAAuB,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE;;;;"}
@@ -0,0 +1,24 @@
1
+ import { make } from '../internal/make.mjs';
2
+
3
+ /**
4
+ * Create an {@link InferTypeNode}: an `infer R` type used inside the extends
5
+ * clause of a conditional type.
6
+ *
7
+ * The `infer ` keyword prints in front of the type parameter's name. In postfix
8
+ * and array positions the surrounding printer wraps the infer type in
9
+ * parentheses so `infer R[]` does not read as an array.
10
+ *
11
+ * Given a type parameter named `R`, the printer renders:
12
+ *
13
+ * ```ts
14
+ * infer R
15
+ * ```
16
+ *
17
+ * @author Jeongho Nam - https://github.com/samchon
18
+ * @param typeParameter The type parameter to infer.
19
+ * @returns The created {@link InferTypeNode}.
20
+ */
21
+ const createInferTypeNode = (typeParameter) => make("InferTypeNode", { typeParameter });
22
+
23
+ export { createInferTypeNode };
24
+ //# sourceMappingURL=createInferTypeNode.mjs.map