@artel/artc 0.6.25244 → 0.6.25246

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 (136) hide show
  1. package/build/Cli.js +3 -3
  2. package/build/api/Api.js +36 -22
  3. package/build/api/ApiNodeJS.js +3 -3
  4. package/build/api/ApiServices.js +651 -1065
  5. package/build/{chunk-V7EU2U6Y.js → chunk-BGCXIMTW.js} +2 -2
  6. package/build/{chunk-C7RKXERX.js → chunk-CNAUD5P6.js} +1 -1
  7. package/build/{chunk-BAAUJYMH.js → chunk-RIWU6SF4.js} +24430 -21532
  8. package/build/types/analysis/AnalyzedTranslationPackage.d.ts +49 -81
  9. package/build/types/analysis/Analyzer.d.ts +82 -91
  10. package/build/types/analysis/ArgumentToParameterMatchResult.d.ts +8 -10
  11. package/build/types/analysis/AutotypeCallExpressionMeaning.d.ts +3 -4
  12. package/build/types/analysis/BaseExpressionMeaning.d.ts +12 -8
  13. package/build/types/analysis/BaseMemberConflictsValidator.d.ts +8 -10
  14. package/build/types/analysis/CallExpressionMeaning.d.ts +8 -9
  15. package/build/types/analysis/ConstructorOverloadResolver.d.ts +4 -7
  16. package/build/types/analysis/DeclarationsUsageCounter.d.ts +1 -2
  17. package/build/types/analysis/DereferenceExpressionMeaning.d.ts +2 -3
  18. package/build/types/analysis/DiagnosticArgumentFactory.d.ts +18 -0
  19. package/build/types/analysis/DiagnosticCollector.d.ts +3 -3
  20. package/build/types/analysis/DisplayableEntity.d.ts +46 -0
  21. package/build/types/analysis/IdentifierExpressionMeaning.d.ts +19 -20
  22. package/build/types/analysis/ImportedPackageNameTree.d.ts +1 -7
  23. package/build/types/analysis/IndexedAccessExpressionMeaning.d.ts +7 -8
  24. package/build/types/analysis/InstanceFieldsInitializationValidator.d.ts +18 -0
  25. package/build/types/analysis/Localization.d.ts +19 -25
  26. package/build/types/analysis/MemberAccessExpressionMeaning.d.ts +32 -34
  27. package/build/types/analysis/NamedTypeResolver.d.ts +7 -10
  28. package/build/types/analysis/NamedTypeSpecifierResolver.d.ts +4 -7
  29. package/build/types/analysis/NodeTypeUtils.d.ts +1 -0
  30. package/build/types/analysis/ObjectExpressionMeaning.d.ts +12 -8
  31. package/build/types/analysis/OwnAndBaseConstructorCallsChecker.d.ts +23 -0
  32. package/build/types/analysis/PackageAndStaticVariablesInitializationValidator.d.ts +17 -0
  33. package/build/types/analysis/PackageMemberLookup.d.ts +4 -9
  34. package/build/types/analysis/PackageMemberNameConflictsValidator.d.ts +2 -2
  35. package/build/types/analysis/SourceFileMembers.d.ts +3 -3
  36. package/build/types/analysis/TagMeaning.d.ts +19 -22
  37. package/build/types/analysis/Tags.d.ts +1 -1
  38. package/build/types/analysis/TypeMemberConflictsValidator.d.ts +2 -2
  39. package/build/types/analysis/TypeMemberLookup.d.ts +23 -31
  40. package/build/types/analysis/TypeNarrower.d.ts +1 -0
  41. package/build/types/analysis/UserDefinableBinaryOperatorResolver.d.ts +1 -2
  42. package/build/types/analysis/UserDefinableUnaryOperatorResolver.d.ts +1 -2
  43. package/build/types/analysis/WellKnownDeclarations.d.ts +100 -31
  44. package/build/types/analysis/control-flow/NarrowableReference.d.ts +5 -6
  45. package/build/types/analysis/semantic-context/FieldWithInitializerSemanticContext.d.ts +5 -6
  46. package/build/types/analysis/semantic-context/SemanticContextBase.d.ts +13 -14
  47. package/build/types/analysis/semantic-context/SemanticContextValidatingNameConflicts.d.ts +5 -6
  48. package/build/types/analysis/semantic-context/SourceFileSemanticContext.d.ts +8 -9
  49. package/build/types/analysis/semantic-context/SubprogramSemanticContext.d.ts +5 -6
  50. package/build/types/analysis/semantic-context/TypeSemanticContext.d.ts +11 -12
  51. package/build/types/api/Api.d.ts +0 -3
  52. package/build/types/common/Displayable.d.ts +13 -0
  53. package/build/types/common/FormatString.d.ts +2 -1
  54. package/build/types/common/HelperPhrases.d.ts +2 -1
  55. package/build/types/common/Name.d.ts +9 -14
  56. package/build/types/common/TreeQuery.d.ts +6 -4
  57. package/build/types/common/WithDiagnostics.d.ts +3 -4
  58. package/build/types/common/index.d.ts +1 -1
  59. package/build/types/diagnostic/DiagnosticCode.d.ts +131 -125
  60. package/build/types/diagnostic/DiagnosticData.d.ts +7 -3
  61. package/build/types/emitter/EntityMap.d.ts +1 -0
  62. package/build/types/emitter/Transformer.d.ts +4 -2
  63. package/build/types/emitter/ir/EmitOptions.d.ts +14 -0
  64. package/build/types/emitter/ir/Nodes.d.ts +41 -25
  65. package/build/types/emitter/ir/types.d.ts +1 -1
  66. package/build/types/entities/AliasTypeEntity.d.ts +9 -41
  67. package/build/types/entities/AliasedType.d.ts +62 -0
  68. package/build/types/entities/BaseEntityHidingMatcher.d.ts +1 -1
  69. package/build/types/entities/ConstructorEntity.d.ts +10 -2
  70. package/build/types/entities/DereferenceOperatorEntity.d.ts +5 -0
  71. package/build/types/entities/DestructorEntity.d.ts +6 -2
  72. package/build/types/entities/EntityHiding.d.ts +1 -1
  73. package/build/types/entities/EntityLocalizationContext.d.ts +53 -0
  74. package/build/types/entities/FunctionEntity.d.ts +20 -0
  75. package/build/types/entities/FunctionTypeEntity.d.ts +15 -4
  76. package/build/types/entities/GetterEntity.d.ts +15 -2
  77. package/build/types/entities/IndexerEntity.d.ts +5 -0
  78. package/build/types/entities/OperatorEntity.d.ts +9 -3
  79. package/build/types/entities/PackageAliasEntity.d.ts +5 -0
  80. package/build/types/entities/PackageEntity.d.ts +8 -3
  81. package/build/types/entities/PackageMembers.d.ts +3 -2
  82. package/build/types/entities/SetterEntity.d.ts +15 -2
  83. package/build/types/entities/StructuredTypeEntity.d.ts +64 -15
  84. package/build/types/entities/TypeEntityMembers.d.ts +2 -5
  85. package/build/types/entities/TypeExtensionEntity.d.ts +9 -5
  86. package/build/types/entities/TypeMemberContainer.d.ts +2 -2
  87. package/build/types/entities/TypeParameterEntity.d.ts +26 -8
  88. package/build/types/entities/VariableEntity.d.ts +41 -1
  89. package/build/types/entities/VariantTypeEntity.d.ts +13 -4
  90. package/build/types/entities/index.d.ts +5 -4
  91. package/build/types/entities/translated/TranslatedAliasTypeEntity.d.ts +54 -0
  92. package/build/types/entities/translated/TranslatedConstructorEntity.d.ts +25 -0
  93. package/build/types/entities/translated/TranslatedDereferenceOperatorEntity.d.ts +34 -0
  94. package/build/types/entities/translated/TranslatedDestructorEntity.d.ts +24 -0
  95. package/build/types/entities/translated/TranslatedFunctionEntity.d.ts +75 -0
  96. package/build/types/entities/translated/TranslatedFunctionTypeEntity.d.ts +83 -0
  97. package/build/types/entities/translated/TranslatedGetterEntity.d.ts +25 -0
  98. package/build/types/entities/translated/TranslatedIndexerEntity.d.ts +37 -0
  99. package/build/types/entities/translated/TranslatedOperatorEntity.d.ts +35 -0
  100. package/build/types/entities/translated/TranslatedPackageEntity.d.ts +28 -0
  101. package/build/types/entities/translated/TranslatedSetterEntity.d.ts +22 -0
  102. package/build/types/entities/translated/TranslatedStructuredTypeEntity.d.ts +107 -0
  103. package/build/types/entities/translated/TranslatedTypeExtensionEntity.d.ts +28 -0
  104. package/build/types/entities/translated/TranslatedTypeParameterEntity.d.ts +46 -0
  105. package/build/types/entities/translated/TranslatedVariableEntity.d.ts +97 -0
  106. package/build/types/entities/translated/TranslatedVariantTypeEntity.d.ts +76 -0
  107. package/build/types/project/FileSystemTree.d.ts +2 -2
  108. package/build/types/project/SourcePackage.d.ts +1 -0
  109. package/build/types/services/DefinitionService.d.ts +0 -1
  110. package/build/types/services/DisplayService.d.ts +39 -134
  111. package/build/types/services/NodeSemanticInfo.d.ts +7 -7
  112. package/build/types/services/ReferencesService.d.ts +5 -3
  113. package/build/types/services/signature-help/SignatureWithValueParameters.d.ts +7 -10
  114. package/build/types/services/source-generation/EntityToSyntax.d.ts +1 -3
  115. package/build/types/services/source-generation/SourceGenerationService.d.ts +3 -4
  116. package/build/types/services/workspace/ClientTrackedSourceFiles.d.ts +5 -5
  117. package/build/types/services/workspace/CompilationController.d.ts +3 -3
  118. package/build/types/services/workspace/FileSystemTreeProviderBasedOnWatchedFileSystem.d.ts +4 -4
  119. package/build/types/services/workspace/ManuallyUpdatedFileSystemTreeProvider.d.ts +4 -4
  120. package/build/types/services/workspace/Workspace.d.ts +3 -3
  121. package/build/types/services/workspace/WorkspaceFiles.d.ts +7 -7
  122. package/build/types/tree/green/Token.d.ts +6 -7
  123. package/build/types/ts-interop/Entities.d.ts +64 -13
  124. package/build/types/ts-interop/TsInteropContext.d.ts +17 -5
  125. package/build/types/ts-interop/TsPackageContents.d.ts +2 -2
  126. package/build/types/ts-interop/TsPackageMembersCreator.d.ts +3 -3
  127. package/build/types/ts-interop/TsTypeMembersCreator.d.ts +4 -4
  128. package/build/types/types/StandardTypes.d.ts +3 -2
  129. package/build/types/types/Substitutions.d.ts +3 -0
  130. package/build/types/types/Type.d.ts +3 -0
  131. package/package.json +2 -2
  132. package/build/types/analysis/EntityLocalizationHelper.d.ts +0 -17
  133. package/build/types/analysis/FoundDeclaration.d.ts +0 -19
  134. package/build/types/analysis/LocalizationContext.d.ts +0 -15
  135. package/build/types/common/SearchName.d.ts +0 -14
  136. package/build/types/types/Internal.d.ts +0 -1
