@artel/artc 0.6.25191

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 (281) hide show
  1. package/build/Cli.js +20 -0
  2. package/build/api/Api.js +664 -0
  3. package/build/api/ApiNodeJS.js +20 -0
  4. package/build/api/ApiServices.js +12847 -0
  5. package/build/chunk-BQHCAH6D.js +588 -0
  6. package/build/chunk-O2JKESUU.js +63219 -0
  7. package/build/chunk-QRBDQKYM.js +94 -0
  8. package/build/types/Cli.d.ts +3 -0
  9. package/build/types/analysis/AccessedMethod.d.ts +53 -0
  10. package/build/types/analysis/AnalyzedTranslationPackage.d.ts +191 -0
  11. package/build/types/analysis/Analyzer.d.ts +665 -0
  12. package/build/types/analysis/AutotypeCallExpressionMeaning.d.ts +25 -0
  13. package/build/types/analysis/BaseExpressionMeaning.d.ts +47 -0
  14. package/build/types/analysis/BuiltInOperators.d.ts +14 -0
  15. package/build/types/analysis/CallArgumentToParameterMatchResult.d.ts +30 -0
  16. package/build/types/analysis/CallArgumentsToParametersMatcher.d.ts +44 -0
  17. package/build/types/analysis/CallExpressionMeaning.d.ts +39 -0
  18. package/build/types/analysis/ConstructorOverloadResolver.d.ts +34 -0
  19. package/build/types/analysis/DeclarationsUsageCounter.d.ts +18 -0
  20. package/build/types/analysis/DereferenceExpressionMeaning.d.ts +23 -0
  21. package/build/types/analysis/DiagnosticCollector.d.ts +68 -0
  22. package/build/types/analysis/EntityLocalizationHelper.d.ts +15 -0
  23. package/build/types/analysis/FindModifier.d.ts +4 -0
  24. package/build/types/analysis/FoundDeclaration.d.ts +19 -0
  25. package/build/types/analysis/IdentifierExpressionMeaning.d.ts +98 -0
  26. package/build/types/analysis/ImportedPackageNameTree.d.ts +22 -0
  27. package/build/types/analysis/IndexedAccessExpressionMeaning.d.ts +26 -0
  28. package/build/types/analysis/IndexerAccess.d.ts +10 -0
  29. package/build/types/analysis/Localization.d.ts +54 -0
  30. package/build/types/analysis/LocalizationContext.d.ts +15 -0
  31. package/build/types/analysis/Lookup.d.ts +23 -0
  32. package/build/types/analysis/NamedTypeResolver.d.ts +42 -0
  33. package/build/types/analysis/NamedTypeSpecifierResolver.d.ts +20 -0
  34. package/build/types/analysis/NodeTypeUtils.d.ts +28 -0
  35. package/build/types/analysis/ObjectExpressionMeaning.d.ts +38 -0
  36. package/build/types/analysis/OperationOverloadResolver.d.ts +19 -0
  37. package/build/types/analysis/OverloadResolver.d.ts +12 -0
  38. package/build/types/analysis/PackageMemberLookup.d.ts +15 -0
  39. package/build/types/analysis/PrefixUnaryOperatorResolver.d.ts +27 -0
  40. package/build/types/analysis/PropertyAccessExpressionMeaning.d.ts +100 -0
  41. package/build/types/analysis/Scope.d.ts +309 -0
  42. package/build/types/analysis/SemanticContext.d.ts +320 -0
  43. package/build/types/analysis/SemanticContextBuilder.d.ts +54 -0
  44. package/build/types/analysis/SourceFileMembers.d.ts +92 -0
  45. package/build/types/analysis/SourcePackageDependencyGraph.d.ts +41 -0
  46. package/build/types/analysis/SourcePackageMembersCreator.d.ts +6 -0
  47. package/build/types/analysis/StatementBlockScopeBuilder.d.ts +22 -0
  48. package/build/types/analysis/SubstitutedMethod.d.ts +49 -0
  49. package/build/types/analysis/TagMeaning.d.ts +26 -0
  50. package/build/types/analysis/Tags.d.ts +29 -0
  51. package/build/types/analysis/TargetTypeHint.d.ts +5 -0
  52. package/build/types/analysis/TypeInferrer.d.ts +9 -0
  53. package/build/types/analysis/TypeMemberLookup.d.ts +27 -0
  54. package/build/types/analysis/TypeOverloadResolver.d.ts +7 -0
  55. package/build/types/analysis/UserDefinableBinaryOperatorResolver.d.ts +37 -0
  56. package/build/types/analysis/Utils.d.ts +17 -0
  57. package/build/types/analysis/VariableAccess.d.ts +10 -0
  58. package/build/types/analysis/VariantLookup.d.ts +20 -0
  59. package/build/types/analysis/Visitor.d.ts +7 -0
  60. package/build/types/analysis/WellKnownDeclarations.d.ts +34 -0
  61. package/build/types/analysis/index.d.ts +8 -0
  62. package/build/types/api/Api.d.ts +59 -0
  63. package/build/types/api/ApiNodeJS.d.ts +5 -0
  64. package/build/types/api/ApiServices.d.ts +3 -0
  65. package/build/types/common/AccessKind.d.ts +4 -0
  66. package/build/types/common/ArtelFileCheck.d.ts +2 -0
  67. package/build/types/common/Cached.d.ts +6 -0
  68. package/build/types/common/CancellationToken.d.ts +13 -0
  69. package/build/types/common/Constants.d.ts +19 -0
  70. package/build/types/common/Debug.d.ts +10 -0
  71. package/build/types/common/Delayed.d.ts +7 -0
  72. package/build/types/common/ErrorHandlingStrategy.d.ts +3 -0
  73. package/build/types/common/FormatString.d.ts +5 -0
  74. package/build/types/common/HelperPhrases.d.ts +11 -0
  75. package/build/types/common/Interner.d.ts +4 -0
  76. package/build/types/common/L10nConfig.d.ts +1 -0
  77. package/build/types/common/Lazy.d.ts +9 -0
  78. package/build/types/common/LocalizationHelper.d.ts +10 -0
  79. package/build/types/common/Logger.d.ts +10 -0
  80. package/build/types/common/Name.d.ts +83 -0
  81. package/build/types/common/NameFormatConversion.d.ts +12 -0
  82. package/build/types/common/NonEmptyArray.d.ts +8 -0
  83. package/build/types/common/Option.d.ts +28 -0
  84. package/build/types/common/PackageDialect.d.ts +5 -0
  85. package/build/types/common/PackageLocale.d.ts +15 -0
  86. package/build/types/common/PackageLocaleGuard.d.ts +1 -0
  87. package/build/types/common/Path.d.ts +8 -0
  88. package/build/types/common/PerformanceMeasurement.d.ts +20 -0
  89. package/build/types/common/Query.d.ts +39 -0
  90. package/build/types/common/Range.d.ts +10 -0
  91. package/build/types/common/Result.d.ts +13 -0
  92. package/build/types/common/SearchName.d.ts +13 -0
  93. package/build/types/common/ThrottledCancellationToken.d.ts +17 -0
  94. package/build/types/common/TreeQuery.d.ts +53 -0
  95. package/build/types/common/TreeTraversal.d.ts +13 -0
  96. package/build/types/common/Uri.d.ts +28 -0
  97. package/build/types/common/UriTree.d.ts +41 -0
  98. package/build/types/common/UserLocale.d.ts +2 -0
  99. package/build/types/common/WithDiagnostics.d.ts +19 -0
  100. package/build/types/common/YieldExecution.d.ts +1 -0
  101. package/build/types/common/index.d.ts +32 -0
  102. package/build/types/diagnostic/Diagnostic.d.ts +21 -0
  103. package/build/types/diagnostic/DiagnosticCode.d.ts +146 -0
  104. package/build/types/diagnostic/DiagnosticData.d.ts +20 -0
  105. package/build/types/diagnostic/DiagnosticFormatter.d.ts +8 -0
  106. package/build/types/diagnostic/RangeDiagnostic.d.ts +19 -0
  107. package/build/types/emitter/BlockStatementTransformationResult.d.ts +10 -0
  108. package/build/types/emitter/CustomModuleLoader.d.ts +1 -0
  109. package/build/types/emitter/DebugStack.d.ts +10 -0
  110. package/build/types/emitter/Emitter.d.ts +61 -0
  111. package/build/types/emitter/EmitterContext.d.ts +342 -0
  112. package/build/types/emitter/EmitterGeneratedDeclarationKind.d.ts +36 -0
  113. package/build/types/emitter/EmitterPackage.d.ts +60 -0
  114. package/build/types/emitter/EntityNameProviders.d.ts +33 -0
  115. package/build/types/emitter/ExpressionTransformationResult.d.ts +17 -0
  116. package/build/types/emitter/GeneralLowering.d.ts +72 -0
  117. package/build/types/emitter/Internal.d.ts +10 -0
  118. package/build/types/emitter/IntrinsicEntities.d.ts +118 -0
  119. package/build/types/emitter/IrBuilder.d.ts +108 -0
  120. package/build/types/emitter/IrToJs.d.ts +113 -0
  121. package/build/types/emitter/JavaScriptName.d.ts +1 -0
  122. package/build/types/emitter/PackageMemberDeclarationTransformationResult.d.ts +17 -0
  123. package/build/types/emitter/SimpleTransformationResult.d.ts +14 -0
  124. package/build/types/emitter/StatementTransformationResult.d.ts +16 -0
  125. package/build/types/emitter/StructuredTypeMemberDeclarationTransformationResult.d.ts +13 -0
  126. package/build/types/emitter/TransformationContinuationAction.d.ts +4 -0
  127. package/build/types/emitter/Transformer.d.ts +282 -0
  128. package/build/types/emitter/TypeAccessExpressionTransformationResult.d.ts +12 -0
  129. package/build/types/emitter/error-boundary.d.ts +10 -0
  130. package/build/types/emitter/index.d.ts +1 -0
  131. package/build/types/emitter/ir/AccessedEntities.d.ts +19 -0
  132. package/build/types/emitter/ir/LoweringOptions.d.ts +34 -0
  133. package/build/types/emitter/ir/Nodes.d.ts +1585 -0
  134. package/build/types/emitter/ir/SourceLocation.d.ts +10 -0
  135. package/build/types/emitter/ir/index.d.ts +5 -0
  136. package/build/types/emitter/ir/types.d.ts +10 -0
  137. package/build/types/entities/AliasTypeEntity.d.ts +84 -0
  138. package/build/types/entities/BinaryOperatorEntity.d.ts +48 -0
  139. package/build/types/entities/ConstructorEntity.d.ts +99 -0
  140. package/build/types/entities/DereferenceOperatorEntity.d.ts +40 -0
  141. package/build/types/entities/DestructorEntity.d.ts +31 -0
  142. package/build/types/entities/EntityHiding.d.ts +27 -0
  143. package/build/types/entities/EntityNaming.d.ts +12 -0
  144. package/build/types/entities/GetterEntity.d.ts +86 -0
  145. package/build/types/entities/IndexerEntity.d.ts +51 -0
  146. package/build/types/entities/MethodEntity.d.ts +174 -0
  147. package/build/types/entities/MethodTypeEntity.d.ts +98 -0
  148. package/build/types/entities/PackageAliasEntity.d.ts +30 -0
  149. package/build/types/entities/PackageEntity.d.ts +56 -0
  150. package/build/types/entities/PackageMembers.d.ts +98 -0
  151. package/build/types/entities/SetterEntity.d.ts +78 -0
  152. package/build/types/entities/StructuredTypeEntity.d.ts +199 -0
  153. package/build/types/entities/SubstitutionApplicationMode.d.ts +4 -0
  154. package/build/types/entities/TypeEntityMembers.d.ts +36 -0
  155. package/build/types/entities/TypeExtensionEntity.d.ts +33 -0
  156. package/build/types/entities/TypeMemberContainer.d.ts +23 -0
  157. package/build/types/entities/TypeParameterEntity.d.ts +94 -0
  158. package/build/types/entities/UnaryOperatorEntity.d.ts +33 -0
  159. package/build/types/entities/VariableEntity.d.ts +423 -0
  160. package/build/types/entities/VariantEntity.d.ts +31 -0
  161. package/build/types/entities/VariantTypeEntity.d.ts +83 -0
  162. package/build/types/entities/Variants.d.ts +10 -0
  163. package/build/types/entities/index.d.ts +87 -0
  164. package/build/types/executor/CommandLineCompiler.d.ts +8 -0
  165. package/build/types/executor/Compiler.d.ts +15 -0
  166. package/build/types/executor/FileSystemUri.d.ts +5 -0
  167. package/build/types/executor/NodeCompiler.d.ts +39 -0
  168. package/build/types/executor/PhysicalFileSystem.d.ts +12 -0
  169. package/build/types/executor/PhysicalTypeScriptLibrariesProvider.d.ts +12 -0
  170. package/build/types/generated/BuiltInSystemPackages.d.ts +3 -0
  171. package/build/types/old/Executor.d.ts +14 -0
  172. package/build/types/old/JavaScriptEmitter.d.ts +1 -0
  173. package/build/types/old/JavaScriptEmittingVisitor.d.ts +1 -0
  174. package/build/types/old/NzonParser.d.ts +1 -0
  175. package/build/types/old/NzonScanner.d.ts +1 -0
  176. package/build/types/old/NzonSyntax.d.ts +1 -0
  177. package/build/types/old/RemoteWorkspaceFileSystem.d.ts +1 -0
  178. package/build/types/parser/CharacterCodes.d.ts +21 -0
  179. package/build/types/parser/ConvertTokenKind.d.ts +3 -0
  180. package/build/types/parser/KeywordDictionary.d.ts +12 -0
  181. package/build/types/parser/ParseNumber.d.ts +5 -0
  182. package/build/types/parser/Parser.d.ts +7 -0
  183. package/build/types/parser/ParserDiagnostic.d.ts +7 -0
  184. package/build/types/parser/ReservedIdentifierDictionary.d.ts +12 -0
  185. package/build/types/parser/Scanner.d.ts +60 -0
  186. package/build/types/parser/TokenKind.d.ts +73 -0
  187. package/build/types/parser/UnescapeText.d.ts +2 -0
  188. package/build/types/project/Compilation.d.ts +21 -0
  189. package/build/types/project/CompilationLoader.d.ts +104 -0
  190. package/build/types/project/FileSystemTree.d.ts +70 -0
  191. package/build/types/project/PackageConfigurationSerializer.d.ts +1 -0
  192. package/build/types/project/Position.d.ts +5 -0
  193. package/build/types/project/SourceFile.d.ts +21 -0
  194. package/build/types/project/SourcePackage.d.ts +151 -0
  195. package/build/types/project/TextFile.d.ts +11 -0
  196. package/build/types/project/configuration/BuildPackageApi.d.ts +75 -0
  197. package/build/types/project/configuration/ConfigurationConverter.d.ts +25 -0
  198. package/build/types/project/configuration/ConfigurationFileParser.d.ts +26 -0
  199. package/build/types/project/configuration/PackageConfigurationInterpreter.d.ts +27 -0
  200. package/build/types/project/configuration/types/PackageConfigurationEn.d.ts +90 -0
  201. package/build/types/project/configuration/types/PackageConfigurationRu.d.ts +91 -0
  202. package/build/types/project/index.d.ts +12 -0
  203. package/build/types/services/AddPropertyAssignmentService.d.ts +15 -0
  204. package/build/types/services/CompletionService.d.ts +95 -0
  205. package/build/types/services/CustomCommand.d.ts +120 -0
  206. package/build/types/services/DefinitionService.d.ts +19 -0
  207. package/build/types/services/DisplayService.d.ts +830 -0
  208. package/build/types/services/DocumentHighlightsService.d.ts +18 -0
  209. package/build/types/services/EvaluatableExpressionService.d.ts +15 -0
  210. package/build/types/services/FileSystemTreeDisplayService.d.ts +7 -0
  211. package/build/types/services/HoverService.d.ts +17 -0
  212. package/build/types/services/LanguageServer.d.ts +125 -0
  213. package/build/types/services/NodeSemanticInfo.d.ts +132 -0
  214. package/build/types/services/ProjectItemsService.d.ts +6 -0
  215. package/build/types/services/ReferencesService.d.ts +30 -0
  216. package/build/types/services/RenameService.d.ts +16 -0
  217. package/build/types/services/SelectionRangeService.d.ts +12 -0
  218. package/build/types/services/SemanticTokensService.d.ts +40 -0
  219. package/build/types/services/SourceFileItemsService.d.ts +42 -0
  220. package/build/types/services/TranslationService.d.ts +23 -0
  221. package/build/types/services/TreeUtils.d.ts +58 -0
  222. package/build/types/services/TypeDefinitionService.d.ts +9 -0
  223. package/build/types/services/Types.d.ts +22 -0
  224. package/build/types/services/Utils.d.ts +5 -0
  225. package/build/types/services/signature-help/SignatureHelpService.d.ts +17 -0
  226. package/build/types/services/signature-help/SignatureWithValueParameters.d.ts +114 -0
  227. package/build/types/services/signature-help/TypeParameterSignatureHelpProvider.d.ts +20 -0
  228. package/build/types/services/signature-help/ValueParametersSignatureHelpProvider.d.ts +15 -0
  229. package/build/types/services/signature-help/utils.d.ts +9 -0
  230. package/build/types/services/source-generation/EntityToSyntax.d.ts +47 -0
  231. package/build/types/services/source-generation/SourceGenerationService.d.ts +22 -0
  232. package/build/types/services/workspace/ClientTrackedSourceFiles.d.ts +41 -0
  233. package/build/types/services/workspace/CompilationController.d.ts +108 -0
  234. package/build/types/services/workspace/FileSystemTreeProviderBasedOnWatchedFileSystem.d.ts +61 -0
  235. package/build/types/services/workspace/ManuallyUpdatedFileSystemTreeProvider.d.ts +21 -0
  236. package/build/types/services/workspace/Workspace.d.ts +59 -0
  237. package/build/types/services/workspace/WorkspaceFileSystem.d.ts +5 -0
  238. package/build/types/services/workspace/WorkspaceFiles.d.ts +35 -0
  239. package/build/types/services/workspace/index.d.ts +7 -0
  240. package/build/types/tree/KeywordKind.d.ts +64 -0
  241. package/build/types/tree/NodeKind.d.ts +163 -0
  242. package/build/types/tree/TokenKind.d.ts +132 -0
  243. package/build/types/tree/TriviaKind.d.ts +7 -0
  244. package/build/types/tree/green/BaseNode.d.ts +12 -0
  245. package/build/types/tree/green/Nodes.d.ts +2235 -0
  246. package/build/types/tree/green/SyntaxFactory.d.ts +67 -0
  247. package/build/types/tree/green/SyntaxToCode.d.ts +116 -0
  248. package/build/types/tree/green/Token.d.ts +37 -0
  249. package/build/types/tree/green/Utils.d.ts +2 -0
  250. package/build/types/tree/green/index.d.ts +7 -0
  251. package/build/types/tree/index.d.ts +4 -0
  252. package/build/types/tree/red/BaseNode.d.ts +15 -0
  253. package/build/types/tree/red/Internal.d.ts +2 -0
  254. package/build/types/tree/red/NodePath.d.ts +10 -0
  255. package/build/types/tree/red/Nodes.d.ts +2237 -0
  256. package/build/types/tree/red/Token.d.ts +29 -0
  257. package/build/types/tree/red/Utils.d.ts +6 -0
  258. package/build/types/tree/red/index.d.ts +6 -0
  259. package/build/types/ts-interop/Entities.d.ts +634 -0
  260. package/build/types/ts-interop/TsInteropContext.d.ts +179 -0
  261. package/build/types/ts-interop/TsLibrariesProvider.d.ts +12 -0
  262. package/build/types/ts-interop/TsPackageContents.d.ts +64 -0
  263. package/build/types/ts-interop/TsPackageMembersCreator.d.ts +69 -0
  264. package/build/types/ts-interop/TsProgramLoader.d.ts +38 -0
  265. package/build/types/ts-interop/TsTypeMembersCreator.d.ts +45 -0
  266. package/build/types/ts-interop/Utils.d.ts +43 -0
  267. package/build/types/types/AliasType.d.ts +20 -0
  268. package/build/types/types/Internal.d.ts +1 -0
  269. package/build/types/types/MethodType.d.ts +23 -0
  270. package/build/types/types/ParameterType.d.ts +19 -0
  271. package/build/types/types/StandardTypes.d.ts +42 -0
  272. package/build/types/types/StructuredType.d.ts +25 -0
  273. package/build/types/types/Substitutions.d.ts +18 -0
  274. package/build/types/types/Type.d.ts +16 -0
  275. package/build/types/types/TypeFactory.d.ts +15 -0
  276. package/build/types/types/TypeMembers.d.ts +134 -0
  277. package/build/types/types/UnionType.d.ts +20 -0
  278. package/build/types/types/UnresolvedType.d.ts +16 -0
  279. package/build/types/types/VariantType.d.ts +19 -0
  280. package/build/types/types/index.d.ts +12 -0
  281. package/package.json +73 -0
