@artel/artc 0.6.25215 → 0.6.25217

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 (41) hide show
  1. package/build/Cli.js +3 -3
  2. package/build/api/Api.js +23 -9
  3. package/build/api/ApiNodeJS.js +3 -3
  4. package/build/api/ApiServices.js +381 -339
  5. package/build/{chunk-TT3Q66WU.js → chunk-CMPXXHBQ.js} +3 -3
  6. package/build/{chunk-GEFYL4SZ.js → chunk-HN3XZZQX.js} +3 -3
  7. package/build/{chunk-DZ66PBHU.js → chunk-TXAEJ2GI.js} +3397 -2484
  8. package/build/types/analysis/Analyzer.d.ts +163 -159
  9. package/build/types/analysis/CallArgumentToParameterMatchResult.d.ts +3 -4
  10. package/build/types/analysis/DiagnosticCollector.d.ts +1 -0
  11. package/build/types/analysis/IndexedAccessExpressionMeaning.d.ts +12 -7
  12. package/build/types/analysis/SourceFileMembers.d.ts +11 -1
  13. package/build/types/diagnostic/DiagnosticCode.d.ts +107 -103
  14. package/build/types/emitter/EmitterContext.d.ts +9 -0
  15. package/build/types/emitter/Entities.d.ts +8 -2
  16. package/build/types/emitter/IrToJs.d.ts +0 -1
  17. package/build/types/emitter/Transformer.d.ts +2 -3
  18. package/build/types/emitter/ir/LoweringOptions.d.ts +3 -1
  19. package/build/types/emitter/ir/LoweringState.d.ts +24 -0
  20. package/build/types/emitter/ir/Nodes.d.ts +74 -85
  21. package/build/types/emitter/ir/types.d.ts +3 -2
  22. package/build/types/entities/AliasTypeEntity.d.ts +1 -1
  23. package/build/types/entities/DereferenceOperatorEntity.d.ts +7 -0
  24. package/build/types/entities/IndexerEntity.d.ts +7 -0
  25. package/build/types/entities/MethodTypeEntity.d.ts +9 -1
  26. package/build/types/entities/StructuredTypeEntity.d.ts +11 -3
  27. package/build/types/entities/TypeParameterEntity.d.ts +1 -1
  28. package/build/types/entities/VariantTypeEntity.d.ts +9 -1
  29. package/build/types/parser/Scanner.d.ts +0 -6
  30. package/build/types/parser/UnescapeText.d.ts +1 -1
  31. package/build/types/services/DisplayService.d.ts +201 -162
  32. package/build/types/services/signature-help/SignatureWithValueParameters.d.ts +1 -3
  33. package/build/types/services/workspace/CompilationController.d.ts +23 -1
  34. package/build/types/services/workspace/Workspace.d.ts +1 -0
  35. package/build/types/tree/NodeKind.d.ts +85 -86
  36. package/build/types/tree/green/Nodes.d.ts +4 -13
  37. package/build/types/tree/red/Nodes.d.ts +5 -19
  38. package/build/types/ts-interop/Entities.d.ts +28 -8
  39. package/build/types/types/MethodType.d.ts +2 -2
  40. package/build/types/types/VariantType.d.ts +2 -2
  41. package/package.json +1 -1
@@ -6,8 +6,7 @@ import { DiagnosticFlags, DiagnosticKind } from '../diagnostic/DiagnosticData.js
6
6
  import { BinaryOperatorKind } from '../entities/OperatorKind.js';
7
7
  import * as packageMembers from '../entities/PackageMembers.js';
8
8
  import { NamedTypeMemberEntity } from '../entities/TypeEntityMembers.js';
9
- import * as entities from '../entities/index.js';
10
- import { AliasTypeEntity, AnonymousMethodTypeEntity, AnonymousStructuredTypeEntity, AnonymousVariantTypeEntity, ConstructorEntity, DereferenceOperatorEntity, DestructorEntity, GetterEntity, IEntityHidingMatcher, LocalVariableEntity, MethodEntity, MethodTypeEntity, NamedTypeEntity, NestedMethodEntity, OperatorEntity, PackageAliasEntity, PackageEntity, PackageMethodEntity, PackageMethodTypeEntity, PackageStructuredTypeEntity, PackageVariableEntity, PackageVariantTypeEntity, SetterEntity, SourceIndexerEntity, StructuredTypeEntity, TypeEntity, TypeExtensionEntity, TypeMemberEntityContainer, TypeMethodEntity, TypeParameterEntity, TypeVariableEntity, VariableEntity, VariantEntity, VariantTypeEntity } from '../entities/index.js';
9
+ import * as e from '../entities/index.js';
11
10
  import { ReservedIdentifierKind } from '../parser/ReservedIdentifierDictionary.js';
12
11
  import * as project from '../project/index.js';
13
12
  import { PackageName, PlatformKind, SourcePackage } from '../project/index.js';
