@artel/artc 0.6.25224 → 0.6.25226

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 (84) hide show
  1. package/build/Cli.js +3 -3
  2. package/build/api/Api.js +81 -79
  3. package/build/api/ApiNodeJS.js +3 -3
  4. package/build/api/ApiServices.js +995 -1001
  5. package/build/{chunk-62KHK23H.js → chunk-MHPX52MT.js} +3 -3
  6. package/build/{chunk-24QZJOMF.js → chunk-VRQPLLYS.js} +5414 -5323
  7. package/build/{chunk-Y6DODJCG.js → chunk-YNR2KYMJ.js} +3 -3
  8. package/build/types/analysis/AccessedFunction.d.ts +53 -0
  9. package/build/types/analysis/AnalyzedTranslationPackage.d.ts +15 -15
  10. package/build/types/analysis/Analyzer.d.ts +133 -124
  11. package/build/types/analysis/CallExpressionMeaning.d.ts +10 -10
  12. package/build/types/analysis/DiagnosticCollector.d.ts +16 -16
  13. package/build/types/analysis/EntityLocalizationHelper.d.ts +6 -6
  14. package/build/types/analysis/IdentifierExpressionMeaning.d.ts +10 -10
  15. package/build/types/analysis/LocalizationContext.d.ts +2 -2
  16. package/build/types/analysis/{PropertyAccessExpressionMeaning.d.ts → MemberAccessExpressionMeaning.d.ts} +20 -20
  17. package/build/types/analysis/NodeTypeUtils.d.ts +13 -13
  18. package/build/types/analysis/OperationOverloadResolver.d.ts +1 -1
  19. package/build/types/analysis/Scope.d.ts +15 -15
  20. package/build/types/analysis/SemanticContext.d.ts +29 -29
  21. package/build/types/analysis/SemanticContextBuilder.d.ts +22 -22
  22. package/build/types/analysis/SourceFileMembers.d.ts +2 -2
  23. package/build/types/analysis/StatementBlockScopeBuilder.d.ts +12 -12
  24. package/build/types/analysis/{SubstitutedMethod.d.ts → SubstitutedFunction.d.ts} +14 -14
  25. package/build/types/analysis/TagMeaning.d.ts +19 -19
  26. package/build/types/analysis/Tags.d.ts +6 -6
  27. package/build/types/analysis/Utils.d.ts +3 -3
  28. package/build/types/analysis/WellKnownDeclarations.d.ts +4 -4
  29. package/build/types/analysis/control-flow/NarrowableExpression.d.ts +1 -1
  30. package/build/types/api/Api.d.ts +3 -3
  31. package/build/types/diagnostic/DiagnosticCode.d.ts +125 -126
  32. package/build/types/emitter/EmitPhaseName.d.ts +8 -8
  33. package/build/types/emitter/Emitter.d.ts +4 -4
  34. package/build/types/emitter/EmitterContext.d.ts +2 -2
  35. package/build/types/emitter/Entities.d.ts +26 -25
  36. package/build/types/emitter/EntityMap.d.ts +8 -8
  37. package/build/types/emitter/IrBuilder.d.ts +18 -18
  38. package/build/types/emitter/IrToJs.d.ts +9 -9
  39. package/build/types/emitter/Transformer.d.ts +37 -37
  40. package/build/types/emitter/ir/AccessedEntities.d.ts +5 -5
  41. package/build/types/emitter/ir/ComputedAccess.d.ts +5 -5
  42. package/build/types/emitter/ir/EmitOptions.d.ts +41 -27
  43. package/build/types/emitter/ir/Nodes.d.ts +140 -139
  44. package/build/types/emitter/ir/types.d.ts +8 -8
  45. package/build/types/entities/ConstructorEntity.d.ts +9 -9
  46. package/build/types/entities/DereferenceOperatorEntity.d.ts +4 -4
  47. package/build/types/entities/DestructorEntity.d.ts +4 -4
  48. package/build/types/entities/{MethodEntity.d.ts → FunctionEntity.d.ts} +36 -36
  49. package/build/types/entities/{MethodTypeEntity.d.ts → FunctionTypeEntity.d.ts} +23 -23
  50. package/build/types/entities/GetterEntity.d.ts +9 -9
  51. package/build/types/entities/IndexerEntity.d.ts +4 -4
  52. package/build/types/entities/SetterEntity.d.ts +9 -9
  53. package/build/types/entities/TypeEntity.d.ts +3 -3
  54. package/build/types/entities/TypeEntityMembers.d.ts +3 -3
  55. package/build/types/entities/TypeParameterEntity.d.ts +2 -2
  56. package/build/types/entities/VariableEntity.d.ts +32 -32
  57. package/build/types/entities/index.d.ts +14 -14
  58. package/build/types/services/CompletionService.d.ts +8 -8
  59. package/build/types/services/DisplayService.d.ts +62 -62
  60. package/build/types/services/HoverService.d.ts +1 -1
  61. package/build/types/services/NodeSemanticInfo.d.ts +17 -17
  62. package/build/types/services/SemanticTokensService.d.ts +6 -6
  63. package/build/types/services/SourceFileItemsService.d.ts +11 -11
  64. package/build/types/services/TypeDefinitionService.d.ts +2 -2
  65. package/build/types/services/signature-help/SignatureWithValueParameters.d.ts +10 -10
  66. package/build/types/services/signature-help/TypeParameterSignatureHelpProvider.d.ts +1 -1
  67. package/build/types/services/source-generation/EntityToSyntax.d.ts +9 -9
  68. package/build/types/tree/NodeKind.d.ts +146 -148
  69. package/build/types/tree/green/Nodes.d.ts +119 -139
  70. package/build/types/tree/green/SyntaxFactory.d.ts +19 -19
  71. package/build/types/tree/green/SyntaxToCode.d.ts +20 -22
  72. package/build/types/tree/red/Nodes.d.ts +165 -189
  73. package/build/types/ts-interop/Entities.d.ts +28 -28
  74. package/build/types/ts-interop/TsInteropContext.d.ts +1 -1
  75. package/build/types/ts-interop/TsPackageMembersCreator.d.ts +1 -1
  76. package/build/types/ts-interop/TsTypeMembersCreator.d.ts +1 -1
  77. package/build/types/types/{MethodType.d.ts → FunctionType.d.ts} +6 -6
  78. package/build/types/types/StandardTypes.d.ts +2 -2
  79. package/build/types/types/Type.d.ts +2 -2
  80. package/build/types/types/TypeFactory.d.ts +6 -7
  81. package/build/types/types/TypeMembers.d.ts +8 -8
  82. package/build/types/types/index.d.ts +1 -1
  83. package/package.json +1 -1
  84. package/build/types/analysis/AccessedMethod.d.ts +0 -53
@@ -14,7 +14,7 @@ import * as tree from '../tree/index.js';
14
14
  import { TsInteropContext, TsProgramState } from '../ts-interop/TsInteropContext.js';
15
15
  import * as types from '../types/index.js';
16
16
  import { TypeFactory } from '../types/index.js';
17
- import { AccessedMethod } from './AccessedMethod.js';
17
+ import { AccessedFunction } from './AccessedFunction.js';
18
18
  import { AnalyzedTranslationPackage } from './AnalyzedTranslationPackage.js';
19
19
  import { ArgumentToParameterMatchResult, MatchResultValueParameter } from './ArgumentToParameterMatchResult.js';