@@ -1,28 +1,33 @@
1
+ import { Localization } from '../analysis/Localization.js';
1
2
  import { Tag } from '../analysis/Tags.js';
2
3
  import { Analyzer } from '../analysis/index.js';
3
4
  import { Name } from '../common/index.js';
4
5
  import * as tree from '../tree/index.js';
5
6
  import * as types from '../types/index.js';
6
7
  import { EntityNaming } from './EntityNaming.js';
7
- import { NamedTypeMemberEntity, OriginalTypeEntityMembers } from './TypeEntityMembers.js';
8
+ import { TypeEntityMembers } from './TypeEntityMembers.js';
8
9
  import type { PackageEntity } from './index.js';
9
- import { ConstructorEntity, DefinitionKind, DereferenceOperatorEntity, DestructorEntity, EntityContext, EntityHidingLevel, EntityKind, IndexerEntity, ITypeEntity, OperatorEntity, SubstitutionApplicationMode, TypeEntityKind, TypeParameterEntity } from './index.js';
10
+ import { ConstructorEntity, DefinitionKind, DereferenceOperatorEntity, DestructorEntity, EntityContext, EntityHidingLevel, EntityKind, IndexerEntity, ITypeEntity, NamedTypeMemberEntity, OperatorEntity, SubstitutionApplicationMode, TypeEntityKind, TypeParameterEntity } from './index.js';
10
11
  export type StructuredTypeEntity = PackageStructuredTypeEntity | AnonymousStructuredTypeEntity;
