(node, symbol)
| 60403 | ignoreErrors ? unknownSymbol : getUnresolvedSymbolForEntityName(name); |
| 60404 | } |
| 60405 | function getTypeReferenceType(node, symbol) { |
| 60406 | if (symbol === unknownSymbol) { |
| 60407 | return errorType; |
| 60408 | } |
| 60409 | symbol = getExpandoSymbol(symbol) || symbol; |
| 60410 | if (symbol.flags & (32 /* SymbolFlags.Class */ | 64 /* SymbolFlags.Interface */)) { |
| 60411 | return getTypeFromClassOrInterfaceReference(node, symbol); |
| 60412 | } |
| 60413 | if (symbol.flags & 524288 /* SymbolFlags.TypeAlias */) { |
| 60414 | return getTypeFromTypeAliasReference(node, symbol); |
| 60415 | } |
| 60416 | // Get type from reference to named type that cannot be generic (enum or type parameter) |
| 60417 | var res = tryGetDeclaredTypeOfSymbol(symbol); |
| 60418 | if (res) { |
| 60419 | return checkNoTypeArguments(node, symbol) ? getRegularTypeOfLiteralType(res) : errorType; |
| 60420 | } |
| 60421 | if (symbol.flags & 111551 /* SymbolFlags.Value */ && isJSDocTypeReference(node)) { |
| 60422 | var jsdocType = getTypeFromJSDocValueReference(node, symbol); |
| 60423 | if (jsdocType) { |
| 60424 | return jsdocType; |
| 60425 | } |
| 60426 | else { |
| 60427 | // Resolve the type reference as a Type for the purpose of reporting errors. |
| 60428 | resolveTypeReferenceName(node, 788968 /* SymbolFlags.Type */); |
| 60429 | return getTypeOfSymbol(symbol); |
| 60430 | } |
| 60431 | } |
| 60432 | return errorType; |
| 60433 | } |
| 60434 | /** |
| 60435 | * A JSdoc TypeReference may be to a value, but resolve it as a type anyway. |
| 60436 | * Example: import('./b').ConstructorFunction |
no test coverage detected
searching dependent graphs…