20
20
  import * as autotypeCallExpressionMeaning from './AutotypeCallExpressionMeaning.js';
@@ -29,12 +29,12 @@ import { ImportedPackageNameTree, PackageNameTreeNode } from './ImportedPackageN
29
29
  import * as indexedAccessExpressionMeaning from './IndexedAccessExpressionMeaning.js';
30
30
  import { WithLocalization } from './Localization.js';
31
31
  import { LocalizationContext } from './LocalizationContext.js';
32
+ import * as memberAccessExpressionResolution from './MemberAccessExpressionMeaning.js';
32
33
  import { ModifierFlags } from './ModifierFlags.js';
33
34
  import { NamedTypeSpecifierResolutionResult } from './NamedTypeSpecifierResolver.js';
34
- import { GetterDeclaration, MethodTypeDeclaration, PackageVariableAccessorDeclaration, SetterDeclaration, StructuredTypeDeclaration, TypeDereferencedVariableAccessorDeclaration, TypeIndexedAccessorDeclaration, TypeVariableAccessorDeclaration, VariantTypeDeclaration } from './NodeTypeUtils.js';
35
+ import { DereferencedVariableAccessorDeclaration, FieldAccessorDeclaration, FunctionTypeDeclaration, GetterDeclaration, IndexedElementAccessorDeclaration, PackageVariableAccessorDeclaration, SetterDeclaration, StructuredTypeDeclaration, VariantTypeDeclaration } from './NodeTypeUtils.js';
35
36
  import * as objectExpressionMeaning from './ObjectExpressionMeaning.js';
36
37
  import * as operationOverloadResolver from './OperationOverloadResolver.js';
37
- import * as propertyAccessExpressionResolution from './PropertyAccessExpressionMeaning.js';
38
38
  import * as scope from './Scope.js';
39
39
  import { SemanticContextBuilder } from './SemanticContextBuilder.js';
40
40
  import { SourceFileMembers as ActualSourceFileMembers } from './SourceFileMembers.js';
@@ -46,7 +46,7 @@ import * as controlFlow from './control-flow/index.js';
46
46
  import { WellKnownDeclarations } from './index.js';