11
12
  export interface PackageStructuredTypeEntity extends IStructuredTypeEntity {
12
13
  readonly subkind: 'package';
13
14
  getName(): Name;
14
15
  getContainingPackage(): PackageEntity;
16
+ getLocalization(): Localization;
17
+ getOriginalEntity(): PackageStructuredTypeEntity;
15
18
  }
16
19
  export interface AnonymousStructuredTypeEntity extends IStructuredTypeEntity {
17
20
  readonly subkind: 'anonymous';
18
21
  getContainingPackage(): PackageEntity;
22
+ getLocalization(): Localization;
23
+ getOriginalEntity(): AnonymousStructuredTypeEntity;
19
24
  }
20
25
  interface IStructuredTypeEntity extends ITypeEntity {
21
26
  readonly kind: EntityKind.Type;
22
27
  readonly typeEntityKind: TypeEntityKind.Structured;
23
28
  getNaming(): EntityNaming;
24
29
  getTypeParameters(): readonly TypeParameterEntity[];
25
- getMembers(): OriginalTypeEntityMembers;
30
+ getMembers(): TypeEntityMembers;
26
31
  getDefinition(): StructuredTypeEntityDefinition;
27
32
  markedBasic(): boolean;
28
33
  isAbstract(): boolean;
@@ -62,26 +67,43 @@ type StructuredTypeEntityDefinitionNode = tree.PackageStructuredTypeDeclaration
62
67
  *
63
68
  * Для типа `А` в поле `declared` будет указан тип `Б`, а в поле `cycleFree` - `undefined`.
64
69
  */
65
- export declare class BaseObjectType {
70
+ export declare abstract class BaseObjectType {
66
71
  /**
67
72
  * Базовый объектный тип, указанный пользователем (либо базовый тип по умолчанию).
68
73
  */
69
- readonly declared: types.Type | undefined;
70
- private _state;
74
+ abstract readonly declared: types.Type | undefined;
71
75
  /**
72
76
  * Базовый объектный тип, указанный пользователем, либо `undefined`, если указанный тип приводит к циклу.
73
77
  */
74
- get cycleFree(): types.Type | undefined;
78
+ abstract readonly cycleFree: types.Type | undefined;
75
79
  /**
76
80
  * Приводит ли указанный базовый объектный тип к циклу?
77
81
  */
82
+ abstract readonly causesCycle: boolean;
83
+ /**
84
+ * @param circularityTrackingStack Если элементом массива является `false`, тип не создаёт цикл, если `true` - создаёт.
85
+ */
86
+ abstract resolveBaseObjectType(circularityTrackingStack: boolean[]): CycleFreeBaseObjectTypeResolutionResult;
87
+ }
88
+ export declare class OriginalBaseObjectType extends BaseObjectType {
89
+ /**
90
+ * Базовый объектный тип, указанный пользователем (либо базовый тип по умолчанию).
91
+ */
92
+ readonly declared: types.Type | undefined;
93
+ private _state;
94
+ get cycleFree(): types.Type | undefined;
78
95
  get causesCycle(): boolean;
79
96
  constructor(declared: types.Type | undefined);
80
- private getBaseObjectTypeResolutionResult;
81
97
  /**
82
98
  * @param circularityTrackingStack Если элементом массива является `false`, тип не создаёт цикл, если `true` - создаёт.
83
99
  */
84
- private resolveBaseObjectType;
100
+ resolveBaseObjectType(circularityTrackingStack: boolean[]): CycleFreeBaseObjectTypeResolutionResult;
101
+ private getBaseObjectTypeResolutionResult;
102
+ }
103
+ export declare class CycleFreeBaseObjectTypeResolutionResult {
104
+ readonly type: types.Type | undefined;
105
+ readonly causesCycle: boolean;
106
+ constructor(type: types.Type | undefined, causesCycle: boolean);
85
107
  }
86
108
  /**
87
109
  * Класс позволяет работать с базовыми аспектными типами, исключая циклы наследования.
@@ -94,7 +116,25 @@ export declare class BaseObjectType {
94
116
  *
95
117
  * Для типа `А` в поле `declared` будет указан тип `Б`, а в поле `cycleFree` - `undefined`.
96
118
  */
97
- export declare class BaseAspectTypes {
119
+ export declare abstract class BaseAspectTypes {
120
+ /**
121
+ * Базовые аспектные типы, указанные пользователем.
122
+ */
123
+ abstract readonly declared: readonly types.Type[];
124
+ /**
125
+ * Базовые аспектные типы, указанные пользователем, которые не приводят к циклу.
126
+ */
127
+ abstract cycleFree: readonly types.Type[];
128
+ /**
129
+ * Приводит ли хотя бы один базовый аспектный тип, указанный пользователем, к циклу?
130
+ */
131
+ abstract causesCycle: boolean;
132
+ /**
133
+ * @param circularityTrackingStack Если элементом массива является `false`, тип не создаёт цикл, если `true` - создаёт.
134
+ */
135
+ abstract resolveBaseAspectTypes(circularityTrackingStack: boolean[]): CycleFreeBaseAspectTypesResolutionResult;
136
+ }
137
+ export declare class OriginalBaseAspectTypes extends BaseAspectTypes {
98
138
  /**
99
139
  * Базовые аспектные типы, указанные пользователем.
100
140
  */
@@ -109,11 +149,16 @@ export declare class BaseAspectTypes {
109
149
  */
110
150
  get causesCycle(): boolean;
111
151
  constructor(declared: readonly types.Type[]);
112
- private getBaseAspectTypesResolutionResult;
113
152
  /**
114
153
  * @param circularityTrackingStack Если элементом массива является `false`, тип не создаёт цикл, если `true` - создаёт.
115
154
  */
116
- private resolveBaseAspectTypes;
155
+ resolveBaseAspectTypes(circularityTrackingStack: boolean[]): CycleFreeBaseAspectTypesResolutionResult;
156
+ private getBaseAspectTypesResolutionResult;
157
+ }
158
+ export declare class CycleFreeBaseAspectTypesResolutionResult {
159
+ readonly types: readonly types.Type[];
160
+ readonly causesCycle: boolean;
161
+ constructor(types: readonly types.Type[], causesCycle: boolean);
117
162
  }
118
163
  export declare class PackageStructuredTypeDeclarationEntity implements PackageStructuredTypeEntity {
119
164
  readonly kind = EntityKind.Type;
@@ -127,7 +172,7 @@ export declare class PackageStructuredTypeDeclarationEntity implements PackageSt
127
172
  getName(): Name;
128
173
  getContainingPackage(): PackageEntity;
129
174
  getTypeParameters(): readonly TypeParameterEntity[];
130
- getMembers(): OriginalTypeEntityMembers;
175
+ getMembers(): TypeEntityMembers;
131
176
  getDefinition(): StructuredTypeEntityDefinition;
132
177
  markedBasic(): boolean;
133
178
  isAbstract(): boolean;
@@ -141,6 +186,8 @@ export declare class PackageStructuredTypeDeclarationEntity implements PackageSt
141
186
  getTags(): readonly Tag[];
142
187
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
143
188
  getContext(): EntityContext;
189
+ getLocalization(): Localization;
190
+ getOriginalEntity(): PackageStructuredTypeEntity;
144
191
  }
145
192
  export declare class SourcePackageStructuredTypeDeclarationData {
146
193
  private readonly _analyzer;
@@ -156,7 +203,7 @@ export declare class SourcePackageStructuredTypeDeclarationData {
156
203
  getName(): Name;
157
204
  getContainingPackage(): PackageEntity;
158
205
  getTypeParameters(): readonly TypeParameterEntity[];
159
- getMembers(): OriginalTypeEntityMembers;
206
+ getMembers(): TypeEntityMembers;
160
207
  getDefinition(): StructuredTypeEntityDefinition;
161
208
  markedBasic(): boolean;
162
209
  isAbstract(): boolean;
@@ -182,7 +229,7 @@ export declare class AnonymousStructuredTypeDeclarationEntity implements Anonymo
182
229
  constructor(_analyzer: Analyzer, _node: tree.AnonymousStructuredTypeDeclaration);
183
230
  getNaming(): EntityNaming;
184
231
  getTypeParameters(): readonly TypeParameterEntity[];
185
- getMembers(): OriginalTypeEntityMembers;
232
+ getMembers(): TypeEntityMembers;
186
233
  getDefinition(): StructuredTypeEntityDefinition;
187
234
  markedBasic(): boolean;
188
235
  isAbstract(): boolean;
@@ -197,6 +244,8 @@ export declare class AnonymousStructuredTypeDeclarationEntity implements Anonymo
197
244
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
198
245
  getContainingPackage(): PackageEntity;
199
246
  getContext(): EntityContext;
247
+ getLocalization(): Localization;
248
+ getOriginalEntity(): AnonymousStructuredTypeEntity;
200
249
  private getBaseTypes;
201
250
  }
202
251
  export declare class UnfinishedIntrinsicPackageStructuredTypeEntity {
@@ -2,13 +2,11 @@ import { Name } from '../common/index.js';
2
2
  import { ConstructorEntity } from './ConstructorEntity.js';
3
3
  import { DereferenceOperatorEntity } from './DereferenceOperatorEntity.js';
4
4
  import { DestructorEntity } from './DestructorEntity.js';
5
- import { MethodEntity } from './FunctionEntity.js';
6
5
  import { IndexerEntity } from './IndexerEntity.js';
7
6
  import { OperatorEntity } from './OperatorEntity.js';
8
7
  import { OperatorKind } from './OperatorKind.js';
9
- import { FieldEntity } from './VariableEntity.js';
10
- import { TypeMemberEntity } from './index.js';
11
- export declare class OriginalTypeEntityMembers {
8
+ import { NamedTypeMemberEntity, TypeMemberEntity } from './index.js';
9
+ export declare class TypeEntityMembers {
12
10
  private readonly _namedMembers;
13
11
  private readonly _operators;
14
12
  private readonly _constructors;
@@ -30,4 +28,3 @@ export declare class OriginalTypeEntityMembers {
30
28
  getDestructors(): readonly DestructorEntity[];
31
29
  getAll(): readonly TypeMemberEntity[];
32
30
  }
33
- export type NamedTypeMemberEntity = FieldEntity | MethodEntity;
@@ -1,19 +1,22 @@
1
+ import { Localization } from '../analysis/Localization.js';
1
2
  import { Tag } from '../analysis/Tags.js';
2
3
  import { Analyzer } from '../analysis/index.js';
3
4
  import { TypeExtensionDeclaration } from '../tree/index.js';
4
- import { OriginalTypeEntityMembers } from './TypeEntityMembers.js';
5
+ import { TypeEntityMembers } from './TypeEntityMembers.js';
5
6
  import { DefinitionKind, EntityContext, EntityHidingLevel, EntityKind, NamedTypeEntity, PackageEntity } from './index.js';
6
7
  export interface TypeExtensionEntity {
7
8
  readonly kind: EntityKind.TypeExtension;
8
- getMembers(): OriginalTypeEntityMembers;
9
+ getMembers(): TypeEntityMembers;
9
10
  getContainingPackage(): PackageEntity;
10
11
  getExtendedTypeEntity(): NamedTypeEntity | undefined;
11
12
  getDefinition(): TypeExtensionEntityDefinition;
12
13
  isHidden(): EntityHidingLevel | undefined;
13
14
  getTags(): readonly Tag[];
14
15
  getContext(): EntityContext;
16
+ getLocalization(): Localization;
17
+ getOriginalEntity(): TypeExtensionEntity;
15
18
  }
16
- type TypeExtensionEntityDefinition = {
19
+ export type TypeExtensionEntityDefinition = {
17
20
  kind: DefinitionKind.Source;
18
21
  node: TypeExtensionDeclaration;
19
22
  };
@@ -25,12 +28,13 @@ export declare class SourceTypeExtensionEntity implements TypeExtensionEntity {
25
28
  private _modifierFlags;
26
29
  private get modifierFlags();
27
30
  constructor(analyzer: Analyzer, node: TypeExtensionDeclaration);
28
- getMembers(): OriginalTypeEntityMembers;
31
+ getMembers(): TypeEntityMembers;
29
32
  getContainingPackage(): PackageEntity;
30
33
  getExtendedTypeEntity(): NamedTypeEntity | undefined;
31
34
  getDefinition(): TypeExtensionEntityDefinition;
32
35
  isHidden(): EntityHidingLevel | undefined;
33
36
  getTags(): readonly Tag[];
34
37
  getContext(): EntityContext;
38
+ getLocalization(): Localization;
39
+ getOriginalEntity(): TypeExtensionEntity;
35
40
  }
36
- export {};
@@ -9,9 +9,9 @@ export declare namespace TypeMemberEntityContainer {
9
9
  getEntity(): TypeEntityWithMembers | TypeExtensionEntity;
10
10
  }
11
11
  export class TypeExtension implements ITypeMemberEntityContainer {
12
- readonly typeExtension: TypeExtensionEntity;
12
+ readonly typeExtensionEntity: TypeExtensionEntity;
13
13
  readonly kind = "type-extension";
14
- constructor(typeExtension: TypeExtensionEntity);
14
+ constructor(typeExtensionEntity: TypeExtensionEntity);
15
15
  getContextualType(): TypeEntity | undefined;
16
16
  getEntity(): TypeEntityWithMembers | TypeExtensionEntity;
17
17
  }
@@ -1,4 +1,5 @@
1
1
  import { Analyzer } from '../analysis/index.js';
2
+ import { Localization } from '../analysis/Localization.js';
2
3
  import { Tag } from '../analysis/Tags.js';
3
4
  import { Name } from '../common/index.js';
4
5
  import { TypeParameterDeclaration } from '../tree/index.js';
@@ -18,6 +19,8 @@ export interface TypeParameterEntity extends ITypeEntity {
18
19
  getTypeParameters(): readonly TypeParameterEntity[];
19
20
  getContainingEntity(): EntityContainingTypeParameter;
20
21
  isHidden(): EntityHidingLevel | undefined;
22
+ getLocalization(): Localization;
23
+ getOriginalEntity(): TypeParameterEntity;
21
24
  }
22
25
  export type TypeParameterEntityDefinition = {
23
26
  kind: DefinitionKind.Source;
@@ -38,26 +41,37 @@ export type EntityContainingTypeParameter = VariantTypeEntity | FunctionEntity |
38
41
  *
39
42
  * Для типа `Т1` в поле `declared` будет указан тип `Т2`, а в поле `cycleFree` - `undefined`.
40
43
  */
41
- export declare class TypeParameterConstraint {
44
+ export declare abstract class TypeParameterConstraint {
42
45
  /**
43
46
  * Указанное пользователем ограничение параметра шаблона (либо ограничение по умолчанию если не указано явно).
44
47
  */
45
- readonly declared: types.Type | undefined;
46
- private _state;
48
+ abstract readonly declared: types.Type | undefined;
47
49
  /**
48
50
  * Указанное пользователем ограничение шаблона, либо `undefined`, если указанное ограничение шаблона приводит к циклу.
49
51
  */
50
- get cycleFree(): types.Type | undefined;
52
+ abstract cycleFree: types.Type | undefined;
51
53
  /**
52
54
  * Приводит ли указанное пользователем ограничение шаблона к циклу?
53
55
  */
54
- get causesCycle(): boolean;
55
- constructor(declared: types.Type | undefined);
56
- private getConstraintResolutionResult;
56
+ abstract causesCycle: boolean;
57
57
  /**
58
58
  * @param circularityTrackingStack Если элементом массива является `false`, тип не создаёт цикл, если `true` - создаёт.
59
59
  */
60
- private resolveConstraint;
60
+ abstract resolveConstraint(circularityTrackingStack: boolean[]): CycleFreeConstraintResolutionResult;
61
+ }
62
+ export declare class OriginalTypeParameterConstraint extends TypeParameterConstraint {
63
+ readonly declared: types.Type | undefined;
64
+ private _state;
65
+ get cycleFree(): types.Type | undefined;
66
+ get causesCycle(): boolean;
67
+ constructor(declared: types.Type | undefined);
68
+ resolveConstraint(circularityTrackingStack: boolean[]): CycleFreeConstraintResolutionResult;
69
+ private getConstraintResolutionResult;
70
+ }
71
+ export declare class CycleFreeConstraintResolutionResult {
72
+ readonly type: types.Type | undefined;
73
+ readonly causesCycle: boolean;
74
+ constructor(type: types.Type | undefined, causesCycle: boolean);
61
75
  }
62
76
  export declare class SourceTypeParameterEntity implements TypeParameterEntity {
63
77
  private readonly _analyzer;
@@ -78,6 +92,8 @@ export declare class SourceTypeParameterEntity implements TypeParameterEntity {
78
92
  isHidden(): EntityHidingLevel | undefined;
79
93
  getTags(): readonly Tag[];
80
94
  getContext(): EntityContext;
95
+ getLocalization(): Localization;
96
+ getOriginalEntity(): TypeParameterEntity;
81
97
  }
82
98
  export declare class IntrinsicTypeParameterEntity implements TypeParameterEntity {
83
99
  private readonly _name;
@@ -99,4 +115,6 @@ export declare class IntrinsicTypeParameterEntity implements TypeParameterEntity
99
115
  isHidden(): EntityHidingLevel | undefined;
100
116
  getTags(): readonly Tag[];
101
117
  getContext(): EntityContext;
118
+ getLocalization(): Localization;
119
+ getOriginalEntity(): TypeParameterEntity;
102
120
  }
@@ -1,3 +1,4 @@
1
+ import { Localization } from '../analysis/Localization.js';
1
2
  import { SetterDeclaration, SubprogramDeclarationOrLiteral } from '../analysis/NodeTypeUtils.js';
2
3
  import { Tag } from '../analysis/Tags.js';
3
4
  import { Analyzer } from '../analysis/index.js';
@@ -10,6 +11,8 @@ export type VariableEntity = PackageVariableEntity | FieldEntity | ParameterVari
10
11
  export interface PackageVariableEntity extends IVariableEntity {
11
12
  readonly subkind: 'package';
12
13
  getContainingPackage(): PackageEntity;
14
+ getLocalization(): Localization;
15
+ getOriginalEntity(): PackageVariableEntity;
13
16
  }
14
17
  export interface FieldEntity extends IVariableEntity {
15
18
  readonly subkind: 'field';
@@ -20,17 +23,23 @@ export interface FieldEntity extends IVariableEntity {
20
23
  markedAbstract(): boolean;
21
24
  getOverriddenMembers(): readonly types.Field[];
22
25
  isVariant(): boolean;
26
+ getLocalization(): Localization;
27
+ getOriginalEntity(): FieldEntity;
23
28
  }
24
29
  export interface ParameterVariableEntity extends IVariableEntity {
25
30
  readonly subkind: 'parameter';
26
31
  getContainer(): ParameterVariableEntityContainer;
27
32
  isOptional(): boolean;
28
33
  isVariadic(): boolean;
34
+ getLocalization(): Localization;
35
+ getOriginalEntity(): ParameterVariableEntity;
29
36
  }
30
37
  export interface LocalVariableEntity extends IVariableEntity {
31
38
  readonly subkind: 'local';
32
39
  getLocalVariableKind(): LocalVariableKind;
33
40
  getContainingEntity(): Entity;
41
+ getLocalization(): Localization;
42
+ getOriginalEntity(): LocalVariableEntity;
34
43
  }
35
44
  export declare enum LocalVariableKind {
36
45
  Regular = 0,
@@ -63,7 +72,7 @@ export declare namespace ParameterVariableEntityContainer {
63
72
  constructor(entityContainingFunction: ActualEntity);
64
73
  }
65
74
  }
66
- export type EntityContainingValueParameter = FunctionEntity | IndexerEntity | ConstructorEntity | DestructorEntity | FunctionTypeEntity | SetterEntity | OperatorEntity;
75
+ export type EntityContainingValueParameter = FunctionEntity | IndexerEntity | ConstructorEntity | DestructorEntity | FunctionTypeEntity | OperatorEntity;
67
76
  export type VariableEntityDefinition = {
68
77
  kind: DefinitionKind.Source;
69
78
  value: SourceVariableEntityDefinition;
@@ -124,6 +133,8 @@ export declare class PackageVariableDeclarationEntity implements PackageVariable
124
133
  isSpecial(): SpecialVariableEntityInfo | undefined;
125
134
  getTags(): readonly Tag[];
126
135
  ensureAllDiagnosticsReported(): void;
136
+ getLocalization(): Localization;
137
+ getOriginalEntity(): PackageVariableEntity;
127
138
  }
128
139
  export declare class ComputedPackageVariableDeclarationEntity implements PackageVariableEntity {
129
140
  readonly kind = EntityKind.Variable;
@@ -146,6 +157,8 @@ export declare class ComputedPackageVariableDeclarationEntity implements Package
146
157
  getSetter(): SetterEntity | undefined;
147
158
  isSpecial(): SpecialVariableEntityInfo | undefined;
148
159
  getTags(): readonly Tag[];
160
+ getLocalization(): Localization;
161
+ getOriginalEntity(): PackageVariableEntity;
149
162
  ensureAllDiagnosticsReported(): void;
150
163
  }
151
164
  export declare class FieldDeclarationEntity implements FieldEntity {
@@ -174,6 +187,8 @@ export declare class FieldDeclarationEntity implements FieldEntity {
174
187
  markedAbstract(): boolean;
175
188
  getOverriddenMembers(): readonly types.Field[];
176
189
  isVariant(): boolean;
190
+ getLocalization(): Localization;
191
+ getOriginalEntity(): FieldEntity;
177
192
  ensureAllDiagnosticsReported(): void;
178
193
  }
179
194
  export declare class ComputedFieldDeclarationEntity implements FieldEntity {
@@ -203,6 +218,8 @@ export declare class ComputedFieldDeclarationEntity implements FieldEntity {
203
218
  getTags(): readonly Tag[];
204
219
  getOverriddenMembers(): readonly types.Field[];
205
220
  isVariant(): boolean;
221
+ getLocalization(): Localization;
222
+ getOriginalEntity(): FieldEntity;
206
223
  ensureAllDiagnosticsReported(): void;
207
224
  }
208
225
  export declare class VariantDeclarationEntity implements FieldEntity {
@@ -229,6 +246,8 @@ export declare class VariantDeclarationEntity implements FieldEntity {
229
246
  markedAbstract(): boolean;
230
247
  getOverriddenMembers(): readonly types.Field[];
231
248
  isVariant(): boolean;
249
+ getLocalization(): Localization;
250
+ getOriginalEntity(): FieldEntity;
232
251
  }
233
252
  export declare class LocalVariableDeclarationEntity implements LocalVariableEntity {
234
253
  private readonly _analyzer;
@@ -249,6 +268,8 @@ export declare class LocalVariableDeclarationEntity implements LocalVariableEnti
249
268
  getTags(): readonly Tag[];
250
269
  getLocalVariableKind(): LocalVariableKind;
251
270
  getContainingEntity(): Entity;
271
+ getLocalization(): Localization;
272
+ getOriginalEntity(): LocalVariableEntity;
252
273
  ensureAllDiagnosticsReported(): void;
253
274
  }
254
275
  export declare class EnumerationVariableDeclarationEntity implements LocalVariableEntity {
@@ -270,6 +291,8 @@ export declare class EnumerationVariableDeclarationEntity implements LocalVariab
270
291
  getTags(): readonly Tag[];
271
292
  getLocalVariableKind(): LocalVariableKind;
272
293
  getContainingEntity(): Entity;
294
+ getLocalization(): Localization;
295
+ getOriginalEntity(): LocalVariableEntity;
273
296
  ensureAllDiagnosticsReported(): void;
274
297
  }
275
298
  export declare class ErrorVariableDeclarationEntity implements LocalVariableEntity {
@@ -277,6 +300,7 @@ export declare class ErrorVariableDeclarationEntity implements LocalVariableEnti
277
300
  private readonly _node;
278
301
  readonly kind = EntityKind.Variable;
279
302
  readonly subkind = "local";
303
+ private readonly _type;
280
304
  constructor(_analyzer: Analyzer, _node: tree.ErrorVariableDeclaration);
281
305
  getName(): Name;
282
306
  getType(): types.Type;
@@ -289,6 +313,8 @@ export declare class ErrorVariableDeclarationEntity implements LocalVariableEnti
289
313
  getTags(): readonly Tag[];
290
314
  getLocalVariableKind(): LocalVariableKind;
291
315
  getContainingEntity(): Entity;
316
+ getLocalization(): Localization;
317
+ getOriginalEntity(): LocalVariableEntity;
292
318
  }
293
319
  export declare class ParameterDeclarationEntity implements ParameterVariableEntity {
294
320
  private readonly _analyzer;
@@ -310,6 +336,8 @@ export declare class ParameterDeclarationEntity implements ParameterVariableEnti
310
336
  getContainer(): ParameterVariableEntityContainer;
311
337
  isOptional(): boolean;
312
338
  isVariadic(): boolean;
339
+ getLocalization(): Localization;
340
+ getOriginalEntity(): ParameterVariableEntity;
313
341
  ensureAllDiagnosticsReported(): void;
314
342
  }
315
343
  export declare class IndexParameterDeclarationEntity implements ParameterVariableEntity {
@@ -335,6 +363,8 @@ export declare class IndexParameterDeclarationEntity implements ParameterVariabl
335
363
  getContainer(): ParameterVariableEntityContainer;
336
364
  isOptional(): boolean;
337
365
  isVariadic(): boolean;
366
+ getLocalization(): Localization;
367
+ getOriginalEntity(): ParameterVariableEntity;
338
368
  ensureAllDiagnosticsReported(): void;
339
369
  }
340
370
  export declare class FunctionLiteralParameterDeclarationEntity implements ParameterVariableEntity {
@@ -357,6 +387,8 @@ export declare class FunctionLiteralParameterDeclarationEntity implements Parame
357
387
  getContainer(): ParameterVariableEntityContainer;
358
388
  isOptional(): boolean;
359
389
  isVariadic(): boolean;
390
+ getLocalization(): Localization;
391
+ getOriginalEntity(): ParameterVariableEntity;
360
392
  }
361
393
  export declare class IntrinsicPackageVariableEntity implements PackageVariableEntity {
362
394
  private readonly _name;
@@ -379,6 +411,8 @@ export declare class IntrinsicPackageVariableEntity implements PackageVariableEn
379
411
  isSpecial(): SpecialVariableEntityInfo | undefined;
380
412
  getTags(): readonly Tag[];
381
413
  getContainingPackage(): PackageEntity;
414
+ getLocalization(): Localization;
415
+ getOriginalEntity(): PackageVariableEntity;
382
416
  }
383
417
  export declare class IntrinsicFieldEntity implements FieldEntity {
384
418
  private readonly _name;
@@ -412,6 +446,8 @@ export declare class IntrinsicFieldEntity implements FieldEntity {
412
446
  markedAbstract(): boolean;
413
447
  getOverriddenMembers(): readonly types.Field[];
414
448
  isVariant(): boolean;
449
+ getLocalization(): Localization;
450
+ getOriginalEntity(): FieldEntity;
415
451
  }
416
452
  export declare class IntrinsicParameterVariableEntity implements ParameterVariableEntity {
417
453
  private readonly _name;
@@ -435,6 +471,8 @@ export declare class IntrinsicParameterVariableEntity implements ParameterVariab
435
471
  getContainer(): ParameterVariableEntityContainer;
436
472
  isOptional(): boolean;
437
473
  isVariadic(): boolean;
474
+ getLocalization(): Localization;
475
+ getOriginalEntity(): ParameterVariableEntity;
438
476
  }
439
477
  export declare class IntrinsicLocalVariableEntity implements LocalVariableEntity {
440
478
  private readonly _name;
@@ -456,5 +494,7 @@ export declare class IntrinsicLocalVariableEntity implements LocalVariableEntity
456
494
  getTags(): readonly Tag[];
457
495
  getLocalVariableKind(): LocalVariableKind;
458
496
  getContainingEntity(): Entity;
497
+ getLocalization(): Localization;
498
+ getOriginalEntity(): LocalVariableEntity;
459
499
  }
460
500
  export {};
@@ -1,25 +1,30 @@
1
+ import { Localization } from '../analysis/Localization.js';
1
2
  import { Tag } from '../analysis/Tags.js';
2
3
  import { Analyzer } from '../analysis/index.js';
3
4
  import { Name } from '../common/index.js';
4
5
  import { AnonymousVariantTypeDeclaration, PackageVariantTypeDeclaration } from '../tree/index.js';
5
6
  import * as types from '../types/index.js';
6
7
  import { EntityNaming } from './EntityNaming.js';
7
- import { OriginalTypeEntityMembers } from './TypeEntityMembers.js';
8
+ import { TypeEntityMembers } from './TypeEntityMembers.js';
8
9
  import { BaseObjectType, DefinitionKind, EntityContext, EntityHidingLevel, EntityKind, ITypeEntity, PackageEntity, SubstitutionApplicationMode, TypeEntityKind, TypeParameterEntity } from './index.js';
9
10
  export type VariantTypeEntity = PackageVariantTypeEntity | AnonymousVariantTypeEntity;
10
11
  export interface PackageVariantTypeEntity extends IVariantTypeEntity {
11
12
  readonly subkind: 'package';
12
13
  getName(): Name;
13
14
  getContainingPackage(): PackageEntity;
15
+ getLocalization(): Localization;
16
+ getOriginalEntity(): PackageVariantTypeEntity;
14
17
  }
15
18
  export interface AnonymousVariantTypeEntity extends IVariantTypeEntity {
16
19
  readonly subkind: 'anonymous';
17
20
  getContainingPackage(): PackageEntity;
21
+ getLocalization(): Localization;
22
+ getOriginalEntity(): AnonymousVariantTypeEntity;
18
23
  }
19
24
  interface IVariantTypeEntity extends ITypeEntity {
20
25
  readonly kind: EntityKind.Type;
21
26
  readonly typeEntityKind: TypeEntityKind.Variant;
22
- getMembers(): OriginalTypeEntityMembers;
27
+ getMembers(): TypeEntityMembers;
23
28
  getUnderlyingType(): types.Type;
24
29
  getDefinition(): VariantTypeEntityDefinition;
25
30
  getNaming(): EntityNaming;
@@ -55,7 +60,7 @@ export declare class PackageVariantTypeDeclarationEntity implements PackageVaria
55
60
  getNaming(): EntityNaming;
56
61
  getName(): Name;
57
62
  getContainingPackage(): PackageEntity;
58
- getMembers(): OriginalTypeEntityMembers;
63
+ getMembers(): TypeEntityMembers;
59
64
  getUnderlyingType(): types.Type;
60
65
  getDefinition(): VariantTypeEntityDefinition;
61
66
  getArity(): number;
@@ -65,6 +70,8 @@ export declare class PackageVariantTypeDeclarationEntity implements PackageVaria
65
70
  getSubstitutionApplicationMode(): SubstitutionApplicationMode;
66
71
  getBaseObjectType(): BaseObjectType;
67
72
  getContext(): EntityContext;
73
+ getLocalization(): Localization;
74
+ getOriginalEntity(): PackageVariantTypeEntity;
68
75
  }
69
76
  export declare class AnonymousVariantTypeDeclarationEntity implements AnonymousVariantTypeEntity {
70
77
  private readonly _analyzer;
@@ -76,7 +83,7 @@ export declare class AnonymousVariantTypeDeclarationEntity implements AnonymousV
76
83
  private readonly _members;
77
84
  private readonly _baseObjectType;
78
85
  constructor(_analyzer: Analyzer, _node: AnonymousVariantTypeDeclaration);
79
- getMembers(): OriginalTypeEntityMembers;
86
+ getMembers(): TypeEntityMembers;
80
87
  getUnderlyingType(): types.Type;
81
88
  getDefinition(): VariantTypeEntityDefinition;
82
89
  getNaming(): EntityNaming;
@@ -88,5 +95,7 @@ export declare class AnonymousVariantTypeDeclarationEntity implements AnonymousV
88
95
  getContainingPackage(): PackageEntity;
89
96
  getBaseObjectType(): BaseObjectType;
90
97
  getContext(): EntityContext;
98
+ getLocalization(): Localization;
99
+ getOriginalEntity(): AnonymousVariantTypeEntity;
91
100
  }
92
101
  export {};
@@ -1,5 +1,4 @@
1
1
  import { Analyzer } from '../analysis/Analyzer.js';
2
- import { LocalizationContext } from '../analysis/LocalizationContext.js';
3
2
  import { SemanticContext } from '../analysis/semantic-context/SemanticContext.js';
4
3
  import { PackageDialect, PackageLocale } from '../common/index.js';
5
4
  import * as types from '../types/index.js';
@@ -22,6 +21,7 @@ import { TypeExtensionEntity } from './TypeExtensionEntity.js';
22
21
  import { TypeParameterEntity } from './TypeParameterEntity.js';
23
22
  import { FieldEntity, PackageVariableEntity, VariableEntity } from './VariableEntity.js';
24
23
  import { PackageVariantTypeEntity, VariantTypeEntity } from './VariantTypeEntity.js';
24
+ export * from './AliasedType.js';
25
25
  export * from './AliasTypeEntity.js';
26
26
  export * from './ConstructorEntity.js';
27
27
  export * from './DereferenceOperatorEntity.js';
@@ -106,14 +106,15 @@ export declare namespace TypeMemberEntity {
106
106
  function getOverriddenMembers(entity: TypeMemberEntity): readonly types.TypeMember[];
107
107
  function instantiate(analyzer: Analyzer, entity: TypeMemberEntity, substitutions: types.Substitutions): types.TypeMember;
108
108
  }
109
+ export type NamedTypeMemberEntity = FieldEntity | MethodEntity;
110
+ export type NamedEntity = VariableEntity | PackageVariantTypeEntity | FunctionEntity | TypeParameterEntity | PackageFunctionTypeEntity | PackageStructuredTypeEntity | PackageAliasEntity | AliasTypeEntity;
109
111
  export declare class EntityContext {
110
112
  readonly containingPackage: PackageEntity;
111
113
  readonly hidingMatcher: IEntityHidingMatcher;
112
- readonly localizationContext: LocalizationContext | undefined;
113
114
  readonly typeExtensionLookup: SemanticContext | undefined;
114
- get lctxOrLocale(): LocalizationContext | PackageLocale;
115
+ get locale(): PackageLocale;
115
116
  get packageDialect(): PackageDialect;
116
- constructor(containingPackage: PackageEntity, hidingMatcher: IEntityHidingMatcher, localizationContext: LocalizationContext | undefined, typeExtensionLookup: SemanticContext | undefined);
117
+ constructor(containingPackage: PackageEntity, hidingMatcher: IEntityHidingMatcher, typeExtensionLookup: SemanticContext | undefined);
117
118
  static fromSemanticContext(semanticContext: SemanticContext): EntityContext;
118
119
  }
119
120
  export declare function entityToStringDecorator<T extends {
@@ -0,0 +1,54 @@
1
+ import { Localization, Translation } from '../../analysis/Localization.js';
2
+ import { Tag } from '../../analysis/Tags.js';
3
+ import { Name } from '../../common/index.js';
4
+ import * as types from '../../types/index.js';
5
+ import { AliasedType, CycleFreeAliasedTypeResolutionResult } from '../AliasedType.js';
6
+ import type { AliasTypeEntity } from '../AliasTypeEntity.js';
7
+ import { AliasTypeEntityDefinition } from '../AliasTypeEntity.js';
8
+ import { EntityHidingLevel } from '../EntityHiding.js';
9
+ import { EntityLocalizationContext } from '../EntityLocalizationContext.js';
10
+ import { EntityContext, EntityKind } from '../index.js';
11
+ import { PackageEntity } from '../PackageEntity.js';
12
+ import { SubstitutionApplicationMode } from '../SubstitutionApplicationMode.js';
13
+ import { TypeEntityKind } from '../TypeEntity.js';
14
+ import { TypeEntityMembers } from '../TypeEntityMembers.js';
15
+ import { TypeParameterEntity } from '../TypeParameterEntity.js';
16
+ export declare class TranslatedAliasTypeEntity implements AliasTypeEntity {
17
+ readonly kind = EntityKind.Type;
18
+ readonly typeEntityKind = TypeEntityKind.Alias;
19
+ readonly subkind = "package";
20
+ private readonly _originalEntity;
21
+ private readonly _translation;
22
+ private readonly _name;
23
+ private readonly _localizationContext;
24
+ private readonly _containingPackage;
25
+ private readonly _typeParameters;
26
+ private readonly _aliasedType;
27
+ private readonly _members;
28
+ private readonly _context;
29
+ constructor(originalEntity: AliasTypeEntity, translation: Translation, name: Name, localizationContext: EntityLocalizationContext);
30
+ getName(): Name;
31
+ getContainingPackage(): PackageEntity;
32
+ getLocalization(): Localization;
33
+ getOriginalEntity(): AliasTypeEntity;
34
+ getTypeParameters(): readonly TypeParameterEntity[];
35
+ getAliasedType(): AliasedType;
36
+ getMembers(): TypeEntityMembers;
37
+ getDefinition(): AliasTypeEntityDefinition;
38
+ getArity(): number;
39
+ isHidden(): EntityHidingLevel | undefined;
40
+ getTags(): readonly Tag[];
41
+ getSubstitutionApplicationMode(): SubstitutionApplicationMode;
42
+ getContext(): EntityContext;
43
+ }
44
+ export declare class LocalizedAliasedType extends AliasedType {
45
+ private readonly _original;
46
+ private readonly _localizationContext;
47
+ private readonly _declared;
48
+ private readonly _cycleFree;
49
+ get declared(): types.Type;
50
+ get cycleFree(): types.Type;
51
+ get causesCycle(): boolean;
52
+ constructor(original: AliasedType, localizationContext: EntityLocalizationContext);
53
+ resolveAliasedType(circularityTrackingStack: boolean[]): CycleFreeAliasedTypeResolutionResult;
54
+ }