@@ -2126,6 +2126,11 @@ namespace ts {
2126
2126
return false;
2127
2127
}
2128
2128
2129
+ function isTypeSymbolAccessible(typeSymbol: Symbol, enclosingDeclaration: Node): boolean {
2130
+ const access = isSymbolAccessible(typeSymbol, enclosingDeclaration, SymbolFlags.Type, /*shouldComputeAliasesToMakeVisible*/ false);
2131
+ return access.accessibility === SymbolAccessibility.Accessible;
2132
+ }
2133
+
2129
2134
/**
2130
2135
* Check if the given symbol in given enclosing declaration is accessible and mark all associated alias to be visible if requested
2131
2136
*
@@ -2456,8 +2461,7 @@ namespace ts {
2456
2461
// Ignore constraint/default when creating a usage (as opposed to declaration) of a type parameter.
2457
2462
return createTypeReferenceNode(name, /*typeArguments*/ undefined);
2458
2463
}
2459
- if (!inTypeAlias && type.aliasSymbol &&
2460
- isSymbolAccessible(type.aliasSymbol, context.enclosingDeclaration, SymbolFlags.Type, /*shouldComputeAliasesToMakeVisible*/ false).accessibility === SymbolAccessibility.Accessible) {
2464
+ if (!inTypeAlias && type.aliasSymbol && isTypeSymbolAccessible(type.aliasSymbol, context.enclosingDeclaration)) {
2461
2465
const name = symbolToTypeReferenceName(type.aliasSymbol);
2462
2466
const typeArgumentNodes = mapToTypeNodes(type.aliasTypeArguments, context);
2463
2467
return createTypeReferenceNode(name, typeArgumentNodes);
@@ -3226,7 +3230,7 @@ namespace ts {
3226
3230
buildSymbolDisplay(type.symbol, writer, enclosingDeclaration, SymbolFlags.Type, SymbolFormatFlags.None, nextFlags);
3227
3231
}
3228
3232
else if (!(flags & TypeFormatFlags.InTypeAlias) && type.aliasSymbol &&
3229
- isSymbolAccessible(type.aliasSymbol, enclosingDeclaration, SymbolFlags.Type, /*shouldComputeAliasesToMakeVisible*/ false).accessibility === SymbolAccessibility.Accessible ) {
3233
+ ((flags & TypeFormatFlags.UseAliasEvenIfNotAccessible) || isTypeSymbolAccessible(type.aliasSymbol, enclosingDeclaration)) ) {
3230
3234
const typeArguments = type.aliasTypeArguments;
3231
3235
writeSymbolTypeReference(type.aliasSymbol, typeArguments, 0, length(typeArguments), nextFlags);
3232
3236
}
0 commit comments