47
47
  export declare class Analyzer {
48
48
  static readonly enumeratorMethodName = "\u043F\u0435\u0440\u0435\u0431\u043E\u0440";
49
- static readonly methodTypeInvokeMethodName = "\u0432\u044B\u043F\u043E\u043B\u043D\u0438\u0442\u044C";
49
+ static readonly functionTypeInvokeMethodName = "\u0432\u044B\u043F\u043E\u043B\u043D\u0438\u0442\u044C";
50
50
  readonly compilation: project.Compilation;
51
51
  /**
52
52
  * Пакет с именем 'Артель', содержащий стандартные типы.
@@ -69,11 +69,12 @@ export declare class Analyzer {
69
69
  readonly linkedEntity: LinkedEntity;
70
70
  readonly owningPlainObjectModificationCheck: OwningPlainObjectModificationCheck;
71
71
  readonly packageImports: PackageImports;
72
+ readonly typeUtils: TypeUtils;
72
73
  private readonly _tsInteropInputs;
73
74
  private readonly _targetType;
74
75
  private readonly _typeAssignabilityCheck;
75
76
  private readonly _tsInterop;
76
- private readonly _propertyAccessExpressionResolutionResults;
77
+ private readonly _memberAccessExpressionResolutionResults;
77
78
  private readonly _sourceFileMembers;
78
79
  private readonly _callExpressionMeanings;
79
80
  private readonly _indexedAccessExpressionResolutionResults;
@@ -87,8 +88,8 @@ export declare class Analyzer {
87
88
  private readonly _prefixUnaryExpressionOperatorResolutionResults;
88
89
  private readonly _binaryExpressionUserDefinableOperatorResolutionResults;
89
90
  private readonly _assignmentStatementOperatorResolutionResults;
90
- private readonly _methodEntitySignatureTypes;
91
- private readonly _valueParametersOfMethodBlockLiterals;
91
+ private readonly _functionEntitySignatureTypes;
92
+ private readonly _valueParametersOfFunctionBlockLiterals;
92
93
  private readonly _extendedTypes;
93
94
  private readonly _analyzedTranslationPackages;
94
95
  private readonly _linkedMultiPlatformPackagesByPlatform;
@@ -112,14 +113,14 @@ export declare class Analyzer {
112
113
  getSyntacticAccessKind(node: tree.Expression): SyntacticAccessKind;
113
114
  getTypeMemberEntityContainer(node: tree.TypeMemberDeclaration): e.TypeMemberEntityContainer;
114
115
  getTargetTypeOfExpression(node: tree.Expression, hint?: TargetTypeHint): types.Type | undefined;
115
- getUnambiguousTargetMethodType(targetType: types.Type | undefined): types.MethodType | undefined;
116
+ getUnambiguousTargetFunctionType(targetType: types.Type | undefined): types.FunctionType | undefined;
116
117
  getUnambiguousTargetArrayType(targetType: types.Type | undefined): types.Type | undefined;
117
118
  getEnumeratorElementType(node: tree.Node): types.Type | undefined;
118
- resolveMethodOverloadByCallExpression<TCandidate extends operationOverloadResolver.ICandidate<TValueParameter>, TValueParameter extends operationOverloadResolver.IValueParameter>(candidates: readonly TCandidate[], node: tree.CallExpression): readonly TCandidate[];
119
- resolveMethodOverloadByTargetType<TCandidate extends operationOverloadResolver.ICandidate<TValueParameter>, TValueParameter extends operationOverloadResolver.IValueParameter>(candidates: readonly TCandidate[], targetType: types.MethodType): readonly TCandidate[];
119
+ resolveFunctionOverloadByCallExpression<TCandidate extends operationOverloadResolver.ICandidate<TValueParameter>, TValueParameter extends operationOverloadResolver.IValueParameter>(candidates: readonly TCandidate[], node: tree.CallExpression): readonly TCandidate[];
120
+ resolveFunctionOverloadByTargetType<TCandidate extends operationOverloadResolver.ICandidate<TValueParameter>, TValueParameter extends operationOverloadResolver.IValueParameter>(candidates: readonly TCandidate[], targetType: types.FunctionType): readonly TCandidate[];
120
121
  resolveConstructorOverload<TCandidate extends constructorOverloadResolver.ICandidate<TValueParameter>, TValueParameter extends constructorOverloadResolver.IValueParameter>(candidates: readonly TCandidate[], args: readonly tree.Argument[]): readonly TCandidate[];
121
122
  resolveTypeOverloadByArgumentCount<TCandidate extends typeOverloadResolver.ICandidate>(candidates: readonly TCandidate[], argumentCount: number): readonly TCandidate[];
122
- resolvePropertyAccessExpression(node: tree.PropertyAccessExpression, targetTypeHint?: TargetTypeHint): propertyAccessExpressionResolution.ResolutionResult;
123
+ resolveMemberAccessExpression(node: tree.MemberAccessExpression, targetTypeHint?: TargetTypeHint): memberAccessExpressionResolution.ResolutionResult;
123
124
  enumeratePackageImports(packageImportDirectives: Iterable<tree.PackageImportDirective>): Iterable<tree.PackageImport>;
124
125
  getSourceFileMembers(node: tree.SourceFile): ActualSourceFileMembers;
125
126
  getCallExpressionMeaning(node: tree.CallExpression): callExpressionMeaning.Meaning;
@@ -171,7 +172,7 @@ export declare class Analyzer {
171
172
  typeIsValidBaseAspectType(type: types.Type): boolean;
172
173
  getImplicitBaseTypeForStructuredType(entity: e.StructuredTypeEntity): types.StructuredType | undefined;
173
174
  getImplicitBaseTypeForVariantType(): types.StructuredType;
174
- getImplicitBaseTypeForMethodType(): types.StructuredType;
175
+ getImplicitBaseTypeForFunctionType(): types.StructuredType;
175
176
  resolveNamedTypeSpecifier(node: tree.NamedTypeSpecifier): NamedTypeSpecifierResolutionResult;
176
177
  checkExpressionDenotesType(expression: tree.Expression): {
177
178
  type: types.Type | undefined;
@@ -179,7 +180,7 @@ export declare class Analyzer {
179
180
  checkExpressionDenotesPackageAlias(expression: tree.Expression): {
180
181
  packageAlias: e.PackageAliasEntity;
181
182
  } | undefined;
182
- checkExpressionDenotesMethod(expression: tree.Expression): ExpressionDenotesMethodCheckResult | undefined;
183
+ checkExpressionDenotesFunction(expression: tree.Expression): ExpressionDenotesFunctionCheckResult | undefined;
183
184
  checkExpressionDenotesOperator(expression: tree.Expression): ExpressionDenotesOperatorCheckResult | undefined;
184
185
  checkExpressionDenotesPackageNameSegment(expression: tree.Expression): {
185
186
  packageTreeNode: PackageNameTreeNode;
@@ -194,7 +195,7 @@ export declare class Analyzer {
194
195
  getBinaryOperatorKindIfCompoundAssignmentOperator(operator: tree.AssignmentStatementOperator): BinaryOperatorKind | undefined;
195
196
  getPackageEntities(): readonly e.PackageEntity[];
196
197
  getPackageEntity(name: PackageName): e.PackageEntity | undefined;
197
- createMethodTypeInvokeMethod(entity: e.MethodTypeEntity): e.TypeMethodEntity;
198
+ createFunctionTypeInvokeMethod(entity: e.FunctionTypeEntity): e.MethodEntity;
198
199
  /**
199
200
  * Преобразует тип таким образом, чтобы он не мог содержать значение `пусто`.
200
201
  * После преобразования метод `canTypeBeNone` вернёт `true` для полученного типа.
@@ -233,15 +234,14 @@ export declare class Analyzer {
233
234
  */
234
235
  isNoneAssignableToType(type: types.Type): boolean;
235
236
  excludeTypeFromUnion(initialType: types.Type, excludedType: types.Type): types.Type;
236
- isMethodValueParameterVariadic(entity: e.VariableEntity): boolean;
237
+ isValueParameterVariadic(entity: e.VariableEntity): boolean;
237
238
  getDefaultTypeParameterConstraint(): types.Type;
238
- getOriginalSignatureTypeOfMethodEntity(entity: e.MethodEntity): types.MethodType;
239
- getMethodBlockLiteralValueParameters(node: tree.MethodBlockLiteral): readonly e.VariableEntity[];
239
+ getOriginalSignatureTypeOfFunctionEntity(entity: e.FunctionEntity): types.FunctionType;
240
+ getFunctionBlockLiteralValueParameters(node: tree.FunctionBlockLiteral): readonly e.VariableEntity[];
240
241
  getExtendedType(node: tree.TypeExtensionDeclaration): WithDiagnostics<e.NamedTypeEntity>;
241
242
  getAnalyzedTranslationPackageIfTargetResolved(package_: project.TranslationPackage): AnalyzedTranslationPackage | undefined;
242
243
  getAnalyzedTranslationPackageForPackage(entity: e.PackageEntity, locale: PackageLocale): AnalyzedTranslationPackage | undefined;
243
244
  enumerateAnalyzedTranslationPackages(): Iterable<AnalyzedTranslationPackage>;
244
- getCommonObjectAndAspectTypesOfUnion(unionType: types.UnionType): readonly types.StructuredType[];
245
245
  getLinkedMultiPlatformPackagesByPlatform(entity: e.PackageEntity): ReadonlyMap<PlatformKind, LinkedMultiPlatformPackage> | undefined;
246
246
  getLinkedMultiPlatformPackage(entity: e.PackageEntity, platform: PlatformKind): LinkedMultiPlatformPackage | undefined;
247
247
  createPackageMembers(pkg: SourcePackage): OriginalPackageMembers;
@@ -253,19 +253,19 @@ export declare class Analyzer {
253
253
  isFunctionResultNone(node: tree.FunctionBlock): boolean;
254
254
  isExpressionImplicitlyReturnedFromSubprogram(node: tree.ExpressionStatement): boolean;
255
255
  createBackingPackageVariables(declaredMembers: readonly (e.NamedPackageMemberEntity | e.PackageAliasEntity)[], pkg: e.PackageEntity): e.PackageVariableEntity[];
256
- createBackingTypeVariables(declaredMembers: readonly NamedTypeMemberEntity[], type: e.TypeEntity): e.TypeVariableEntity[];
256
+ createBackingFields(declaredMembers: readonly NamedTypeMemberEntity[], type: e.TypeEntity): e.FieldEntity[];
257
257
  createNodeDiagnostic(code: DiagnosticCode, node: tree.Node, formatArguments?: readonly string[], kind?: DiagnosticKind, flags?: DiagnosticFlags): Diagnostic;
258
258
  createSourceFileRangeDiagnostic(code: DiagnosticCode, range: Range, nodeOrSourceFile: tree.Node | project.SourceFile, formatArguments?: readonly string[], kind?: DiagnosticKind, flags?: DiagnosticFlags): Diagnostic;
259
259
  createDiagnostic(code: DiagnosticCode, location: DiagnosticLocation | undefined, formatArguments?: readonly string[], kind?: DiagnosticKind, flags?: DiagnosticFlags): Diagnostic;
260
260
  createNodeDiagnosticLocation(node: tree.Node): DiagnosticLocation;
261
261
  getDeclaredTypeMemberEntities(node: tree.TypeMemberDeclarationBlock): DeclaredTypeMemberEntities;
262
- getRedefinableMethodOfOriginalTypeForRedefinableMethodOfAliasType(entity: e.TypeMethodEntity): e.TypeMethodEntity | undefined;
263
- checkBodyOfRedefinableAliasTypeMethod(node: tree.TypeMethodDeclaration, diagnostics?: DiagnosticAcceptor): {
264
- redefinableMethodOfOriginalType: e.TypeMethodEntity;
262
+ getRedefinableMethodOfOriginalTypeForRedefinableMethodOfAliasType(entity: e.MethodEntity): e.MethodEntity | undefined;
263
+ checkBodyOfRedefinableAliasTypeMethod(node: tree.MethodDeclaration, diagnostics?: DiagnosticAcceptor): {
264
+ redefinableMethodOfOriginalType: e.MethodEntity;
265
265
  } | undefined;
266
266
  getControlFlowGraph(sourceFile: project.SourceFile): controlFlow.GraphBuildResult;
267
267
  createAmbiguousEntityAccessDiagnostic(entities: readonly WithLocalization<e.Entity>[], lctx: LocalizationContext, node: tree.Node): Diagnostic;
268
- createAmbiguousMethodAccessDiagnostic(methods: readonly WithLocalization<AccessedMethod>[], lctx: LocalizationContext, node: tree.Node): Diagnostic;
268
+ createAmbiguousFunctionAccessDiagnostic(functions: readonly WithLocalization<AccessedFunction>[], lctx: LocalizationContext, node: tree.Node): Diagnostic;
269
269
  createAmbiguousTypeMemberAccessDiagnostic(members: readonly WithLocalization<types.TypeMember>[], lctx: LocalizationContext, node: tree.Node): Diagnostic;
270
270
  createAmbiguousNamedScopeDeclarationAccessDiagnostic(declarations: readonly WithLocalization<scope.NamedDeclaration>[], lctx: LocalizationContext, node: tree.Node): Diagnostic;
271
271
  private createTsInterop;
@@ -297,15 +297,15 @@ declare class Type {
297
297
  private readonly _analyzer;
298
298
  private readonly _unionTypeSpecifierTypes;
299
299
  private readonly _intersectionTypeSpecifierTypes;
300
- private readonly _methodLiteralTypes;
301
- private readonly _methodBlockLiteralTypes;
300
+ private readonly _functionLiteralTypes;
301
+ private readonly _functionBlockLiteralTypes;
302
302
  constructor(_analyzer: Analyzer);
303
303
  ofExpression(node: tree.Expression, targetTypeHint?: TargetTypeHint): types.Type;
304
304
  ofTypeSpecifier(node: tree.TypeSpecifier): types.Type;
305
- ofAccessedMethod(accessedMethod: WithLocalization<AccessedMethod>): types.Type;
305
+ ofAccessedFunction(accessedFunction: WithLocalization<AccessedFunction>): types.Type;
306
306
  ofAccessedOperator(operator: WithLocalization<types.Operator>): types.Type;
307
- ofMethodBlockLiteral(node: tree.MethodBlockLiteral, targetTypeHint?: TargetTypeHint): types.MethodType;
308
- ofMethodLiteral(node: tree.MethodLiteral, targetTypeHint?: TargetTypeHint): types.MethodType;
307
+ ofFunctionBlockLiteral(node: tree.FunctionBlockLiteral, targetTypeHint?: TargetTypeHint): types.FunctionType;
308
+ ofFunctionLiteral(node: tree.FunctionLiteral, targetTypeHint?: TargetTypeHint): types.FunctionType;
309
309
  private ofArrayLiteral;
310
310
  private ofAssertionExpression;
311
311
  private ofAssumptionExpression;
@@ -318,7 +318,7 @@ declare class Type {
318
318
  private ofIsExpression;
319
319
  private ofParenthesizedExpression;
320
320
  private ofPrefixUnaryExpression;
321
- private ofPropertyAccessExpression;
321
+ private ofMemberAccessExpression;
322
322
  private ofReferenceExpression;
323
323
  private ofDereferenceExpression;
324
324
  private ofWhenTernaryExpression;
@@ -337,28 +337,28 @@ declare class Type {
337
337
  private ofUnionTypeSpecifier;
338
338
  private ofIntersectionTypeSpecifier;
339
339
  private ofInvalidTypeSpecifier;
340
- private getTargetlessMethodBlockLiteralType;
341
- private inferMethodLiteralTypeFromNodeWithFallbackToTargetType;
342
- private inferMethodLiteralTypeFromNode;
340
+ private getTargetlessFunctionBlockLiteralType;
341
+ private inferFunctionLiteralTypeFromNodeWithFallbackToTargetType;
342
+ private inferFunctionLiteralTypeFromNode;
343
343
  private getNarrowedTypeIfNarrowableReference;
344
344
  }
345
345
  declare class ReturnType {
346
346
  private readonly _analyzer;
347
347
  constructor(_analyzer: Analyzer);
348
- ofAnonymousMethodTypeDeclaration(node: tree.AnonymousMethodTypeDeclaration): types.Type;
349
- ofMethodBlockLiteral(node: tree.MethodBlockLiteral): types.Type;
350
- ofPackageMethodDeclaration(node: tree.PackageMethodDeclaration): types.Type;
351
- ofPackageMethodTypeDeclaration(node: tree.PackageMethodTypeDeclaration): types.Type;
352
- ofNestedMethodDeclaration(node: tree.NestedMethodDeclaration): types.Type;
353
- ofMethodLiteral(node: tree.MethodLiteral): types.Type;
354
- ofTypeMethodDeclaration(node: tree.TypeMethodDeclaration): types.Type;
348
+ ofAnonymousFunctionTypeDeclaration(node: tree.AnonymousFunctionTypeDeclaration): types.Type;
349
+ ofFunctionBlockLiteral(node: tree.FunctionBlockLiteral): types.Type;
350
+ ofPackageFunctionDeclaration(node: tree.PackageFunctionDeclaration): types.Type;
351
+ ofPackageFunctionTypeDeclaration(node: tree.PackageFunctionTypeDeclaration): types.Type;
352
+ ofNestedFunctionDeclaration(node: tree.NestedFunctionDeclaration): types.Type;
353
+ ofFunctionLiteral(node: tree.FunctionLiteral): types.Type;
354
+ ofMethodDeclaration(node: tree.MethodDeclaration): types.Type;
355
355
  ofOperatorDeclaration(node: tree.OperatorDeclaration): types.Type;
356
356
  }
357
357
  declare class Entity {
358
358
  private readonly _analyzer;
359
359
  private readonly _packageEntities;
360
360
  private readonly _packageVariableEntities;
361
- private readonly _typeVariableEntities;
361
+ private readonly _fieldEntities;
362
362
  private readonly _parameterVariableEntities;
363
363
  private readonly _localVariableEntities;
364
364
  private readonly _typeParameterEntities;
@@ -368,12 +368,12 @@ declare class Entity {
368
368
  private readonly _anonymousStructuredTypeEntities;
369
369
  private readonly _packageVariantTypeEntities;
370
370
  private readonly _anonymousVariantTypeEntities;
371
- private readonly _packageMethodTypeEntities;
372
- private readonly _anonymousMethodTypeEntities;
371
+ private readonly _packageFunctionTypeEntities;
372
+ private readonly _anonymousFunctionTypeEntities;
373
373
  private readonly _aliasTypeEntities;
374
- private readonly _packageMethodEntities;
375
- private readonly _typeMethodEntities;
376
- private readonly _nestedMethodEntities;
374
+ private readonly _packageFunctionEntities;
375
+ private readonly _methodEntities;
376
+ private readonly _nestedFunctionEntities;
377
377
  private readonly _constructorEntities;
378
378
  private readonly _operatorEntities;
379
379
  private readonly _destructorEntities;
@@ -385,49 +385,49 @@ declare class Entity {
385
385
  ofPackage(pkg: SourcePackage): e.PackageEntity;
386
386
  ofPackageVariableDeclaration(node: tree.PackageVariableDeclaration): e.PackageVariableEntity;
387
387
  ofComputedPackageVariableDeclaration(node: PackageVariableAccessorDeclaration): e.PackageVariableEntity;
388
- ofTypeVariableDeclaration(node: tree.TypeVariableDeclaration): e.TypeVariableEntity;
389
- ofComputedTypeVariableDeclaration(node: TypeVariableAccessorDeclaration): e.TypeVariableEntity;
388
+ ofFieldDeclaration(node: tree.FieldDeclaration): e.FieldEntity;
389
+ ofComputedFieldDeclaration(node: FieldAccessorDeclaration): e.FieldEntity;
390
390
  ofLocalVariableDeclaration(node: tree.LocalVariableDeclaration): e.LocalVariableEntity;
391
391
  ofEnumerationVariableDeclaration(node: tree.EnumerationVariableDeclaration): e.LocalVariableEntity;
392
392
  ofErrorVariableDeclaration(node: tree.ErrorVariableDeclaration): e.LocalVariableEntity;
393
393
  ofParameterDeclaration(node: tree.ParameterDeclaration): e.ParameterVariableEntity;
394
394
  ofTypeParameterDeclaration(node: tree.TypeParameterDeclaration): e.TypeParameterEntity;
395
- ofTypeIndexerDeclaration(node: TypeIndexedAccessorDeclaration): e.SourceIndexerEntity;
396
- ofTypeDereferenceOperatorDeclaration(node: TypeDereferencedVariableAccessorDeclaration): e.DereferenceOperatorEntity;
395
+ ofIndexerDeclaration(node: IndexedElementAccessorDeclaration): e.SourceIndexerEntity;
396
+ ofDereferenceOperatorDeclaration(node: DereferencedVariableAccessorDeclaration): e.DereferenceOperatorEntity;
397
397
  ofPackageStructuredTypeDeclaration(node: tree.PackageStructuredTypeDeclaration): e.PackageStructuredTypeEntity;
398
398
  ofAnonymousStructuredTypeDeclaration(node: tree.AnonymousStructuredTypeDeclaration): e.AnonymousStructuredTypeEntity;
399
399
  ofStructuredTypeDeclaration(node: StructuredTypeDeclaration): e.StructuredTypeEntity;
400
- ofPackageMethodTypeDeclaration(node: tree.PackageMethodTypeDeclaration): e.PackageMethodTypeEntity;
401
- ofAnonymousMethodTypeDeclaration(node: tree.AnonymousMethodTypeDeclaration): e.AnonymousMethodTypeEntity;
402
- ofMethodTypeDeclaration(node: MethodTypeDeclaration): e.MethodTypeEntity;
400
+ ofPackageFunctionTypeDeclaration(node: tree.PackageFunctionTypeDeclaration): e.PackageFunctionTypeEntity;
401
+ ofAnonymousFunctionTypeDeclaration(node: tree.AnonymousFunctionTypeDeclaration): e.AnonymousFunctionTypeEntity;
402
+ ofFunctionTypeDeclaration(node: FunctionTypeDeclaration): e.FunctionTypeEntity;
403
403
  ofPackageVariantTypeDeclaration(node: tree.PackageVariantTypeDeclaration): e.PackageVariantTypeEntity;
404
404
  ofAnonymousVariantTypeDeclaration(node: tree.AnonymousVariantTypeDeclaration): e.AnonymousVariantTypeEntity;
405
405
  ofVariantTypeDeclaration(node: VariantTypeDeclaration): e.VariantTypeEntity;
406
406
  ofPackageAliasTypeDeclaration(node: tree.PackageAliasTypeDeclaration): e.AliasTypeEntity;
407
- ofPackageMethodDeclaration(node: tree.PackageMethodDeclaration): e.PackageMethodEntity;
408
- ofTypeMethodDeclaration(node: tree.TypeMethodDeclaration): e.TypeMethodEntity;
409
- ofNestedMethodDeclaration(node: tree.NestedMethodDeclaration): e.NestedMethodEntity;
407
+ ofPackageFunctionDeclaration(node: tree.PackageFunctionDeclaration): e.PackageFunctionEntity;
408
+ ofMethodDeclaration(node: tree.MethodDeclaration): e.MethodEntity;
409
+ ofNestedFunctionDeclaration(node: tree.NestedFunctionDeclaration): e.NestedFunctionEntity;
410
410
  ofOperatorDeclaration(node: tree.OperatorDeclaration): e.OperatorEntity;
411
411
  ofPackageVariableGetterDeclaration(node: tree.PackageVariableGetterDeclaration): e.GetterEntity;
412
- ofTypeVariableGetterDeclaration(node: tree.TypeVariableGetterDeclaration): e.GetterEntity;
413
- ofTypeIndexedGetterDeclaration(node: tree.TypeIndexedGetterDeclaration): e.GetterEntity;
414
- ofTypeDereferencedVariableGetterDeclaration(node: tree.TypeDereferencedVariableGetterDeclaration): e.GetterEntity;
412
+ ofFieldGetterDeclaration(node: tree.FieldGetterDeclaration): e.GetterEntity;
413
+ ofIndexedElementGetterDeclaration(node: tree.IndexedElementGetterDeclaration): e.GetterEntity;
414
+ ofDereferencedVariableGetterDeclaration(node: tree.DereferencedVariableGetterDeclaration): e.GetterEntity;
415
415
  ofGetterDeclaration(node: GetterDeclaration): e.GetterEntity;
416
416
  ofPackageVariableSetterDeclaration(node: tree.PackageVariableSetterDeclaration): e.SetterEntity;
417
- ofTypeVariableSetterDeclaration(node: tree.TypeVariableSetterDeclaration): e.SetterEntity;
418
- ofTypeIndexedSetterDeclaration(node: tree.TypeIndexedSetterDeclaration): e.SetterEntity;
419
- ofTypeDereferencedVariableSetterDeclaration(node: tree.TypeDereferencedVariableSetterDeclaration): e.SetterEntity;
417
+ ofFieldSetterDeclaration(node: tree.FieldSetterDeclaration): e.SetterEntity;
418
+ ofIndexedElementSetterDeclaration(node: tree.IndexedElementSetterDeclaration): e.SetterEntity;
419
+ ofDereferencedVariableSetterDeclaration(node: tree.DereferencedVariableSetterDeclaration): e.SetterEntity;
420
420
  ofSetterDeclaration(node: SetterDeclaration): e.SetterEntity;
421
- ofTypeConstructorDeclaration(node: tree.TypeConstructorDeclaration): e.ConstructorEntity;
422
- ofTypeDestructorDeclaration(node: tree.TypeDestructorDeclaration): e.DestructorEntity;
423
- ofVariantDeclaration(node: tree.VariantDeclaration): e.TypeVariableEntity;
421
+ ofConstructorDeclaration(node: tree.ConstructorDeclaration): e.ConstructorEntity;
422
+ ofDestructorDeclaration(node: tree.DestructorDeclaration): e.DestructorEntity;
423
+ ofVariantDeclaration(node: tree.VariantDeclaration): e.FieldEntity;
424
424
  ofTypeExtensionDeclaration(node: tree.TypeExtensionDeclaration): e.TypeExtensionEntity;
425
425
  ofPackageImport(node: tree.PackageImport): e.PackageAliasEntity;
426
426
  private getContainingPackageLoadedFromDts;
427
- private createComputedTypeVariableEntities;
428
- private createTypeDereferenceOperatorEntities;
429
- private createTypeIndexerEntities;
430
- private areTypeIndexedAccessorDeclarationsEqual;
427
+ private createComputedFieldEntities;
428
+ private createDereferenceOperatorEntities;
429
+ private createIndexerEntities;
430
+ private areIndexedElementAccessorDeclarationsEqual;
431
431
  }
432
432
  type EntityClassMembers = Entity[keyof Entity];
433
433
  type GetNodesFromMethodsParameter<T> = T extends (node: infer TNode) => e.Entity ? (TNode extends tree.Node ? TNode : never) : never;
@@ -436,16 +436,16 @@ declare class ResultLocalVariableEntity {
436
436
  private readonly _analyzer;
437
437
  private readonly _entities;
438
438
  constructor(_analyzer: Analyzer);
439
- ofPackageMethodDeclaration(node: tree.PackageMethodDeclaration): e.LocalVariableEntity;
440
- ofTypeMethodDeclaration(node: tree.TypeMethodDeclaration): e.LocalVariableEntity;
441
- ofNestedMethodDeclaration(node: tree.NestedMethodDeclaration): e.LocalVariableEntity;
442
- ofMethodLiteral(node: tree.MethodLiteral): e.LocalVariableEntity;
443
- ofMethodBlockLiteral(node: tree.MethodBlockLiteral): e.LocalVariableEntity;
439
+ ofPackageFunctionDeclaration(node: tree.PackageFunctionDeclaration): e.LocalVariableEntity;
440
+ ofMethodDeclaration(node: tree.MethodDeclaration): e.LocalVariableEntity;
441
+ ofNestedFunctionDeclaration(node: tree.NestedFunctionDeclaration): e.LocalVariableEntity;
442
+ ofFunctionLiteral(node: tree.FunctionLiteral): e.LocalVariableEntity;
443
+ ofFunctionBlockLiteral(node: tree.FunctionBlockLiteral): e.LocalVariableEntity;
444
444
  ofOperatorDeclaration(node: tree.OperatorDeclaration): e.LocalVariableEntity;
445
445
  ofPackageVariableGetterDeclaration(node: tree.PackageVariableGetterDeclaration): e.LocalVariableEntity;
446
- ofTypeVariableGetterDeclaration(node: tree.TypeVariableGetterDeclaration): e.LocalVariableEntity;
447
- ofTypeIndexedGetterDeclaration(node: tree.TypeIndexedGetterDeclaration): e.LocalVariableEntity;
448
- ofTypeDereferencedVariableGetterDeclaration(node: tree.TypeDereferencedVariableGetterDeclaration): e.LocalVariableEntity;
446
+ ofFieldGetterDeclaration(node: tree.FieldGetterDeclaration): e.LocalVariableEntity;
447
+ ofIndexedElementGetterDeclaration(node: tree.IndexedElementGetterDeclaration): e.LocalVariableEntity;
448
+ ofDereferencedVariableGetterDeclaration(node: tree.DereferencedVariableGetterDeclaration): e.LocalVariableEntity;
449
449
  private createResultLocalVariableEntity;
450
450
  }
451
451
  declare class ValueLocalVariableEntity {
@@ -453,64 +453,64 @@ declare class ValueLocalVariableEntity {
453
453
  private readonly _entities;
454
454
  constructor(_analyzer: Analyzer);
455
455
  ofPackageVariableSetterDeclaration(node: tree.PackageVariableSetterDeclaration): e.VariableEntity;
456
- ofTypeVariableSetterDeclaration(node: tree.TypeVariableSetterDeclaration): e.VariableEntity;
457
- ofTypeIndexedSetterDeclaration(node: tree.TypeIndexedSetterDeclaration): e.VariableEntity;
458
- ofTypeDereferencedVariableSetterDeclaration(node: tree.TypeDereferencedVariableSetterDeclaration): e.VariableEntity;
456
+ ofFieldSetterDeclaration(node: tree.FieldSetterDeclaration): e.VariableEntity;
457
+ ofIndexedElementSetterDeclaration(node: tree.IndexedElementSetterDeclaration): e.VariableEntity;
458
+ ofDereferencedVariableSetterDeclaration(node: tree.DereferencedVariableSetterDeclaration): e.VariableEntity;
459
459
  }
460
460
  declare class Scope {
461
461
  private readonly _analyzer;
462
462
  private readonly _sourceFileScopes;
463
- private readonly _methodBlockLiteralScopes;
464
- private readonly _packageMethodDeclarationTypeParametersScopes;
465
- private readonly _packageMethodDeclarationValueParametersScopes;
466
- private readonly _structuredTypeMethodDeclarationTypeParametersScopes;
467
- private readonly _structuredTypeMethodDeclarationValueParametersScopes;
468
- private readonly _nestedMethodDeclarationTypeParametersScopes;
469
- private readonly _nestedMethodDeclarationValueParametersScopes;
470
- private readonly _methodLiteralScopes;
463
+ private readonly _functionBlockLiteralScopes;
464
+ private readonly _packageFunctionDeclarationTypeParametersScopes;
465
+ private readonly _packageFunctionDeclarationValueParametersScopes;
466
+ private readonly _structuredMethodDeclarationTypeParametersScopes;
467
+ private readonly _structuredMethodDeclarationValueParametersScopes;
468
+ private readonly _nestedFunctionDeclarationTypeParametersScopes;
469
+ private readonly _nestedFunctionDeclarationValueParametersScopes;
470
+ private readonly _functionLiteralScopes;
471
471
  private readonly _functionBlockScopes;
472
472
  private readonly _statementBlockScopes;
473
473
  private readonly _forEachStatementScopes;
474
474
  private readonly _catchClauseScopes;
475
475
  private readonly _packageStructuredTypeDeclarationTypeParametersScopes;
476
476
  private readonly _structuredTypeDeclarationBodyScopes;
477
- private readonly _packageMethodTypeDeclarationTypeParametersScopes;
478
- private readonly _methodTypeDeclarationBodyScopes;
477
+ private readonly _packageFunctionTypeDeclarationTypeParametersScopes;
478
+ private readonly _functionTypeDeclarationBodyScopes;
479
479
  private readonly _packageVariantTypeDeclarationTypeParametersScopes;
480
480
  private readonly _variantTypeDeclarationBodyScopes;
481
481
  private readonly _aliasTypeDeclarationBodyScopes;
482
482
  private readonly _packageAliasTypeDeclarationTypeParametersScopes;
483
483
  private readonly _operatorDeclarationScopes;
484
- private readonly _structuredTypeConstructorDeclarationScopes;
485
- private readonly _structuredTypeDestructorDeclarationScopes;
486
- private readonly _typeIndexedAccessorDeclarationParametersScopes;
484
+ private readonly _structuredConstructorDeclarationScopes;
485
+ private readonly _structuredDestructorDeclarationScopes;
486
+ private readonly _indexedElementAccessorDeclarationParametersScopes;
487
487
  private readonly _typeExtensionDeclarationScopes;
488
488
  constructor(_analyzer: Analyzer);
489
489
  ofSourceFile(node: tree.SourceFile): scope.IScope;
490
- ofMethodBlockLiteral(node: tree.MethodBlockLiteral): scope.IScope;
491
- ofPackageMethodDeclarationTypeParameters(node: tree.PackageMethodDeclaration): scope.IScope;
492
- ofPackageMethodDeclarationValueParameters(node: tree.PackageMethodDeclaration): scope.IScope;
493
- ofTypeMethodDeclarationTypeParameters(node: tree.TypeMethodDeclaration): scope.IScope;
494
- ofTypeMethodDeclarationValueParameters(node: tree.TypeMethodDeclaration): scope.IScope;
495
- ofNestedMethodDeclarationTypeParameters(node: tree.NestedMethodDeclaration): scope.IScope;
496
- ofNestedMethodDeclarationValueParameters(node: tree.NestedMethodDeclaration): scope.IScope;
497
- ofMethodLiteral(node: tree.MethodLiteral): scope.IScope;
490
+ ofFunctionBlockLiteral(node: tree.FunctionBlockLiteral): scope.IScope;
491
+ ofPackageFunctionDeclarationTypeParameters(node: tree.PackageFunctionDeclaration): scope.IScope;
492
+ ofPackageFunctionDeclarationValueParameters(node: tree.PackageFunctionDeclaration): scope.IScope;
493
+ ofMethodDeclarationTypeParameters(node: tree.MethodDeclaration): scope.IScope;
494
+ ofMethodDeclarationValueParameters(node: tree.MethodDeclaration): scope.IScope;
495
+ ofNestedFunctionDeclarationTypeParameters(node: tree.NestedFunctionDeclaration): scope.IScope;
496
+ ofNestedFunctionDeclarationValueParameters(node: tree.NestedFunctionDeclaration): scope.IScope;
497
+ ofFunctionLiteral(node: tree.FunctionLiteral): scope.IScope;
498
498
  ofFunctionBlock(node: tree.FunctionBlock): scope.IScope;
499
499
  ofStatementBlock(node: tree.StatementBlock): scope.IScope;
500
500
  ofForStatement(node: tree.ForStatement): scope.IScope;
501
501
  ofCatchClause(node: tree.CatchClause): scope.IScope;
502
502
  ofPackageStructuredTypeDeclarationTypeParameters(node: tree.PackageStructuredTypeDeclaration): scope.IScope;
503
503
  ofStructuredTypeDeclarationBody(node: tree.StructuredTypeDeclarationBody): scope.IScope;
504
- ofPackageMethodTypeDeclarationTypeParameters(node: tree.PackageMethodTypeDeclaration): scope.IScope;
505
- ofMethodTypeDeclarationBody(node: tree.MethodTypeDeclarationBody): scope.IScope;
504
+ ofPackageFunctionTypeDeclarationTypeParameters(node: tree.PackageFunctionTypeDeclaration): scope.IScope;
505
+ ofFunctionTypeDeclarationBody(node: tree.FunctionTypeDeclarationBody): scope.IScope;
506
506
  ofPackageVariantTypeDeclarationTypeParameters(node: tree.PackageVariantTypeDeclaration): scope.IScope;
507
507
  ofVariantTypeDeclarationBody(node: tree.VariantTypeDeclarationBody): scope.IScope;
508
508
  ofAliasTypeDeclarationBody(node: tree.AliasTypeDeclarationBody): scope.IScope;
509
509
  ofPackageAliasTypeDeclarationTypeParameters(node: tree.PackageAliasTypeDeclaration): scope.IScope;
510
510
  ofOperatorDeclaration(node: tree.OperatorDeclaration): scope.IScope;
511
- ofTypeConstructorDeclaration(node: tree.TypeConstructorDeclaration): scope.IScope;
512
- ofTypeDestructorDeclaration(node: tree.TypeDestructorDeclaration): scope.IScope;
513
- ofTypeIndexedAccessorDeclarationParameters(node: TypeIndexedAccessorDeclaration): scope.IScope;
511
+ ofConstructorDeclaration(node: tree.ConstructorDeclaration): scope.IScope;
512
+ ofDestructorDeclaration(node: tree.DestructorDeclaration): scope.IScope;
513
+ ofIndexedElementAccessorDeclarationParameters(node: IndexedElementAccessorDeclaration): scope.IScope;
514
514
  ofTypeExtensionDeclaration(node: tree.TypeExtensionDeclaration): scope.IScope;
515
515
  }
516
516
  declare class DefaultConstructors {
@@ -524,11 +524,11 @@ declare class DefaultConstructors {
524
524
  declare class OverriddenMember {
525
525
  private readonly _analyzer;
526
526
  constructor(_analyzer: Analyzer);
527
- getOverriddenVariables(node: tree.TypeVariableDeclaration | TypeVariableAccessorDeclaration): types.Variable[];
528
- getOverriddenMethods(node: tree.TypeMethodDeclaration): types.Method[];
527
+ getOverriddenVariables(node: tree.FieldDeclaration | FieldAccessorDeclaration): types.Variable[];
528
+ getOverriddenMethods(node: tree.MethodDeclaration): types.Method[];
529
529
  getOverriddenOperators(node: tree.OperatorDeclaration): types.Operator[];
530
- getOverriddenIndexers(node: TypeIndexedAccessorDeclaration): types.Indexer[];
531
- getOverriddenDereferenceOperators(node: TypeDereferencedVariableAccessorDeclaration): types.DereferenceOperator[];
530
+ getOverriddenIndexers(node: IndexedElementAccessorDeclaration): types.Indexer[];
531
+ getOverriddenDereferenceOperators(node: DereferencedVariableAccessorDeclaration): types.DereferenceOperator[];
532
532
  private findOverriddenVariableInType;
533
533
  private findOverriddenMethodInType;
534
534
  private findOverriddenOperatorInType;
@@ -561,9 +561,9 @@ declare class LinkedEntity {
561
561
  ofTypeWithMembers(entity: e.TypeEntityWithMembers, platform: PlatformKind): e.TypeEntityWithMembers | undefined;
562
562
  ofParameterType(entity: e.TypeParameterEntity, platform: PlatformKind): e.TypeParameterEntity | undefined;
563
563
  ofPackageVariable(entity: e.PackageVariableEntity, platform: PlatformKind): e.PackageVariableEntity | undefined;
564
- ofPackageMethod(entity: e.PackageMethodEntity, platform: PlatformKind): e.PackageMethodEntity | undefined;
565
- ofTypeVariable(entity: e.TypeVariableEntity, platform: PlatformKind): e.TypeVariableEntity | undefined;
566
- ofTypeMethod(entity: e.TypeMethodEntity, platform: PlatformKind): e.TypeMethodEntity | undefined;
564
+ ofPackageFunction(entity: e.PackageFunctionEntity, platform: PlatformKind): e.PackageFunctionEntity | undefined;
565
+ ofField(entity: e.FieldEntity, platform: PlatformKind): e.FieldEntity | undefined;
566
+ ofMethod(entity: e.MethodEntity, platform: PlatformKind): e.MethodEntity | undefined;
567
567
  ofOperator(entity: e.OperatorEntity, platform: PlatformKind): e.OperatorEntity | undefined;
568
568
  ofConstructor(entity: e.ConstructorEntity, platform: PlatformKind): e.ConstructorEntity | undefined;
569
569
  ofIndexer(entity: e.IndexerEntity, platform: PlatformKind): e.IndexerEntity | undefined;
@@ -582,7 +582,7 @@ export declare class LinkedMultiPlatformPackage {
582
582
  private get memberLookup();
583
583
  constructor(analyzer: Analyzer, pkg: e.PackageEntity, implementationPackage: e.PackageEntity, targetPlatform: PlatformKind);
584
584
  getLinkedVariable(entity: e.PackageVariableEntity): e.PackageVariableEntity | undefined;
585
- getLinkedMethod(entity: e.PackageMethodEntity): e.PackageMethodEntity | undefined;
585
+ getLinkedMethod(entity: e.PackageFunctionEntity): e.PackageFunctionEntity | undefined;
586
586
  getLinkedTypeWithMembers(entity: e.TypeEntityWithMembers): LinkedTypeWithMembers | undefined;
587
587
  getLinkedParameterType(entity: e.TypeParameterEntity): e.TypeParameterEntity | undefined;
588
588
  /**
@@ -602,8 +602,8 @@ export declare class LinkedTypeWithMembers {
602
602
  private readonly _memberLookup;
603
603
  private get memberLookup();
604
604
  constructor(analyzer: Analyzer, externalType: e.TypeEntityWithMembers, targetType: e.TypeEntityWithMembers, linkedPackage: LinkedMultiPlatformPackage);
605
- getLinkedVariable(entity: e.TypeVariableEntity): e.TypeVariableEntity | undefined;
606
- getLinkedMethod(entity: e.TypeMethodEntity): e.TypeMethodEntity | undefined;
605
+ getLinkedVariable(entity: e.FieldEntity): e.FieldEntity | undefined;
606
+ getLinkedMethod(entity: e.MethodEntity): e.MethodEntity | undefined;
607
607
  getLinkedOperator(entity: e.OperatorEntity): e.OperatorEntity | undefined;
608
608
  getLinkedConstructor(entity: e.ConstructorEntity): e.ConstructorEntity | undefined;
609
609
  getLinkedIndexer(entity: e.IndexerEntity): e.IndexerEntity | undefined;
@@ -622,7 +622,7 @@ export declare enum TypeAssignabilityFlags {
622
622
  NotAssignable = 0,
623
623
  Identity = 1,
624
624
  DerivedToBase = 2,
625
- MethodTypes = 4,
625
+ FunctionTypes = 4,
626
626
  ImplicitConversion = 8,
627
627
  First = 1,
628
628
  Last = 8
@@ -658,11 +658,20 @@ export declare class PackageImportInfo {
658
658
  readonly isAliasedImport: e.PackageAliasEntity | undefined;
659
659
  constructor(entity: e.PackageEntity, translationPackage: AnalyzedTranslationPackage | undefined, isAliasedImport: e.PackageAliasEntity | undefined);
660
660
  }
661
- export declare class ExpressionDenotesMethodCheckResult {
662
- readonly candidates: readonly WithLocalization<AccessedMethod>[];
663
- readonly suitableMethods: readonly WithLocalization<AccessedMethod>[];
664
- get singleSuitableMethod(): WithLocalization<AccessedMethod> | undefined;
665
- constructor(candidates: readonly WithLocalization<AccessedMethod>[], suitableMethods: readonly WithLocalization<AccessedMethod>[]);
661
+ export declare class TypeUtils {
662
+ private readonly _analyzer;
663
+ constructor(_analyzer: Analyzer);
664
+ getCommonObjectAndAspectTypesOfUnion(unionType: types.UnionType): readonly types.StructuredType[];
665
+ private getTypesForCommonTypesSearch;
666
+ private addTypeAndCollectAllBaseTypes;
667
+ private addTypeIfUnique;
668
+ private removeBaseTypes;
669
+ }
670
+ export declare class ExpressionDenotesFunctionCheckResult {
671
+ readonly candidates: readonly WithLocalization<AccessedFunction>[];
672
+ readonly suitableFunctions: readonly WithLocalization<AccessedFunction>[];
673
+ get singleSuitableFunction(): WithLocalization<AccessedFunction> | undefined;
674
+ constructor(candidates: readonly WithLocalization<AccessedFunction>[], suitableFunctions: readonly WithLocalization<AccessedFunction>[]);
666
675
  }
667
676
  export declare class ExpressionDenotesOperatorCheckResult {
668
677
  readonly candidates: readonly WithLocalization<types.Operator>[];
@@ -699,14 +708,14 @@ declare namespace AvailablePackage {
699
708
  export {};
700
709
  }
701
710
  export declare class DeclaredTypeMemberEntities {
702
- readonly variables: readonly e.TypeVariableEntity[];
703
- readonly methods: readonly e.TypeMethodEntity[];
711
+ readonly variables: readonly e.FieldEntity[];
712
+ readonly methods: readonly e.MethodEntity[];
704
713
  readonly operators: readonly e.OperatorEntity[];
705
714
  readonly constructors: readonly e.ConstructorEntity[];
706
715
  readonly destructors: readonly e.DestructorEntity[];
707
716
  readonly indexers: readonly e.SourceIndexerEntity[];
708
717
  readonly dereferenceOperators: readonly e.DereferenceOperatorEntity[];
709
718
  get namedMembers(): NamedTypeMemberEntity[];
710
- 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[]);
719
+ constructor(variables: readonly e.FieldEntity[], methods: readonly e.MethodEntity[], operators: readonly e.OperatorEntity[], constructors: readonly e.ConstructorEntity[], destructors: readonly e.DestructorEntity[], indexers: readonly e.SourceIndexerEntity[], dereferenceOperators: readonly e.DereferenceOperatorEntity[]);
711
720
  }
712
721
  export {};
@@ -1,7 +1,7 @@
1
1
  import { Diagnostic } from '../diagnostic/Diagnostic.js';
2
2
  import { CallExpression } from '../tree/index.js';
3
3
  import * as types from '../types/index.js';
4
- import { AccessedMethod } from './AccessedMethod.js';
4
+ import { AccessedFunction } from './AccessedFunction.js';
5
5
  import { FoundAnonymousDeclaration } from './FoundDeclaration.js';
6
6
  import { WithLocalization } from './Localization.js';
7
7
  import { Analyzer } from './index.js';
@@ -14,21 +14,21 @@ export declare class Resolver {
14
14
  private resolveConstructorCallExpressionMeaning;
15
15
  private getNodeForDiagnostics;
16
16
  }
17
- export type Meaning = Meaning_methodCall | Meaning_operatorCall | Meaning_objectMethodCall | Meaning_constructorCall | Meaning_unresolved;
18
- declare class Meaning_methodCall {
19
- readonly method: WithLocalization<AccessedMethod>;
20
- readonly kind = "method-call";
21
- constructor(method: WithLocalization<AccessedMethod>);
17
+ export type Meaning = Meaning_functionCall | Meaning_operatorCall | Meaning_objectFunctionCall | Meaning_constructorCall | Meaning_unresolved;
18
+ declare class Meaning_functionCall {
19
+ readonly func: WithLocalization<AccessedFunction>;
20
+ readonly kind = "function-call";
21
+ constructor(func: WithLocalization<AccessedFunction>);
22
22
  }
23
23
  declare class Meaning_operatorCall {
24
24
  readonly operator: WithLocalization<types.Operator>;
25
25
  readonly kind = "operator-call";
26
26
  constructor(operator: WithLocalization<types.Operator>);
27
27
  }
28
- declare class Meaning_objectMethodCall {
29
- readonly type: types.MethodType;
30
- readonly kind = "object-method-call";
31
- constructor(type: types.MethodType);
28
+ declare class Meaning_objectFunctionCall {
29
+ readonly type: types.FunctionType;
30
+ readonly kind = "object-function-call";
31
+ constructor(type: types.FunctionType);
32
32
  }
33
33
  declare class Meaning_constructorCall {
34
34
  /**