@@ -0,0 +1,10 @@
1
+ import { Uri } from '../../common/index.js';
2
+ import { Position } from '../../project/index.js';
3
+ import * as tree from '../../tree/index.js';
4
+ export declare class SourceLocation {
5
+ readonly start: Position;
6
+ readonly end: Position;
7
+ readonly sourceFileUri: Uri;
8
+ readonly node: tree.Node | undefined;
9
+ constructor(start: Position, end: Position, sourceFileUri: Uri, node: tree.Node | undefined);
10
+ }
@@ -0,0 +1,5 @@
1
+ export * from './AccessedEntities.js';
2
+ export * from './Nodes.js';
3
+ export * from './SourceLocation.js';
4
+ export * from './types.js';
5
+ export * from './LoweringOptions.js';
@@ -0,0 +1,10 @@
1
+ import * as ir from './Nodes.js';
2
+ export type Node = ir.ArrayLiteral | ir.AsExpression | ir.AssertionExpression | ir.AssumptionExpression | ir.AssignmentExpression | ir.AssignmentStatement | ir.BaseConstructorCallExpression | ir.BinaryExpression | ir.BlockStatement | ir.BooleanLiteral | ir.BreakLoopStatement | ir.CallExpression | ir.CharLiteral | ir.CommaExpression | ir.ConstructorCallExpression | ir.ContinueLoopStatement | ir.DisposeStatement | ir.RunStatement | ir.NoneLiteral | ir.EmptyStatement | ir.ErrorStatement | ir.ExpressionStatement | ir.FinallyClause | ir.ForStatement | ir.PackageConstructorDeclaration | ir.PackageEntryPointDeclaration | ir.PackageMethodDeclaration | ir.PackageTypeDeclaration | ir.PackageVariableDeclaration | ir.PackageVariableGetterDeclaration | ir.PackageVariableSetterDeclaration | ir.PackageVariantTypeDeclaration | ir.HelperMethodCallExpression | ir.IfStatement | ir.ImplicitVariantAccessExpression | ir.IndexedAccessExpression | ir.InlineJsExpression | ir.TypeMethodAccessExpression | ir.TypeVariableAccessExpression | ir.IntegerLiteral | ir.IsExpression | ir.JsIndexedAccessExpression | ir.NestedMethodDeclaration | ir.NestedMethodDeclarationStatement | ir.LocalVariableDeclaration | ir.LocalVariableDeclarationStatement | ir.NotExpression | ir.NumericLiteral | ir.OnErrorClause | ir.MethodAccessExpression | ir.MethodLiteral | ir.PrefixUnaryExpression | ir.PropertyDeclaration | ir.MeasureLiteral | ir.ReferenceExpression | ir.LoopStatement | ir.ReturnStatement | ir.SourceFile | ir.TextLiteral | ir.TextTemplateLiteral | ir.TypeConstructorDeclaration | ir.TypeDestructorDeclaration | ir.TypeExtensionDeclaration | ir.TypeIndexerDeclaration | ir.TypeIndexedGetterDeclaration | ir.TypeIndexedSetterDeclaration | ir.TypeMethodDeclaration | ir.TypeVariableDeclaration | ir.TypeVariableGetterDeclaration | ir.TypeVariableSetterDeclaration | ir.SwitchStatement | ir.TernaryExpression | ir.ThisExpression | ir.TryCatchFinallyStatement | ir.TypeAccessExpression | ir.ValueParameterDeclaration | ir.VariableAccessExpression | ir.VariantAccessExpression | ir.VariantDeclaration | ir.WhileStatement | ir.YieldStatement | ir.JsObjectLiteral | ir.JsObjectLiteralProperty | ir.JsPropertyAccessExpression | ir.JsFunctionLiteral | ir.ImplicitConversionExpression | ir.JsTypeOfExpression | ir.JsInstanceOfExpression | ir.UnobservableStatement | ir.TransactionalStatement | ir.TransactionalExpression | ir.UnobservableExpression | ir.JsIdentifierExpression | ir.DereferenceExpression | ir.BaseExpression | ir.OwnConstructorCallExpression | ir.EsModuleImportDirectiveStatement | ir.CjsModuleImportDirectiveStatement | ir.JsNamespaceDestructuringStatement;
3
+ export type Declaration = ir.PackageConstructorDeclaration | ir.PackageEntryPointDeclaration | ir.PackageMethodDeclaration | ir.PackageTypeDeclaration | ir.PackageVariableDeclaration | ir.PackageVariableGetterDeclaration | ir.PackageVariableSetterDeclaration | ir.PackageVariantTypeDeclaration | ir.NestedMethodDeclaration | ir.LocalVariableDeclaration | ir.TypeConstructorDeclaration | ir.TypeDestructorDeclaration | ir.TypeExtensionDeclaration | ir.TypeIndexerDeclaration | ir.TypeIndexedGetterDeclaration | ir.TypeIndexedSetterDeclaration | ir.TypeMethodDeclaration | ir.TypeVariableDeclaration | ir.TypeVariableGetterDeclaration | ir.TypeVariableSetterDeclaration | ir.ValueParameterDeclaration | ir.VariantDeclaration | ir.PropertyDeclaration;
4
+ export type Statement = ir.AssignmentStatement | ir.BlockStatement | ir.BreakLoopStatement | ir.ContinueLoopStatement | ir.DisposeStatement | ir.RunStatement | ir.EmptyStatement | ir.ErrorStatement | ir.ExpressionStatement | ir.ForStatement | ir.IfStatement | ir.NestedMethodDeclarationStatement | ir.LocalVariableDeclarationStatement | ir.LoopStatement | ir.ReturnStatement | ir.SwitchStatement | ir.TryCatchFinallyStatement | ir.WhileStatement | ir.YieldStatement | ir.UnobservableStatement | ir.TransactionalStatement | ir.EsModuleImportDirectiveStatement | ir.CjsModuleImportDirectiveStatement | ir.JsNamespaceDestructuringStatement;
5
+ export type Expression = ir.ArrayLiteral | ir.AsExpression | ir.AssertionExpression | ir.AssumptionExpression | ir.AssignmentExpression | ir.BinaryExpression | ir.BooleanLiteral | ir.CallExpression | ir.CharLiteral | ir.CommaExpression | ir.ConstructorCallExpression | ir.NoneLiteral | ir.HelperMethodCallExpression | ir.ImplicitVariantAccessExpression | ir.IndexedAccessExpression | ir.InlineJsExpression | ir.TypeMethodAccessExpression | ir.TypeVariableAccessExpression | ir.IntegerLiteral | ir.IsExpression | ir.NotExpression | ir.NumericLiteral | ir.MethodAccessExpression | ir.MethodLiteral | ir.PrefixUnaryExpression | ir.MeasureLiteral | ir.ReferenceExpression | ir.DereferenceExpression | ir.TextLiteral | ir.TextTemplateLiteral | ir.TernaryExpression | ir.ThisExpression | ir.TypeAccessExpression | ir.VariableAccessExpression | ir.VariantAccessExpression | ir.BaseConstructorCallExpression | ir.JsIndexedAccessExpression | ir.JsObjectLiteral | ir.JsPropertyAccessExpression | ir.JsFunctionLiteral | ir.ImplicitConversionExpression | ir.JsTypeOfExpression | ir.JsInstanceOfExpression | ir.TransactionalExpression | ir.UnobservableExpression | ir.JsIdentifierExpression | ir.BaseExpression | ir.OwnConstructorCallExpression;
6
+ export type BlockStatementClause = ir.OnErrorClause | ir.FinallyClause;
7
+ export type TypeMemberDeclaration = ir.TypeVariableDeclaration | ir.TypeMethodDeclaration | ir.TypeConstructorDeclaration | ir.TypeDestructorDeclaration | ir.TypeIndexerDeclaration | ir.TypeDereferenceOperatorDeclaration | ir.PropertyDeclaration;
8
+ export type PackageMemberDeclaration = ir.PackageConstructorDeclaration | ir.PackageEntryPointDeclaration | ir.PackageMethodDeclaration | ir.PackageTypeDeclaration | ir.PackageVariableDeclaration | ir.PackageVariantTypeDeclaration | ir.TypeExtensionDeclaration;
9
+ export type LValueExpression = ir.VariableAccessExpression | ir.TypeVariableAccessExpression | ir.IndexedAccessExpression | ir.JsIndexedAccessExpression | ir.JsPropertyAccessExpression | ir.ThisExpression | ir.DereferenceExpression;
10
+ export declare function isLValueExpression(node: Expression): node is LValueExpression;
@@ -0,0 +1,84 @@
1
+ import { Tag } from '../analysis/Tags.js';
2
+ import { Analyzer } from '../analysis/index.js';
3
+ import { Name } from '../common/index.js';
4
+ import { PackageAliasTypeDeclaration } from '../tree/index.js';
5
+ import * as types from '../types/index.js';
6
+ import { OriginalTypeEntityMembers } from './TypeEntityMembers.js';
7
+ import { DefinitionKind, EntityHidingLevel, EntityKind, PackageEntity, SubstitutionApplicationMode, TypeParameterEntity } from './index.js';
8
+ export interface AliasTypeEntity {
9
+ readonly kind: EntityKind.AliasType;
10
+ getName(): Name;
11
+ getContainingPackage(): PackageEntity;
12
+ /**
13
+ * При повторных вызовах метод должен возвращать один и тот же экземпляр класса AliasedType.
14
+ */
15
+ getAliasedType(): AliasedType;
16
+ getTypeParameters(): readonly TypeParameterEntity[];
17
+ getDefinition(): AliasTypeEntityDefinition;
18
+ getMembers(): OriginalTypeEntityMembers;
19
+ getArity(): number;
20
+ isHidden(): EntityHidingLevel | undefined;
21
+ getTags(): readonly Tag[];
22
+ getSubstitutionApplicationMode(): SubstitutionApplicationMode;
23
+ }
24
+ export type AliasTypeEntityDefinition = {
25
+ kind: DefinitionKind.Source;
26
+ node: PackageAliasTypeDeclaration;
27
+ } | {
28
+ kind: DefinitionKind.TypeScript;
29
+ };
30
+ /**
31
+ * Класс позволяет работать с правой частью тождественного типа (с "aliased type"), исключая циклы.
32
+ *
33
+ * Пример цикла:
34
+ * ```artel
35
+ * тип А = Б
36
+ * тип Б = А
37
+ * ```
38
+ *
39
+ * Для типа `А` в поле `declared` будет указан тип `Б`, а в поле `cycleFree` - тип `unresolved`, чтобы разорвать цикл,
40
+ * созданный типами `А` и `Б`.
41
+ */
42
+ export declare class AliasedType {
43
+ /**
44
+ * Правая часть тождественного типа, указанная пользователем.
45
+ */
46
+ readonly declared: types.Type;
47
+ private readonly _analyzer;
48
+ private _state;
49
+ /**
50
+ * Правая часть тождественного типа, указанная пользователем, либо тип `unresolved`,
51
+ * если указанный тип приводит к циклу.
52
+ */
53
+ get cycleFree(): types.Type;
54
+ /**
55
+ * Приводит ли указанная пользователем правая часть тождественного типа к циклу?
56
+ */
57
+ get causesCycle(): boolean;
58
+ constructor(analyzer: Analyzer, declared: types.Type);
59
+ private getAliasedTypeResolutionResult;
60
+ /**
61
+ * @param circularityTrackingStack Если элементом массива является `false`, тип не создаёт цикл, если `true` - создаёт.
62
+ */
63
+ private resolveAliasedType;
64
+ private checkIfTypeFormsCycle;
65
+ }
66
+ export declare class PackageAliasTypeDeclarationEntity implements AliasTypeEntity {
67
+ private readonly _analyzer;
68
+ private readonly _node;
69
+ readonly kind = EntityKind.AliasType;
70
+ private readonly _aliasedType;
71
+ private readonly _typeParameters;
72
+ private readonly _members;
73
+ constructor(_analyzer: Analyzer, _node: PackageAliasTypeDeclaration);
74
+ getName(): Name;
75
+ getContainingPackage(): PackageEntity;
76
+ getAliasedType(): AliasedType;
77
+ getTypeParameters(): readonly TypeParameterEntity[];
78
+ getMembers(): OriginalTypeEntityMembers;
79
+ getDefinition(): AliasTypeEntityDefinition;
80
+ getArity(): number;
81
+ isHidden(): EntityHidingLevel | undefined;
82
+ getTags(): readonly Tag[];
83
+ getSubstitutionApplicationMode(): SubstitutionApplicationMode;
84
+ }
@@ -0,0 +1,48 @@
1
+ import * as types from '../types/index.js';
2
+ import { DefinitionKind, EntityHidingLevel, EntityKind, TypeMemberEntityContainer } from './index.js';
3
+ export interface BinaryOperatorEntity {
4
+ readonly kind: EntityKind.BinaryOperator;
5
+ getOperatorKind(): BinaryOperatorKind;
6
+ getLeftOperandType(): types.Type;
7
+ getRightOperandType(): types.Type;
8
+ getResultType(): types.Type;
9
+ getDefinition(): BinaryOperatorDefinition;
10
+ getContainer(): TypeMemberEntityContainer;
11
+ isHidden(): EntityHidingLevel | undefined;
12
+ }
13
+ export type BinaryOperatorDefinition = {
14
+ kind: DefinitionKind.Intrinsic;
15
+ };
16
+ export declare enum BinaryOperatorKind {
17
+ Add = 0,
18
+ Subtract = 1,
19
+ Multiply = 2,
20
+ Divide = 3,
21
+ IntegerDivide = 4,
22
+ Modulo = 5,
23
+ Equals = 6,
24
+ NotEquals = 7,
25
+ LessThan = 8,
26
+ GreaterThan = 9,
27
+ LessThanEquals = 10,
28
+ GreaterThanEquals = 11,
29
+ Or = 12,
30
+ And = 13,
31
+ Xor = 14
32
+ }
33
+ export declare class IntrinsicBinaryOperatorEntity implements BinaryOperatorEntity {
34
+ private readonly _operatorKind;
35
+ private readonly _leftOperandType;
36
+ private readonly _rightOperandType;
37
+ private readonly _resultType;
38
+ private readonly _container;
39
+ readonly kind = EntityKind.BinaryOperator;
40
+ constructor(_operatorKind: BinaryOperatorKind, _leftOperandType: types.Type, _rightOperandType: types.Type, _resultType: types.Type, _container: TypeMemberEntityContainer);
41
+ getOperatorKind(): BinaryOperatorKind;
42
+ getLeftOperandType(): types.Type;
43
+ getRightOperandType(): types.Type;
44
+ getResultType(): types.Type;
45
+ getDefinition(): BinaryOperatorDefinition;
46
+ getContainer(): TypeMemberEntityContainer;
47
+ isHidden(): EntityHidingLevel | undefined;
48
+ }
@@ -0,0 +1,99 @@
1
+ import { FoundAnonymousDeclaration } from '../analysis/FoundDeclaration.js';
2
+ import { Tag } from '../analysis/Tags.js';
3
+ import { Analyzer } from '../analysis/index.js';
4
+ import { TypeConstructorDeclaration } from '../tree/index.js';
5
+ import * as types from '../types/index.js';
6
+ import type { AliasTypeEntity, TypeEntityWithMembers } from './index.js';
7
+ import { DefinitionKind, EntityHidingLevel, EntityKind, ParameterVariableEntity, TypeMemberEntityContainer, TypeVariableEntity } from './index.js';
8
+ export interface ConstructorEntity {
9
+ readonly kind: EntityKind.Constructor;
10
+ getValueParameters(): readonly ParameterVariableEntity[];
11
+ getDefinition(): ConstructorEntityDefinition;
12
+ getContainer(): TypeMemberEntityContainer;
13
+ isDefault(): DefaultConstructorEntityInfo | undefined;
14
+ isHidden(): EntityHidingLevel | undefined;
15
+ isAbstract(): boolean;
16
+ getTags(): readonly Tag[];
17
+ }
18
+ export declare class DefaultConstructorEntityInfo {
19
+ readonly baseConstructor: types.Constructor | undefined;
20
+ readonly orderedParametersForBaseConstructor: readonly ParameterVariableEntity[];
21
+ readonly hasParametersForFieldInitialization: boolean;
22
+ constructor(baseConstructor: types.Constructor | undefined, orderedParametersForBaseConstructor: readonly ParameterVariableEntity[], hasParametersForFieldInitialization: boolean);
23
+ }
24
+ export type ConstructorEntityDefinition = {
25
+ kind: DefinitionKind.Source;
26
+ node: TypeConstructorDeclaration;
27
+ } | {
28
+ kind: DefinitionKind.Intrinsic;
29
+ } | {
30
+ kind: DefinitionKind.TypeScript;
31
+ };
32
+ export declare class TypeConstructorDeclarationEntity implements ConstructorEntity {
33
+ private readonly _analyzer;
34
+ private readonly _node;
35
+ readonly kind = EntityKind.Constructor;
36
+ private readonly _valueParameters;
37
+ constructor(_analyzer: Analyzer, _node: TypeConstructorDeclaration);
38
+ getValueParameters(): readonly ParameterVariableEntity[];
39
+ getDefinition(): ConstructorEntityDefinition;
40
+ getContainer(): TypeMemberEntityContainer;
41
+ isDefault(): DefaultConstructorEntityInfo | undefined;
42
+ isHidden(): EntityHidingLevel | undefined;
43
+ isAbstract(): boolean;
44
+ getTags(): readonly Tag[];
45
+ }
46
+ export declare class IntrinsicConstructorEntity implements ConstructorEntity {
47
+ private readonly _valueParameters;
48
+ private readonly _containingEntity;
49
+ private readonly _isDefault;
50
+ private readonly _isHidden;
51
+ private readonly _isAbstract;
52
+ readonly kind = EntityKind.Constructor;
53
+ constructor(_valueParameters: readonly ParameterVariableEntity[], _containingEntity: TypeEntityWithMembers, _isDefault: DefaultConstructorEntityInfo | undefined, _isHidden: EntityHidingLevel | undefined, _isAbstract: boolean);
54
+ getValueParameters(): readonly ParameterVariableEntity[];
55
+ getDefinition(): ConstructorEntityDefinition;
56
+ getContainer(): TypeMemberEntityContainer;
57
+ isDefault(): DefaultConstructorEntityInfo | undefined;
58
+ isHidden(): EntityHidingLevel | undefined;
59
+ isAbstract(): boolean;
60
+ getTags(): readonly Tag[];
61
+ }
62
+ export declare class DefaultConstructorEntity implements ConstructorEntity {
63
+ private readonly _analyzer;
64
+ private readonly _containingType;
65
+ private readonly _variablesToInitialize;
66
+ private readonly _baseConstructor;
67
+ readonly kind = EntityKind.Constructor;
68
+ private readonly _valueParameters;
69
+ private readonly _orderedParametersForBaseConstructor;
70
+ constructor(_analyzer: Analyzer, _containingType: TypeEntityWithMembers, _variablesToInitialize: readonly VariableToInitialize[], _baseConstructor: FoundAnonymousDeclaration<types.Constructor> | undefined);
71
+ getValueParameters(): readonly ParameterVariableEntity[];
72
+ getDefinition(): ConstructorEntityDefinition;
73
+ getContainer(): TypeMemberEntityContainer;
74
+ isDefault(): DefaultConstructorEntityInfo | undefined;
75
+ isHidden(): EntityHidingLevel | undefined;
76
+ isAbstract(): boolean;
77
+ getTags(): readonly Tag[];
78
+ private getOrderedParametersForBaseConstructor;
79
+ }
80
+ export declare class VariableToInitialize {
81
+ readonly entity: TypeVariableEntity;
82
+ readonly hasInitializer: boolean;
83
+ constructor(entity: TypeVariableEntity, hasInitializer: boolean);
84
+ }
85
+ export declare class SynthesizedAliasTypeConstructor implements ConstructorEntity {
86
+ private readonly _analyzer;
87
+ private readonly _originalConstructor;
88
+ private readonly _aliasTypeEntity;
89
+ readonly kind = EntityKind.Constructor;
90
+ private readonly _valueParameters;
91
+ constructor(_analyzer: Analyzer, _originalConstructor: types.Constructor, _aliasTypeEntity: AliasTypeEntity);
92
+ getValueParameters(): readonly ParameterVariableEntity[];
93
+ getDefinition(): ConstructorEntityDefinition;
94
+ getContainer(): TypeMemberEntityContainer;
95
+ isDefault(): DefaultConstructorEntityInfo | undefined;
96
+ isHidden(): EntityHidingLevel | undefined;
97
+ isAbstract(): boolean;
98
+ getTags(): readonly Tag[];
99
+ }
@@ -0,0 +1,40 @@
1
+ import { Analyzer } from '../analysis/index.js';
2
+ import { Tag } from '../analysis/Tags.js';
3
+ import { TypeDereferencedVariableGetterDeclaration, TypeDereferencedVariableSetterDeclaration } from '../tree/index.js';
4
+ import * as types from '../types/index.js';
5
+ import { DefinitionKind, EntityHidingLevel, EntityKind, GetterEntity, SetterEntity, TypeMemberEntityContainer } from './index.js';
6
+ export interface DereferenceOperatorEntity {
7
+ readonly kind: EntityKind.DereferenceOperator;
8
+ getType(): types.Type;
9
+ getGetter(): GetterEntity | undefined;
10
+ getSetter(): SetterEntity | undefined;
11
+ getDefinition(): DereferenceOperatorEntityDefinition;
12
+ getContainer(): TypeMemberEntityContainer;
13
+ isStatic(): boolean;
14
+ isHidden(): EntityHidingLevel | undefined;
15
+ isAbstract(): boolean;
16
+ getTags(): readonly Tag[];
17
+ }
18
+ export type DereferenceOperatorEntityDefinition = {
19
+ kind: DefinitionKind.Source;
20
+ nodes: ReadonlyArray<TypeDereferencedVariableGetterDeclaration | TypeDereferencedVariableSetterDeclaration>;
21
+ } | {
22
+ kind: DefinitionKind.Intrinsic;
23
+ };
24
+ export declare class TypeDereferenceOperatorDeclarationEntity implements DereferenceOperatorEntity {
25
+ readonly kind = EntityKind.DereferenceOperator;
26
+ private readonly _analyzer;
27
+ private readonly _getterDeclaration;
28
+ private readonly _setterDeclaration;
29
+ private readonly _getterOrSetterDeclaration;
30
+ constructor(analyzer: Analyzer, getterDeclaration: TypeDereferencedVariableGetterDeclaration | undefined, setterDeclaration: TypeDereferencedVariableSetterDeclaration | undefined);
31
+ getType(): types.Type;
32
+ getGetter(): GetterEntity | undefined;
33
+ getSetter(): SetterEntity | undefined;
34
+ getDefinition(): DereferenceOperatorEntityDefinition;
35
+ getContainer(): TypeMemberEntityContainer;
36
+ isStatic(): boolean;
37
+ isHidden(): EntityHidingLevel | undefined;
38
+ isAbstract(): boolean;
39
+ getTags(): readonly Tag[];
40
+ }
@@ -0,0 +1,31 @@
1
+ import { Tag } from '../analysis/Tags.js';
2
+ import { Analyzer } from '../analysis/index.js';
3
+ import { TypeDestructorDeclaration } from '../tree/index.js';
4
+ import { DefinitionKind, EntityHidingLevel, EntityKind, ParameterVariableEntity, TypeMemberEntityContainer } from './index.js';
5
+ export interface DestructorEntity {
6
+ readonly kind: EntityKind.Destructor;
7
+ getValueParameters(): readonly ParameterVariableEntity[];
8
+ getContainer(): TypeMemberEntityContainer;
9
+ getDefinition(): DestructorEntityDefinition;
10
+ isHidden(): EntityHidingLevel | undefined;
11
+ isAbstract(): boolean;
12
+ getTags(): readonly Tag[];
13
+ }
14
+ type DestructorEntityDefinition = {
15
+ kind: DefinitionKind.Source;
16
+ node: TypeDestructorDeclaration;
17
+ };
18
+ export declare class TypeDestructorDeclarationEntity implements DestructorEntity {
19
+ private readonly _analyzer;
20
+ private readonly _node;
21
+ readonly kind = EntityKind.Destructor;
22
+ private readonly _valueParameters;
23
+ constructor(_analyzer: Analyzer, _node: TypeDestructorDeclaration);
24
+ getValueParameters(): readonly ParameterVariableEntity[];
25
+ getContainer(): TypeMemberEntityContainer;
26
+ getDefinition(): DestructorEntityDefinition;
27
+ isHidden(): EntityHidingLevel | undefined;
28
+ isAbstract(): boolean;
29
+ getTags(): readonly Tag[];
30
+ }
31
+ export {};
@@ -0,0 +1,27 @@
1
+ import { SourceFile } from '../project/index.js';
2
+ import { PackageEntity } from './PackageEntity.js';
3
+ import { TypeEntity } from './index.js';
4
+ export type EntityHidingLevel = EntityHidingLevel_type | EntityHidingLevel_typeFamily | EntityHidingLevel_file | EntityHidingLevel_package;
5
+ export declare class EntityHidingLevel_type {
6
+ readonly typeEntity: TypeEntity;
7
+ readonly kind = "type";
8
+ constructor(typeEntity: TypeEntity);
9
+ }
10
+ export declare class EntityHidingLevel_typeFamily {
11
+ readonly baseTypeEntity: TypeEntity;
12
+ readonly kind = "type-family";
13
+ constructor(baseTypeEntity: TypeEntity);
14
+ }
15
+ export declare class EntityHidingLevel_file {
16
+ readonly sourceFile: SourceFile;
17
+ readonly kind = "file";
18
+ constructor(sourceFile: SourceFile);
19
+ }
20
+ export declare class EntityHidingLevel_package {
21
+ readonly packageEntity: PackageEntity;
22
+ readonly kind = "package";
23
+ constructor(packageEntity: PackageEntity);
24
+ }
25
+ export interface IEntityHidingMatcher {
26
+ matches(hiding: EntityHidingLevel): boolean;
27
+ }
@@ -0,0 +1,12 @@
1
+ import { Name } from '../common/index.js';
2
+ export type EntityNaming = EntityNaming_named | EntityNaming_anonymous;
3
+ export declare class EntityNaming_named {
4
+ readonly value: Name;
5
+ readonly kind = "named";
6
+ constructor(value: Name);
7
+ toString(): string;
8
+ }
9
+ export declare class EntityNaming_anonymous {
10
+ readonly kind = "anonymous";
11
+ toString(): string;
12
+ }
@@ -0,0 +1,86 @@
1
+ import { Analyzer } from '../analysis/index.js';
2
+ import { GetterDeclaration } from '../analysis/NodeTypeUtils.js';
3
+ import { Tag } from '../analysis/Tags.js';
4
+ import { PackageVariableGetterDeclaration, TypeIndexedGetterDeclaration, TypeDereferencedVariableGetterDeclaration, TypeVariableGetterDeclaration } from '../tree/index.js';
5
+ import * as types from '../types/index.js';
6
+ import { DefinitionKind, EntityHidingLevel, EntityKind, IndexerEntity, PackageVariableEntity, DereferenceOperatorEntity, TypeVariableEntity } from './index.js';
7
+ export interface GetterEntity {
8
+ readonly kind: EntityKind.Getter;
9
+ getReturnType(): types.Type;
10
+ getDefinition(): GetterEntityDefinition;
11
+ isModifyingOwningPlainObject(): boolean;
12
+ getOwningEntity(): EntityOwningGetter;
13
+ isHidden(): EntityHidingLevel | undefined;
14
+ getTags(): readonly Tag[];
15
+ }
16
+ export type GetterEntityDefinition = {
17
+ kind: DefinitionKind.Source;
18
+ node: GetterDeclaration;
19
+ } | {
20
+ kind: DefinitionKind.Intrinsic;
21
+ } | {
22
+ kind: DefinitionKind.TypeScript;
23
+ };
24
+ export type EntityOwningGetter = PackageVariableEntity | TypeVariableEntity | IndexerEntity | DereferenceOperatorEntity;
25
+ export declare class PackageVariableGetterDeclarationEntity implements GetterEntity {
26
+ private readonly _analyzer;
27
+ private readonly _node;
28
+ readonly kind = EntityKind.Getter;
29
+ constructor(_analyzer: Analyzer, _node: PackageVariableGetterDeclaration);
30
+ getReturnType(): types.Type;
31
+ getDefinition(): GetterEntityDefinition;
32
+ isModifyingOwningPlainObject(): boolean;
33
+ getOwningEntity(): EntityOwningGetter;
34
+ isHidden(): EntityHidingLevel | undefined;
35
+ getTags(): readonly Tag[];
36
+ }
37
+ export declare class TypeVariableGetterDeclarationEntity implements GetterEntity {
38
+ private readonly _analyzer;
39
+ private readonly _node;
40
+ readonly kind = EntityKind.Getter;
41
+ constructor(_analyzer: Analyzer, _node: TypeVariableGetterDeclaration);
42
+ getReturnType(): types.Type;
43
+ getDefinition(): GetterEntityDefinition;
44
+ isModifyingOwningPlainObject(): boolean;
45
+ getOwningEntity(): EntityOwningGetter;
46
+ isHidden(): EntityHidingLevel | undefined;
47
+ getTags(): readonly Tag[];
48
+ }
49
+ export declare class TypeIndexedGetterDeclarationEntity implements GetterEntity {
50
+ private readonly _analyzer;
51
+ private readonly _node;
52
+ readonly kind = EntityKind.Getter;
53
+ constructor(_analyzer: Analyzer, _node: TypeIndexedGetterDeclaration);
54
+ getReturnType(): types.Type;
55
+ getDefinition(): GetterEntityDefinition;
56
+ isModifyingOwningPlainObject(): boolean;
57
+ getOwningEntity(): EntityOwningGetter;
58
+ isHidden(): EntityHidingLevel | undefined;
59
+ getTags(): readonly Tag[];
60
+ }
61
+ export declare class TypeDereferencedVariableGetterDeclarationEntity implements GetterEntity {
62
+ private readonly _analyzer;
63
+ private readonly _node;
64
+ readonly kind = EntityKind.Getter;
65
+ constructor(_analyzer: Analyzer, _node: TypeDereferencedVariableGetterDeclaration);
66
+ getReturnType(): types.Type;
67
+ getDefinition(): GetterEntityDefinition;
68
+ isModifyingOwningPlainObject(): boolean;
69
+ getOwningEntity(): EntityOwningGetter;
70
+ isHidden(): EntityHidingLevel | undefined;
71
+ getTags(): readonly Tag[];
72
+ }
73
+ export declare class IntrinsicGetterEntity implements GetterEntity {
74
+ private readonly _returnType;
75
+ private readonly _owningEntity;
76
+ private readonly _isHidden;
77
+ private readonly _isModifyingOwningPlainObject;
78
+ readonly kind = EntityKind.Getter;
79
+ constructor(_returnType: types.Type, _owningEntity: EntityOwningGetter, _isHidden: EntityHidingLevel | undefined, _isModifyingOwningPlainObject: boolean);
80
+ getReturnType(): types.Type;
81
+ getDefinition(): GetterEntityDefinition;
82
+ isModifyingOwningPlainObject(): boolean;
83
+ getOwningEntity(): EntityOwningGetter;
84
+ isHidden(): EntityHidingLevel | undefined;
85
+ getTags(): readonly Tag[];
86
+ }
@@ -0,0 +1,51 @@
1
+ import { Analyzer } from '../analysis/index.js';
2
+ import { Tag } from '../analysis/Tags.js';
3
+ import { ParameterDeclaration, TypeIndexedGetterDeclaration, TypeIndexedSetterDeclaration } from '../tree/index.js';
4
+ import * as types from '../types/index.js';
5
+ import { DefinitionKind, EntityHidingLevel, EntityKind, GetterEntity, ParameterVariableEntity, SetterEntity, TypeMemberEntityContainer } from './index.js';
6
+ export interface IndexerEntity {
7
+ readonly kind: EntityKind.Indexer;
8
+ getValueParameters(): readonly ParameterVariableEntity[];
9
+ getType(): types.Type;
10
+ getGetter(): GetterEntity | undefined;
11
+ getSetter(): SetterEntity | undefined;
12
+ getDefinition(): IndexerEntityDefinition;
13
+ getContainer(): TypeMemberEntityContainer;
14
+ isStatic(): boolean;
15
+ isHidden(): EntityHidingLevel | undefined;
16
+ isAbstract(): boolean;
17
+ getTags(): readonly Tag[];
18
+ }
19
+ export type IndexerEntityDefinition = {
20
+ kind: DefinitionKind.Source;
21
+ nodes: ReadonlyArray<TypeIndexedGetterDeclaration | TypeIndexedSetterDeclaration>;
22
+ } | {
23
+ kind: DefinitionKind.Intrinsic;
24
+ } | {
25
+ kind: DefinitionKind.TypeScript;
26
+ };
27
+ export interface SourceIndexerEntity extends IndexerEntity {
28
+ getParameter(node: ParameterDeclaration): ParameterVariableEntity;
29
+ }
30
+ export declare class TypeIndexerDeclarationEntity implements SourceIndexerEntity {
31
+ readonly kind = EntityKind.Indexer;
32
+ private readonly _analyzer;
33
+ private readonly _getterDeclaration;
34
+ private readonly _setterDeclaration;
35
+ private readonly _getterOrSetterDeclaration;
36
+ private readonly _parameters;
37
+ private get parameters();
38
+ constructor(analyzer: Analyzer, getterDeclaration: TypeIndexedGetterDeclaration | undefined, setterDeclaration: TypeIndexedSetterDeclaration | undefined);
39
+ getParameter(node: ParameterDeclaration): ParameterVariableEntity;
40
+ getValueParameters(): readonly ParameterVariableEntity[];
41
+ getType(): types.Type;
42
+ getGetter(): GetterEntity | undefined;
43
+ getSetter(): SetterEntity | undefined;
44
+ getDefinition(): IndexerEntityDefinition;
45
+ getContainer(): TypeMemberEntityContainer;
46
+ isStatic(): boolean;
47
+ isHidden(): EntityHidingLevel | undefined;
48
+ isAbstract(): boolean;
49
+ getTags(): readonly Tag[];
50
+ private createParameters;
51
+ }