@@ -50,7 +49,7 @@ export declare class Analyzer {
50
49
  /**
51
50
  * Пакет с именем 'Артель', содержащий стандартные типы.
52
51
  */
53
- readonly systemPackage: PackageEntity;
52
+ readonly systemPackage: e.PackageEntity;
54
53
  readonly wellKnownDeclarations: WellKnownDeclarations;
55
54
  readonly standardTypes: types.StandardTypes;
56
55
  readonly typeFactory: TypeFactory;
@@ -77,7 +76,7 @@ export declare class Analyzer {
77
76
  private readonly _propertyAccessExpressionResolutionResults;
78
77
  private readonly _sourceFileMembers;
79
78
  private readonly _callExpressionMeanings;
80
- private readonly _indexedAccessExpressionMeanings;
79
+ private readonly _indexedAccessExpressionResolutionResults;
81
80
  private readonly _dereferenceExpressionMeanings;
82
81
  private readonly _autotypeCallExpressionMeanings;
83
82
  private readonly _identifierExpressionResolutionResults;
@@ -109,7 +108,7 @@ export declare class Analyzer {
109
108
  isTypeAssignableTo(source: types.Type, target: types.Type): boolean;
110
109
  checkStatementBlockInvokesAsyncMethods(node: tree.StatementBlock): boolean;
111
110
  getSyntacticAccessKind(node: tree.Expression): SyntacticAccessKind;
112
- getTypeMemberEntityContainer(node: tree.TypeMemberDeclaration): TypeMemberEntityContainer;
111
+ getTypeMemberEntityContainer(node: tree.TypeMemberDeclaration): e.TypeMemberEntityContainer;
113
112
  getTargetTypeOfExpression(node: tree.Expression, hint?: TargetTypeHint): types.Type | undefined;
114
113
  getUnambiguousTargetMethodType(targetType: types.Type | undefined): types.MethodType | undefined;
115
114
  getUnambiguousTargetVariantType(targetType: types.Type | undefined): types.VariantType | undefined;
@@ -124,7 +123,7 @@ export declare class Analyzer {
124
123
  getSourceFileMembers(node: tree.SourceFile): sourceFileMembers.SourceFileMembers;
125
124
  getCallExpressionMeaning(node: tree.CallExpression): callExpressionMeaning.Meaning;
126
125
  getRespectiveParameter(node: tree.CallArgument): MatchResultValueParameter | undefined;
127
- getIndexedAccessExpressionMeaning(node: tree.IndexedAccessExpression): indexedAccessExpressionMeaning.Meaning;
126
+ resolveIndexedAccessExpression(node: tree.IndexedAccessExpression): indexedAccessExpressionMeaning.ResolutionResult;
128
127
  getDereferenceExpressionMeaning(node: tree.DereferenceExpression): dereferenceExpressionMeaning.Meaning;
129
128
  getAutotypeCallExpressionMeaning(node: tree.AutotypeCallExpression, targetTypeHint?: TargetTypeHint): autotypeCallExpressionMeaning.Meaning;
130
129
  resolveIdentifierExpression(node: tree.IdentifierExpression, targetTypeHint?: TargetTypeHint): identifierExpressionResolution.ResolutionResult;
@@ -140,7 +139,7 @@ export declare class Analyzer {
140
139
  createLocalizationContext(sourceFile: project.SourceFile): LocalizationContext;
141
140
  typeIsValidBaseObjectType(type: types.Type): boolean;
142
141
  typeIsValidBaseAspectType(type: types.Type): boolean;
143
- getImplicitBaseTypeForStructuredType(entity: StructuredTypeEntity): types.StructuredType | undefined;
142
+ getImplicitBaseTypeForStructuredType(entity: e.StructuredTypeEntity): types.StructuredType | undefined;
144
143
  getImplicitBaseTypeForVariantType(): types.StructuredType;
145
144
  getImplicitBaseTypeForMethodType(): types.StructuredType;
146
145
  resolveNamedTypeSpecifier(node: tree.NamedTypeSpecifier): NamedTypeSpecifierResolutionResult;
@@ -148,7 +147,7 @@ export declare class Analyzer {
148
147
  type: types.Type | undefined;
149
148
  } | undefined;
150
149
  checkExpressionDenotesPackageAlias(expression: tree.Expression): {
151
- packageAlias: PackageAliasEntity;
150
+ packageAlias: e.PackageAliasEntity;
152
151
  } | undefined;
153
152
  checkExpressionDenotesMethod(expression: tree.Expression): ExpressionDenotesMethodCheckResult | undefined;
154
153
  checkExpressionDenotesOperator(expression: tree.Expression): ExpressionDenotesOperatorCheckResult | undefined;
@@ -157,15 +156,15 @@ export declare class Analyzer {
157
156
  } | undefined;
158
157
  checkMethodBodyUsesYieldStatement(node: tree.StatementBlock): boolean;
159
158
  enumerateAspects(type: types.Type): Iterable<types.StructuredType>;
160
- checkTypeIsBasedOnAspect(type: types.Type, aspectEntity: StructuredTypeEntity): boolean;
159
+ checkTypeIsBasedOnAspect(type: types.Type, aspectEntity: e.StructuredTypeEntity): boolean;
161
160
  resolvePrefixUnaryExpressionUserDefinableOperator(node: tree.PrefixUnaryExpression): WithDiagnostics<FoundAnonymousDeclaration<types.Operator>>;
162
161
  resolveBinaryExpressionUserDefinableOperator(node: tree.BinaryExpression, operatorKind: BinaryOperatorKind): WithDiagnostics<FoundAnonymousDeclaration<types.Operator>>;
163
162
  resolveCompoundAssignmentStatementOperator(node: tree.AssignmentStatement, operatorKind: BinaryOperatorKind): WithDiagnostics<FoundAnonymousDeclaration<types.Operator>>;
164
163
  classifyBinaryExpressionOperator(operator: tree.BinaryExpressionOperator): BinaryExpressionOperatorClassificationResult;
165
164
  getBinaryOperatorKindIfCompoundAssignmentOperator(operator: tree.AssignmentStatementOperator): BinaryOperatorKind | undefined;
166
- getPackageEntities(): readonly PackageEntity[];
167
- getPackageEntity(name: PackageName): PackageEntity | undefined;
168
- createMethodTypeInvokeMethod(entity: MethodTypeEntity): TypeMethodEntity;
165
+ getPackageEntities(): readonly e.PackageEntity[];
166
+ getPackageEntity(name: PackageName): e.PackageEntity | undefined;
167
+ createMethodTypeInvokeMethod(entity: e.MethodTypeEntity): e.TypeMethodEntity;
169
168
  /**
170
169
  * Преобразует тип таким образом, чтобы он не мог содержать значение `пусто`.
171
170
  * После преобразования метод `canTypeBeNone` вернёт `true` для полученного типа.
@@ -203,34 +202,34 @@ export declare class Analyzer {
203
202
  * - Т: Объект? -> нет, поскольку в качестве конкретного типа, заменяющего параметр, может быть использован тип, исключающий `пусто`.
204
203
  */
205
204
  isNoneAssignableToType(type: types.Type): boolean;
206
- isMethodValueParameterVariadic(entity: VariableEntity): boolean;
205
+ isMethodValueParameterVariadic(entity: e.VariableEntity): boolean;
207
206
  getDefaultTypeParameterConstraint(): types.Type;
208
- getOriginalSignatureTypeOfMethodEntity(entity: MethodEntity): types.MethodType;
209
- getMethodBlockLiteralValueParameters(node: tree.MethodBlockLiteral): readonly VariableEntity[];
210
- getExtendedType(node: tree.TypeExtensionDeclaration): WithDiagnostics<NamedTypeEntity>;
207
+ getOriginalSignatureTypeOfMethodEntity(entity: e.MethodEntity): types.MethodType;
208
+ getMethodBlockLiteralValueParameters(node: tree.MethodBlockLiteral): readonly e.VariableEntity[];
209
+ getExtendedType(node: tree.TypeExtensionDeclaration): WithDiagnostics<e.NamedTypeEntity>;
211
210
  getAnalyzedTranslationPackageIfTargetResolved(package_: project.TranslationPackage): AnalyzedTranslationPackage | undefined;
212
- getAnalyzedTranslationPackageForPackage(entity: PackageEntity, locale: PackageLocale): AnalyzedTranslationPackage | undefined;
211
+ getAnalyzedTranslationPackageForPackage(entity: e.PackageEntity, locale: PackageLocale): AnalyzedTranslationPackage | undefined;
213
212
  enumerateAnalyzedTranslationPackages(): Iterable<AnalyzedTranslationPackage>;
214
213
  getCommonObjectAndAspectTypesOfUnion(_unionType: types.UnionType): readonly types.StructuredType[];
215
- getLinkedMultiPlatformPackagesByPlatform(entity: PackageEntity): ReadonlyMap<PlatformKind, LinkedMultiPlatformPackage> | undefined;
216
- getLinkedMultiPlatformPackage(entity: PackageEntity, platform: PlatformKind): LinkedMultiPlatformPackage | undefined;
214
+ getLinkedMultiPlatformPackagesByPlatform(entity: e.PackageEntity): ReadonlyMap<PlatformKind, LinkedMultiPlatformPackage> | undefined;
215
+ getLinkedMultiPlatformPackage(entity: e.PackageEntity, platform: PlatformKind): LinkedMultiPlatformPackage | undefined;
217
216
  createPackageMembers(pkg: SourcePackage): packageMembers.OriginalPackageMembers;
218
- instantiateType(entity: entities.TypeEntity, typeArguments?: readonly types.Type[]): types.Type;
219
- instantiateTypeByIdentitySubstitution(entity: entities.TypeEntity): types.Type;
220
- createPackageMemberHiding(node: tree.PackageMemberDeclaration): entities.EntityHidingLevel | undefined;
221
- createTypeMemberHiding(node: tree.TypeMemberDeclaration): entities.EntityHidingLevel | undefined;
217
+ instantiateType(entity: e.TypeEntity, typeArguments?: readonly types.Type[]): types.Type;
218
+ instantiateTypeByIdentitySubstitution(entity: e.TypeEntity): types.Type;
219
+ createPackageMemberHiding(node: tree.PackageMemberDeclaration): e.EntityHidingLevel | undefined;
220
+ createTypeMemberHiding(node: tree.TypeMemberDeclaration): e.EntityHidingLevel | undefined;
222
221
  getDeclarationsUsageCount(sourceFile: tree.SourceFile, cancellationToken: CancellationToken | undefined): Promise<DeclarationsUsageCountResult>;
223
222
  isExpressionImplicitlyReturnedFromSubprogram(node: tree.ExpressionStatement): boolean;
224
- createBackingPackageVariables(declaredVariables: readonly PackageVariableEntity[], pkg: PackageEntity): PackageVariableEntity[];
225
- createBackingTypeVariables(declaredVariables: readonly TypeVariableEntity[], type: TypeEntity): TypeVariableEntity[];
223
+ createBackingPackageVariables(declaredMembers: readonly (e.NamedPackageMemberEntity | e.PackageAliasEntity)[], pkg: e.PackageEntity): e.PackageVariableEntity[];
224
+ createBackingTypeVariables(declaredMembers: readonly NamedTypeMemberEntity[], type: e.TypeEntity): e.TypeVariableEntity[];
226
225
  createNodeDiagnostic(code: DiagnosticCode, node: tree.Node, formatArguments?: readonly string[], kind?: DiagnosticKind, flags?: DiagnosticFlags): Diagnostic;
227
226
  createSourceFileRangeDiagnostic(code: DiagnosticCode, range: Range, nodeOrSourceFile: tree.Node | project.SourceFile, formatArguments?: readonly string[], kind?: DiagnosticKind, flags?: DiagnosticFlags): Diagnostic;
228
227
  createDiagnostic(code: DiagnosticCode, location: DiagnosticLocation | undefined, formatArguments?: readonly string[], kind?: DiagnosticKind, flags?: DiagnosticFlags): Diagnostic;
229
228
  createNodeDiagnosticLocation(node: tree.Node): DiagnosticLocation;
230
229
  getDeclaredTypeMemberEntities(node: tree.TypeMemberDeclarationBlock): DeclaredTypeMemberEntities;
231
- getRedefinableMethodOfOriginalTypeForRedefinableMethodOfAliasType(entity: TypeMethodEntity): TypeMethodEntity | undefined;
230
+ getRedefinableMethodOfOriginalTypeForRedefinableMethodOfAliasType(entity: e.TypeMethodEntity): e.TypeMethodEntity | undefined;
232
231
  checkBodyOfRedefinableAliasTypeMethod(node: tree.TypeMethodDeclaration, diagnostics?: DiagnosticAcceptor): {
233
- redefinableMethodOfOriginalType: TypeMethodEntity;
232
+ redefinableMethodOfOriginalType: e.TypeMethodEntity;
234
233
  } | undefined;
235
234
  private createTsInterop;
236
235
  }
@@ -344,48 +343,48 @@ declare class Entity {
344
343
  private readonly _typeExtensionEntities;
345
344
  private readonly _packageAliasEntities;
346
345
  constructor(_analyzer: Analyzer);
347
- ofPackage(pkg: SourcePackage): PackageEntity;
348
- ofPackageVariableDeclaration(node: tree.PackageVariableDeclaration): entities.PackageVariableEntity;
349
- ofComputedPackageVariableDeclaration(node: PackageVariableAccessorDeclaration): entities.PackageVariableEntity;
350
- ofTypeVariableDeclaration(node: tree.TypeVariableDeclaration): entities.TypeVariableEntity;
351
- ofComputedTypeVariableDeclaration(node: TypeVariableAccessorDeclaration): entities.TypeVariableEntity;
352
- ofLocalVariableDeclaration(node: tree.LocalVariableDeclaration): entities.LocalVariableEntity;
353
- ofEnumerationVariableDeclaration(node: tree.EnumerationVariableDeclaration): entities.LocalVariableEntity;
354
- ofErrorVariableDeclaration(node: tree.ErrorVariableDeclaration): entities.LocalVariableEntity;
355
- ofParameterDeclaration(node: tree.ParameterDeclaration): entities.ParameterVariableEntity;
356
- ofSetterParameterDeclaration(node: tree.SetterParameterDeclaration): entities.ParameterVariableEntity;
357
- ofTypeParameterDeclaration(node: tree.TypeParameterDeclaration): TypeParameterEntity;
358
- ofTypeIndexerDeclaration(node: TypeIndexedAccessorDeclaration): entities.SourceIndexerEntity;
359
- ofTypeDereferenceOperatorDeclaration(node: TypeDereferencedVariableAccessorDeclaration): entities.DereferenceOperatorEntity;
360
- ofPackageStructuredTypeDeclaration(node: tree.PackageStructuredTypeDeclaration): PackageStructuredTypeEntity;
361
- ofAnonymousStructuredTypeDeclaration(node: tree.AnonymousStructuredTypeDeclaration): AnonymousStructuredTypeEntity;
362
- ofStructuredTypeDeclaration(node: StructuredTypeDeclaration): StructuredTypeEntity;
363
- ofPackageMethodTypeDeclaration(node: tree.PackageMethodTypeDeclaration): PackageMethodTypeEntity;
364
- ofAnonymousMethodTypeDeclaration(node: tree.AnonymousMethodTypeDeclaration): AnonymousMethodTypeEntity;
365
- ofMethodTypeDeclaration(node: MethodTypeDeclaration): MethodTypeEntity;
366
- ofPackageVariantTypeDeclaration(node: tree.PackageVariantTypeDeclaration): PackageVariantTypeEntity;
367
- ofAnonymousVariantTypeDeclaration(node: tree.AnonymousVariantTypeDeclaration): AnonymousVariantTypeEntity;
368
- ofVariantTypeDeclaration(node: VariantTypeDeclaration): VariantTypeEntity;
369
- ofPackageAliasTypeDeclaration(node: tree.PackageAliasTypeDeclaration): AliasTypeEntity;
370
- ofPackageMethodDeclaration(node: tree.PackageMethodDeclaration): PackageMethodEntity;
371
- ofTypeMethodDeclaration(node: tree.TypeMethodDeclaration): TypeMethodEntity;
372
- ofNestedMethodDeclaration(node: tree.NestedMethodDeclaration): NestedMethodEntity;
373
- ofOperatorDeclaration(node: tree.OperatorDeclaration): OperatorEntity;
374
- ofPackageVariableGetterDeclaration(node: tree.PackageVariableGetterDeclaration): GetterEntity;
375
- ofTypeVariableGetterDeclaration(node: tree.TypeVariableGetterDeclaration): GetterEntity;
376
- ofTypeIndexedGetterDeclaration(node: tree.TypeIndexedGetterDeclaration): GetterEntity;
377
- ofTypeDereferencedVariableGetterDeclaration(node: tree.TypeDereferencedVariableGetterDeclaration): GetterEntity;
378
- ofGetterDeclaration(node: GetterDeclaration): GetterEntity;
379
- ofPackageVariableSetterDeclaration(node: tree.PackageVariableSetterDeclaration): SetterEntity;
380
- ofTypeVariableSetterDeclaration(node: tree.TypeVariableSetterDeclaration): SetterEntity;
381
- ofTypeIndexedSetterDeclaration(node: tree.TypeIndexedSetterDeclaration): SetterEntity;
382
- ofTypeDereferencedVariableSetterDeclaration(node: tree.TypeDereferencedVariableSetterDeclaration): SetterEntity;
383
- ofSetterDeclaration(node: SetterDeclaration): SetterEntity;
384
- ofTypeConstructorDeclaration(node: tree.TypeConstructorDeclaration): ConstructorEntity;
385
- ofTypeDestructorDeclaration(node: tree.TypeDestructorDeclaration): DestructorEntity;
386
- ofVariantDeclaration(node: tree.VariantDeclaration): VariantEntity;
387
- ofTypeExtensionDeclaration(node: tree.TypeExtensionDeclaration): TypeExtensionEntity;
388
- ofPackageImport(node: tree.PackageImport): PackageAliasEntity;
346
+ ofPackage(pkg: SourcePackage): e.PackageEntity;
347
+ ofPackageVariableDeclaration(node: tree.PackageVariableDeclaration): e.PackageVariableEntity;
348
+ ofComputedPackageVariableDeclaration(node: PackageVariableAccessorDeclaration): e.PackageVariableEntity;
349
+ ofTypeVariableDeclaration(node: tree.TypeVariableDeclaration): e.TypeVariableEntity;
350
+ ofComputedTypeVariableDeclaration(node: TypeVariableAccessorDeclaration): e.TypeVariableEntity;
351
+ ofLocalVariableDeclaration(node: tree.LocalVariableDeclaration): e.LocalVariableEntity;
352
+ ofEnumerationVariableDeclaration(node: tree.EnumerationVariableDeclaration): e.LocalVariableEntity;
353
+ ofErrorVariableDeclaration(node: tree.ErrorVariableDeclaration): e.LocalVariableEntity;
354
+ ofParameterDeclaration(node: tree.ParameterDeclaration): e.ParameterVariableEntity;
355
+ ofSetterParameterDeclaration(node: tree.SetterParameterDeclaration): e.ParameterVariableEntity;
356
+ ofTypeParameterDeclaration(node: tree.TypeParameterDeclaration): e.TypeParameterEntity;
357
+ ofTypeIndexerDeclaration(node: TypeIndexedAccessorDeclaration): e.SourceIndexerEntity;
358
+ ofTypeDereferenceOperatorDeclaration(node: TypeDereferencedVariableAccessorDeclaration): e.DereferenceOperatorEntity;
359
+ ofPackageStructuredTypeDeclaration(node: tree.PackageStructuredTypeDeclaration): e.PackageStructuredTypeEntity;
360
+ ofAnonymousStructuredTypeDeclaration(node: tree.AnonymousStructuredTypeDeclaration): e.AnonymousStructuredTypeEntity;
361
+ ofStructuredTypeDeclaration(node: StructuredTypeDeclaration): e.StructuredTypeEntity;
362
+ ofPackageMethodTypeDeclaration(node: tree.PackageMethodTypeDeclaration): e.PackageMethodTypeEntity;
363
+ ofAnonymousMethodTypeDeclaration(node: tree.AnonymousMethodTypeDeclaration): e.AnonymousMethodTypeEntity;
364
+ ofMethodTypeDeclaration(node: MethodTypeDeclaration): e.MethodTypeEntity;
365
+ ofPackageVariantTypeDeclaration(node: tree.PackageVariantTypeDeclaration): e.PackageVariantTypeEntity;
366
+ ofAnonymousVariantTypeDeclaration(node: tree.AnonymousVariantTypeDeclaration): e.AnonymousVariantTypeEntity;
367
+ ofVariantTypeDeclaration(node: VariantTypeDeclaration): e.VariantTypeEntity;
368
+ ofPackageAliasTypeDeclaration(node: tree.PackageAliasTypeDeclaration): e.AliasTypeEntity;
369
+ ofPackageMethodDeclaration(node: tree.PackageMethodDeclaration): e.PackageMethodEntity;
370
+ ofTypeMethodDeclaration(node: tree.TypeMethodDeclaration): e.TypeMethodEntity;
371
+ ofNestedMethodDeclaration(node: tree.NestedMethodDeclaration): e.NestedMethodEntity;
372
+ ofOperatorDeclaration(node: tree.OperatorDeclaration): e.OperatorEntity;
373
+ ofPackageVariableGetterDeclaration(node: tree.PackageVariableGetterDeclaration): e.GetterEntity;
374
+ ofTypeVariableGetterDeclaration(node: tree.TypeVariableGetterDeclaration): e.GetterEntity;
375
+ ofTypeIndexedGetterDeclaration(node: tree.TypeIndexedGetterDeclaration): e.GetterEntity;
376
+ ofTypeDereferencedVariableGetterDeclaration(node: tree.TypeDereferencedVariableGetterDeclaration): e.GetterEntity;
377
+ ofGetterDeclaration(node: GetterDeclaration): e.GetterEntity;
378
+ ofPackageVariableSetterDeclaration(node: tree.PackageVariableSetterDeclaration): e.SetterEntity;
379
+ ofTypeVariableSetterDeclaration(node: tree.TypeVariableSetterDeclaration): e.SetterEntity;
380
+ ofTypeIndexedSetterDeclaration(node: tree.TypeIndexedSetterDeclaration): e.SetterEntity;
381
+ ofTypeDereferencedVariableSetterDeclaration(node: tree.TypeDereferencedVariableSetterDeclaration): e.SetterEntity;
382
+ ofSetterDeclaration(node: SetterDeclaration): e.SetterEntity;
383
+ ofTypeConstructorDeclaration(node: tree.TypeConstructorDeclaration): e.ConstructorEntity;
384
+ ofTypeDestructorDeclaration(node: tree.TypeDestructorDeclaration): e.DestructorEntity;
385
+ ofVariantDeclaration(node: tree.VariantDeclaration): e.VariantEntity;
386
+ ofTypeExtensionDeclaration(node: tree.TypeExtensionDeclaration): e.TypeExtensionEntity;
387
+ ofPackageImport(node: tree.PackageImport): e.PackageAliasEntity;
389
388
  private getContainingPackageLoadedFromDts;
390
389
  private createComputedTypeVariableEntities;
391
390
  private createTypeDereferenceOperatorEntities;
@@ -396,16 +395,16 @@ declare class ResultLocalVariableEntity {
396
395
  private readonly _analyzer;
397
396
  private readonly _entities;
398
397
  constructor(_analyzer: Analyzer);
399
- ofPackageMethodDeclaration(node: tree.PackageMethodDeclaration): LocalVariableEntity;
400
- ofTypeMethodDeclaration(node: tree.TypeMethodDeclaration): LocalVariableEntity;
401
- ofNestedMethodDeclaration(node: tree.NestedMethodDeclaration): LocalVariableEntity;
402
- ofMethodLiteral(node: tree.MethodLiteral): LocalVariableEntity;
403
- ofMethodBlockLiteral(node: tree.MethodBlockLiteral): LocalVariableEntity;
404
- ofOperatorDeclaration(node: tree.OperatorDeclaration): LocalVariableEntity;
405
- ofPackageVariableGetterDeclaration(node: tree.PackageVariableGetterDeclaration): LocalVariableEntity;
406
- ofTypeVariableGetterDeclaration(node: tree.TypeVariableGetterDeclaration): LocalVariableEntity;
407
- ofTypeIndexedGetterDeclaration(node: tree.TypeIndexedGetterDeclaration): LocalVariableEntity;
408
- ofTypeDereferencedVariableGetterDeclaration(node: tree.TypeDereferencedVariableGetterDeclaration): LocalVariableEntity;
398
+ ofPackageMethodDeclaration(node: tree.PackageMethodDeclaration): e.LocalVariableEntity;
399
+ ofTypeMethodDeclaration(node: tree.TypeMethodDeclaration): e.LocalVariableEntity;
400
+ ofNestedMethodDeclaration(node: tree.NestedMethodDeclaration): e.LocalVariableEntity;
401
+ ofMethodLiteral(node: tree.MethodLiteral): e.LocalVariableEntity;
402
+ ofMethodBlockLiteral(node: tree.MethodBlockLiteral): e.LocalVariableEntity;
403
+ ofOperatorDeclaration(node: tree.OperatorDeclaration): e.LocalVariableEntity;
404
+ ofPackageVariableGetterDeclaration(node: tree.PackageVariableGetterDeclaration): e.LocalVariableEntity;
405
+ ofTypeVariableGetterDeclaration(node: tree.TypeVariableGetterDeclaration): e.LocalVariableEntity;
406
+ ofTypeIndexedGetterDeclaration(node: tree.TypeIndexedGetterDeclaration): e.LocalVariableEntity;
407
+ ofTypeDereferencedVariableGetterDeclaration(node: tree.TypeDereferencedVariableGetterDeclaration): e.LocalVariableEntity;
409
408
  private createResultLocalVariableEntity;
410
409
  }
411
410
  declare class ParamLocalVariableEntity {
@@ -413,18 +412,18 @@ declare class ParamLocalVariableEntity {
413
412
  private readonly _optionalEntities;
414
413
  private readonly _entities;
415
414
  constructor(_analyzer: Analyzer);
416
- ofTypeIndexedGetterDeclaration(node: tree.TypeIndexedGetterDeclaration): VariableEntity;
417
- ofPackageVariableSetterDeclaration(node: tree.PackageVariableSetterDeclaration): VariableEntity;
418
- ofTypeVariableSetterDeclaration(node: tree.TypeVariableSetterDeclaration): VariableEntity;
419
- ofTypeIndexedSetterDeclaration(node: tree.TypeIndexedSetterDeclaration): VariableEntity;
420
- ofTypeDereferencedVariableSetterDeclaration(node: tree.TypeDereferencedVariableSetterDeclaration): VariableEntity;
421
- ofPackageMethodDeclaration(node: tree.PackageMethodDeclaration): VariableEntity | undefined;
422
- ofTypeMethodDeclaration(node: tree.TypeMethodDeclaration): VariableEntity | undefined;
423
- ofNestedMethodDeclaration(node: tree.NestedMethodDeclaration): VariableEntity | undefined;
424
- ofMethodLiteral(node: tree.MethodLiteral): VariableEntity | undefined;
425
- ofMethodBlockLiteral(node: tree.MethodBlockLiteral): VariableEntity | undefined;
426
- ofOperatorDeclaration(node: tree.OperatorDeclaration): VariableEntity | undefined;
427
- ofTypeConstructorDeclaration(node: tree.TypeConstructorDeclaration): VariableEntity | undefined;
415
+ ofTypeIndexedGetterDeclaration(node: tree.TypeIndexedGetterDeclaration): e.VariableEntity;
416
+ ofPackageVariableSetterDeclaration(node: tree.PackageVariableSetterDeclaration): e.VariableEntity;
417
+ ofTypeVariableSetterDeclaration(node: tree.TypeVariableSetterDeclaration): e.VariableEntity;
418
+ ofTypeIndexedSetterDeclaration(node: tree.TypeIndexedSetterDeclaration): e.VariableEntity;
419
+ ofTypeDereferencedVariableSetterDeclaration(node: tree.TypeDereferencedVariableSetterDeclaration): e.VariableEntity;
420
+ ofPackageMethodDeclaration(node: tree.PackageMethodDeclaration): e.VariableEntity | undefined;
421
+ ofTypeMethodDeclaration(node: tree.TypeMethodDeclaration): e.VariableEntity | undefined;
422
+ ofNestedMethodDeclaration(node: tree.NestedMethodDeclaration): e.VariableEntity | undefined;
423
+ ofMethodLiteral(node: tree.MethodLiteral): e.VariableEntity | undefined;
424
+ ofMethodBlockLiteral(node: tree.MethodBlockLiteral): e.VariableEntity | undefined;
425
+ ofOperatorDeclaration(node: tree.OperatorDeclaration): e.VariableEntity | undefined;
426
+ ofTypeConstructorDeclaration(node: tree.TypeConstructorDeclaration): e.VariableEntity | undefined;
428
427
  private createParamLocalVariableEntity;
429
428
  private createAccessorParamLocalVariableEntity;
430
429
  }
@@ -432,22 +431,22 @@ declare class ValueLocalVariableEntity {
432
431
  private readonly _analyzer;
433
432
  private readonly _entities;
434
433
  constructor(_analyzer: Analyzer);
435
- ofPackageVariableSetterDeclaration(node: tree.PackageVariableSetterDeclaration): VariableEntity | undefined;
436
- ofTypeVariableSetterDeclaration(node: tree.TypeVariableSetterDeclaration): VariableEntity | undefined;
437
- ofTypeIndexedSetterDeclaration(node: tree.TypeIndexedSetterDeclaration): VariableEntity | undefined;
438
- ofTypeDereferencedVariableSetterDeclaration(node: tree.TypeDereferencedVariableSetterDeclaration): VariableEntity | undefined;
434
+ ofPackageVariableSetterDeclaration(node: tree.PackageVariableSetterDeclaration): e.VariableEntity | undefined;
435
+ ofTypeVariableSetterDeclaration(node: tree.TypeVariableSetterDeclaration): e.VariableEntity | undefined;
436
+ ofTypeIndexedSetterDeclaration(node: tree.TypeIndexedSetterDeclaration): e.VariableEntity | undefined;
437
+ ofTypeDereferencedVariableSetterDeclaration(node: tree.TypeDereferencedVariableSetterDeclaration): e.VariableEntity | undefined;
439
438
  }
440
439
  declare class DestructuredParameterLocalVariableEntities {
441
440
  private readonly _analyzer;
442
441
  private readonly _entities;
443
442
  constructor(_analyzer: Analyzer);
444
- ofMethodBlockLiteral(node: tree.MethodBlockLiteral): readonly VariableEntity[];
445
- ofPackageMethodDeclaration(node: tree.PackageMethodDeclaration): readonly VariableEntity[];
446
- ofTypeMethodDeclaration(node: tree.TypeMethodDeclaration): readonly VariableEntity[];
447
- ofOperatorDeclaration(node: tree.OperatorDeclaration): readonly VariableEntity[];
448
- ofMethodLiteral(node: tree.MethodLiteral): readonly VariableEntity[];
449
- ofNestedMethodDeclaration(node: tree.NestedMethodDeclaration): readonly VariableEntity[];
450
- ofTypeConstructorDeclaration(node: tree.TypeConstructorDeclaration): readonly VariableEntity[];
443
+ ofMethodBlockLiteral(node: tree.MethodBlockLiteral): readonly e.VariableEntity[];
444
+ ofPackageMethodDeclaration(node: tree.PackageMethodDeclaration): readonly e.VariableEntity[];
445
+ ofTypeMethodDeclaration(node: tree.TypeMethodDeclaration): readonly e.VariableEntity[];
446
+ ofOperatorDeclaration(node: tree.OperatorDeclaration): readonly e.VariableEntity[];
447
+ ofMethodLiteral(node: tree.MethodLiteral): readonly e.VariableEntity[];
448
+ ofNestedMethodDeclaration(node: tree.NestedMethodDeclaration): readonly e.VariableEntity[];
449
+ ofTypeConstructorDeclaration(node: tree.TypeConstructorDeclaration): readonly e.VariableEntity[];
451
450
  private createVariableEntitiesBasedOnValueParameters;
452
451
  }
453
452
  declare class Scope {
@@ -510,7 +509,7 @@ declare class DefaultConstructors {
510
509
  private readonly _analyzer;
511
510
  private readonly _defaultConstructorEntities;
512
511
  constructor(_analyzer: Analyzer);
513
- ofStructuredType(type: StructuredTypeDeclaration): readonly ConstructorEntity[];
512
+ ofStructuredType(type: StructuredTypeDeclaration): readonly e.ConstructorEntity[];
514
513
  private createDefaultConstructors;
515
514
  private getPublicInstanceStoredVariables;
516
515
  }
@@ -518,16 +517,24 @@ declare class OverriddenMember {
518
517
  private readonly _analyzer;
519
518
  constructor(_analyzer: Analyzer);
520
519
  getOverriddenVariable(node: tree.TypeVariableDeclaration | TypeVariableAccessorDeclaration): types.Variable | undefined;
521
- getTheMostBaseOverriddenVariable(variable: entities.TypeVariableEntity): types.Variable | undefined;
522
520
  getOverriddenMethod(node: tree.TypeMethodDeclaration): types.Method | undefined;
523
- getTheMostBaseOverriddenMethod(method: TypeMethodEntity): types.Method | undefined;
524
521
  getOverriddenOperator(node: tree.OperatorDeclaration): types.Operator | undefined;
522
+ getOverriddenIndexer(node: TypeIndexedAccessorDeclaration): types.Indexer | undefined;
523
+ getOverriddenDereferenceOperator(node: TypeDereferencedVariableAccessorDeclaration): types.DereferenceOperator | undefined;
525
524
  private findOverriddenVariableInType;
526
525
  private findOverriddenMethodInType;
527
526
  private findOverriddenOperatorInType;
527
+ private findOverriddenIndexerInType;
528
+ private findOverriddenDereferenceOperatorInType;
528
529
  private checkVariableOverridesVariable;
529
530
  private checkMethodOverridesMethod;
530
531
  private checkOperatorOverridesOperator;
532
+ private checkIndexerOverridesIndexer;
533
+ private checkDereferenceOperatorOverridesDereferenceOperator;
534
+ private enumerateTypeMemberLookupsForOverriddenMember;
535
+ private enumerateTypesForOverriddenMemberLookup;
536
+ private entityCanOverride;
537
+ private entityCanBeOverridden;
531
538
  }
532
539
  declare class Tags {
533
540
  readonly _analyzer: Analyzer;
@@ -540,36 +547,36 @@ declare class Tags {
540
547
  declare class LinkedEntity {
541
548
  private readonly _analyzer;
542
549
  constructor(_analyzer: Analyzer);
543
- entityCanBeLinked(entity: entities.Entity): boolean;
544
- ofType(entity: TypeEntity, platform: PlatformKind): TypeEntity | undefined;
545
- ofTypeWithMembers(entity: entities.TypeEntityWithMembers, platform: PlatformKind): entities.TypeEntityWithMembers | undefined;
546
- ofParameterType(entity: TypeParameterEntity, platform: PlatformKind): TypeParameterEntity | undefined;
547
- ofPackageVariable(entity: PackageVariableEntity, platform: PlatformKind): PackageVariableEntity | undefined;
548
- ofPackageMethod(entity: PackageMethodEntity, platform: PlatformKind): PackageMethodEntity | undefined;
549
- ofTypeVariable(entity: entities.TypeVariableEntity, platform: PlatformKind): entities.TypeVariableEntity | undefined;
550
- ofTypeMethod(entity: entities.TypeMethodEntity, platform: PlatformKind): entities.TypeMethodEntity | undefined;
551
- ofOperator(entity: entities.OperatorEntity, platform: PlatformKind): entities.OperatorEntity | undefined;
552
- ofConstructor(entity: entities.ConstructorEntity, platform: PlatformKind): entities.ConstructorEntity | undefined;
553
- ofIndexer(entity: entities.IndexerEntity, platform: PlatformKind): entities.IndexerEntity | undefined;
554
- ofDereferenceOperator(entity: entities.DereferenceOperatorEntity, platform: PlatformKind): entities.DereferenceOperatorEntity | undefined;
555
- ofVariant(entity: VariantEntity, platform: PlatformKind): VariantEntity | undefined;
556
- ofGetter(entity: entities.GetterEntity, platform: PlatformKind): entities.GetterEntity | undefined;
557
- ofSetter(entity: entities.SetterEntity, platform: PlatformKind): entities.SetterEntity | undefined;
550
+ entityCanBeLinked(entity: e.Entity): boolean;
551
+ ofType(entity: e.TypeEntity, platform: PlatformKind): e.TypeEntity | undefined;
552
+ ofTypeWithMembers(entity: e.TypeEntityWithMembers, platform: PlatformKind): e.TypeEntityWithMembers | undefined;
553
+ ofParameterType(entity: e.TypeParameterEntity, platform: PlatformKind): e.TypeParameterEntity | undefined;
554
+ ofPackageVariable(entity: e.PackageVariableEntity, platform: PlatformKind): e.PackageVariableEntity | undefined;
555
+ ofPackageMethod(entity: e.PackageMethodEntity, platform: PlatformKind): e.PackageMethodEntity | undefined;
556
+ ofTypeVariable(entity: e.TypeVariableEntity, platform: PlatformKind): e.TypeVariableEntity | undefined;
557
+ ofTypeMethod(entity: e.TypeMethodEntity, platform: PlatformKind): e.TypeMethodEntity | undefined;
558
+ ofOperator(entity: e.OperatorEntity, platform: PlatformKind): e.OperatorEntity | undefined;
559
+ ofConstructor(entity: e.ConstructorEntity, platform: PlatformKind): e.ConstructorEntity | undefined;
560
+ ofIndexer(entity: e.IndexerEntity, platform: PlatformKind): e.IndexerEntity | undefined;
561
+ ofDereferenceOperator(entity: e.DereferenceOperatorEntity, platform: PlatformKind): e.DereferenceOperatorEntity | undefined;
562
+ ofVariant(entity: e.VariantEntity, platform: PlatformKind): e.VariantEntity | undefined;
563
+ ofGetter(entity: e.GetterEntity, platform: PlatformKind): e.GetterEntity | undefined;
564
+ ofSetter(entity: e.SetterEntity, platform: PlatformKind): e.SetterEntity | undefined;
558
565
  }
559
566
  export declare class LinkedMultiPlatformPackage {
560
567
  readonly analyzer: Analyzer;
561
- readonly pkg: PackageEntity;
562
- readonly implementationPackage: PackageEntity;
568
+ readonly pkg: e.PackageEntity;
569
+ readonly implementationPackage: e.PackageEntity;
563
570
  readonly targetPlatform: PlatformKind;
564
571
  private readonly _memberLookup;
565
572
  private readonly _linkedTypesWithMembers;
566
573
  private readonly _linkedParameterTypes;
567
574
  private get memberLookup();
568
- constructor(analyzer: Analyzer, pkg: PackageEntity, implementationPackage: PackageEntity, targetPlatform: PlatformKind);
569
- getLinkedVariable(entity: PackageVariableEntity): PackageVariableEntity | undefined;
570
- getLinkedMethod(entity: PackageMethodEntity): PackageMethodEntity | undefined;
571
- getLinkedTypeWithMembers(entity: entities.TypeEntityWithMembers): LinkedTypeWithMembers | undefined;
572
- getLinkedParameterType(entity: TypeParameterEntity): TypeParameterEntity | undefined;
575
+ constructor(analyzer: Analyzer, pkg: e.PackageEntity, implementationPackage: e.PackageEntity, targetPlatform: PlatformKind);
576
+ getLinkedVariable(entity: e.PackageVariableEntity): e.PackageVariableEntity | undefined;
577
+ getLinkedMethod(entity: e.PackageMethodEntity): e.PackageMethodEntity | undefined;
578
+ getLinkedTypeWithMembers(entity: e.TypeEntityWithMembers): LinkedTypeWithMembers | undefined;
579
+ getLinkedParameterType(entity: e.TypeParameterEntity): e.TypeParameterEntity | undefined;
573
580
  /**
574
581
  * Используется для сравнения типов при связывании объявления из многоплатформенного пакета с объявлением из
575
582
  * реализационного пакета. В частности, при сравнении типов параметров для выбора правильной перегрузки
@@ -581,21 +588,21 @@ export declare class LinkedMultiPlatformPackage {
581
588
  }
582
589
  export declare class LinkedTypeWithMembers {
583
590
  readonly analyzer: Analyzer;
584
- readonly externalType: entities.TypeEntityWithMembers;
585
- readonly targetType: entities.TypeEntityWithMembers;
591
+ readonly externalType: e.TypeEntityWithMembers;
592
+ readonly targetType: e.TypeEntityWithMembers;
586
593
  readonly linkedPackage: LinkedMultiPlatformPackage;
587
594
  private readonly _memberLookup;
588
595
  private readonly _variantLookup;
589
596
  private get memberLookup();
590
597
  private get variantLookup();
591
- constructor(analyzer: Analyzer, externalType: entities.TypeEntityWithMembers, targetType: entities.TypeEntityWithMembers, linkedPackage: LinkedMultiPlatformPackage);
592
- getLinkedVariable(entity: entities.TypeVariableEntity): entities.TypeVariableEntity | undefined;
593
- getLinkedMethod(entity: entities.TypeMethodEntity): entities.TypeMethodEntity | undefined;
594
- getLinkedOperator(entity: entities.OperatorEntity): entities.OperatorEntity | undefined;
595
- getLinkedConstructor(entity: entities.ConstructorEntity): entities.ConstructorEntity | undefined;
596
- getLinkedIndexer(entity: entities.IndexerEntity): entities.IndexerEntity | undefined;
597
- getLinkedDereferenceOperator(entity: entities.DereferenceOperatorEntity): entities.DereferenceOperatorEntity | undefined;
598
- getLinkedVariant(entity: VariantEntity): VariantEntity | undefined;
598
+ constructor(analyzer: Analyzer, externalType: e.TypeEntityWithMembers, targetType: e.TypeEntityWithMembers, linkedPackage: LinkedMultiPlatformPackage);
599
+ getLinkedVariable(entity: e.TypeVariableEntity): e.TypeVariableEntity | undefined;
600
+ getLinkedMethod(entity: e.TypeMethodEntity): e.TypeMethodEntity | undefined;
601
+ getLinkedOperator(entity: e.OperatorEntity): e.OperatorEntity | undefined;
602
+ getLinkedConstructor(entity: e.ConstructorEntity): e.ConstructorEntity | undefined;
603
+ getLinkedIndexer(entity: e.IndexerEntity): e.IndexerEntity | undefined;
604
+ getLinkedDereferenceOperator(entity: e.DereferenceOperatorEntity): e.DereferenceOperatorEntity | undefined;
605
+ getLinkedVariant(entity: e.VariantEntity): e.VariantEntity | undefined;
599
606
  }
600
607
  declare class OwningPlainObjectModificationCheck {
601
608
  private _analyzer;
@@ -621,10 +628,10 @@ declare class PackageImports {
621
628
  private getAutomaticallyImportedPackages;
622
629
  }
623
630
  export declare class AnalyzedPackageImport {
624
- readonly entity: PackageEntity | undefined;
631
+ readonly entity: e.PackageEntity | undefined;
625
632
  readonly translationPackage: AnalyzedTranslationPackage | undefined;
626
- readonly isAliasedImport: PackageAliasEntity | undefined;
627
- constructor(entity: PackageEntity | undefined, translationPackage: AnalyzedTranslationPackage | undefined, isAliasedImport: PackageAliasEntity | undefined);
633
+ readonly isAliasedImport: e.PackageAliasEntity | undefined;
634
+ constructor(entity: e.PackageEntity | undefined, translationPackage: AnalyzedTranslationPackage | undefined, isAliasedImport: e.PackageAliasEntity | undefined);
628
635
  }
629
636
  export declare class AnalyzedPackageImports {
630
637
  readonly packageImportInfos: Map<tree.PackageImport, AnalyzedPackageImport>;
@@ -632,10 +639,10 @@ export declare class AnalyzedPackageImports {
632
639
  constructor(packageImportInfos: Map<tree.PackageImport, AnalyzedPackageImport>, diagnostics: readonly Diagnostic[]);
633
640
  }
634
641
  export declare class PackageImportInfo {
635
- readonly entity: PackageEntity;
642
+ readonly entity: e.PackageEntity;
636
643
  readonly translationPackage: AnalyzedTranslationPackage | undefined;
637
- readonly isAliasedImport: PackageAliasEntity | undefined;
638
- constructor(entity: PackageEntity, translationPackage: AnalyzedTranslationPackage | undefined, isAliasedImport: PackageAliasEntity | undefined);
644
+ readonly isAliasedImport: e.PackageAliasEntity | undefined;
645
+ constructor(entity: e.PackageEntity, translationPackage: AnalyzedTranslationPackage | undefined, isAliasedImport: e.PackageAliasEntity | undefined);
639
646
  }
640
647
  export declare class ExpressionDenotesMethodCheckResult {
641
648
  readonly candidates: readonly WithLocalization<AccessedMethod>[];
@@ -649,18 +656,15 @@ export declare class ExpressionDenotesOperatorCheckResult {
649
656
  get singleSuitableOperator(): WithLocalization<types.Operator> | undefined;
650
657
  constructor(candidates: readonly WithLocalization<types.Operator>[], suitableOperators: readonly WithLocalization<types.Operator>[]);
651
658
  }
652
- export declare class NonHiddenEntityHidingMatcher implements IEntityHidingMatcher {
653
- matches(_hiding: entities.EntityHidingLevel): boolean;
654
- }
655
659
  type AvailablePackage = AvailablePackage.Original | AvailablePackage.Translated;
656
660
  declare namespace AvailablePackage {
657
661
  export class Original implements IAvailablePackage {
658
- readonly value: PackageEntity;
662
+ readonly value: e.PackageEntity;
659
663
  readonly kind = "original";
660
- constructor(value: PackageEntity);
664
+ constructor(value: e.PackageEntity);
661
665
  getImportName(): PackageName;
662
666
  getLocale(): PackageLocale;
663
- getEntity(): PackageEntity;
667
+ getEntity(): e.PackageEntity;
664
668
  getTranslationPackage(): AnalyzedTranslationPackage | undefined;
665
669
  }
666
670
  export class Translated implements IAvailablePackage {
@@ -669,26 +673,26 @@ declare namespace AvailablePackage {
669
673
  constructor(value: AnalyzedTranslationPackage);
670
674
  getImportName(): PackageName;
671
675
  getLocale(): PackageLocale;
672
- getEntity(): PackageEntity;
676
+ getEntity(): e.PackageEntity;
673
677
  getTranslationPackage(): AnalyzedTranslationPackage | undefined;
674
678
  }
675
679
  interface IAvailablePackage {
676
680
  getImportName(): PackageName;
677
681
  getLocale(): PackageLocale;
678
- getEntity(): PackageEntity;
682
+ getEntity(): e.PackageEntity;
679
683
  getTranslationPackage(): AnalyzedTranslationPackage | undefined;
680
684
  }
681
685
  export {};
682
686
  }
683
687
  export declare class DeclaredTypeMemberEntities {
684
- readonly variables: readonly TypeVariableEntity[];
685
- readonly methods: readonly TypeMethodEntity[];
686
- readonly operators: readonly OperatorEntity[];
687
- readonly constructors: readonly ConstructorEntity[];
688
- readonly destructors: readonly DestructorEntity[];
689
- readonly indexers: readonly SourceIndexerEntity[];
690
- readonly dereferenceOperators: readonly DereferenceOperatorEntity[];
688
+ readonly variables: readonly e.TypeVariableEntity[];
689
+ readonly methods: readonly e.TypeMethodEntity[];
690
+ readonly operators: readonly e.OperatorEntity[];
691
+ readonly constructors: readonly e.ConstructorEntity[];
692
+ readonly destructors: readonly e.DestructorEntity[];
693
+ readonly indexers: readonly e.SourceIndexerEntity[];
694
+ readonly dereferenceOperators: readonly e.DereferenceOperatorEntity[];
691
695
  get namedMembers(): NamedTypeMemberEntity[];
692
- constructor(variables: readonly TypeVariableEntity[], methods: readonly TypeMethodEntity[], operators: readonly OperatorEntity[], constructors: readonly ConstructorEntity[], destructors: readonly DestructorEntity[], indexers: readonly SourceIndexerEntity[], dereferenceOperators: readonly DereferenceOperatorEntity[]);
696
+ constructor(variables: readonly e.TypeVariableEntity[], methods: readonly e.TypeMethodEntity[], operators: readonly e.OperatorEntity[], constructors: readonly e.ConstructorEntity[], destructors: readonly e.DestructorEntity[], indexers: readonly e.SourceIndexerEntity[], dereferenceOperators: readonly e.DereferenceOperatorEntity[]);
693
697
  }
694
698
  export {};
@@ -1,6 +1,6 @@
1
1
  import { Diagnostic } from '../diagnostic/Diagnostic.js';
2
2
  import { VariableEntity } from '../entities/index.js';
3
- import { AutotypeCallExpression, CallArgument, CallExpression, Tag } from '../tree/index.js';
3
+ import { AutotypeCallExpression, CallArgument, CallExpression, IndexedAccessExpression, Tag } from '../tree/index.js';
4
4
  import * as types from '../types/index.js';
5
5
  import { LocalizedName } from './Localization.js';
6
6
  import { Analyzer } from './index.js';
@@ -11,10 +11,9 @@ export declare class CallArgumentToParameterMatchResult {
11
11
  ofCallExpression(node: CallExpression): MatchResult | undefined;
12
12
  ofAutotypeCallExpression(node: AutotypeCallExpression): MatchResult | undefined;
13
13
  ofTag(node: Tag): MatchResult | undefined;
14
- private convertSignatureWithParametersMatchResult;
14
+ ofIndexedAccessExpression(node: IndexedAccessExpression): MatchResult | undefined;
15
+ private convertMatchResult;
15
16
  private convertParameter;
16
- private convertConstructorSignatureMatchResult;
17
- private convertConstructorParameter;
18
17
  }
19
18
  export declare class MatchResult {
20
19
  readonly parameterByCallArgument: ReadonlyMap<CallArgument, MatchResultValueParameter>;
@@ -27,6 +27,7 @@ export declare class DiagnosticCollector {
27
27
  private checkPackageMethodDeclaration;
28
28
  private checkPackageVariableGetterDeclaration;
29
29
  private checkPackageVariableSetterDeclaration;
30
+ private checkTypeConstructorDeclaration;
30
31
  private checkTypeMethodDeclaration;
31
32
  private checkOperatorDeclaration;
32
33
  private checkTypeVariableGetterDeclaration;
@@ -1,8 +1,8 @@
1
+ import { AccessKind } from '../common/index.js';
1
2
  import { Diagnostic } from '../diagnostic/Diagnostic.js';
2
3
  import { IndexedAccessExpression } from '../tree/index.js';
3
4
  import * as types from '../types/index.js';
4
5
  import { FoundAnonymousDeclaration } from './FoundDeclaration.js';
5
- import * as indexedAccess from './IndexedAccess.js';
6
6
  import { Analyzer } from './index.js';
7
7
  export declare class Resolver {
8
8
  private readonly _analyzer;
@@ -10,20 +10,25 @@ export declare class Resolver {
10
10
  private readonly _semanticContext;
11
11
  private get semanticContext();
12
12
  constructor(_analyzer: Analyzer, _node: IndexedAccessExpression);
13
- resolve(): Meaning;
13
+ resolve(): ResolutionResult;
14
14
  private getArgumentsRangeWithBrackets;
15
15
  private convertSyntacticAccessKind;
16
16
  }
17
+ export declare class ResolutionResult {
18
+ readonly meaning: Meaning;
19
+ readonly diagnostic?: Diagnostic | undefined;
20
+ constructor(meaning: Meaning, diagnostic?: Diagnostic | undefined);
21
+ }
17
22
  export type Meaning = Meaning_resolved | Meaning_unresolved;
18
23
  declare class Meaning_resolved {
19
- readonly indexer: FoundAnonymousDeclaration<types.Indexer>;
20
- readonly access: indexedAccess.IndexedAccess;
24
+ readonly candidates: readonly FoundAnonymousDeclaration<types.Indexer>[];
25
+ readonly suitableIndexers: readonly FoundAnonymousDeclaration<types.Indexer>[];
26
+ readonly accessKind: AccessKind;
21
27
  readonly kind = "resolved";
22
- constructor(indexer: FoundAnonymousDeclaration<types.Indexer>, access: indexedAccess.IndexedAccess);
28
+ get singleSuitableIndexer(): FoundAnonymousDeclaration<types.Indexer> | undefined;
29
+ constructor(candidates: readonly FoundAnonymousDeclaration<types.Indexer>[], suitableIndexers: readonly FoundAnonymousDeclaration<types.Indexer>[], accessKind: AccessKind);
23
30
  }
24
31
  declare class Meaning_unresolved {
25
- readonly diagnostic: Diagnostic | undefined;
26
32
  readonly kind = "unresolved";
27
- constructor(diagnostic: Diagnostic | undefined);
28
33
  }
29
34
  export {};