@@ -2235,3 +2235,26 @@ class Unbounded<T> {
2235
2235
}
2236
2236
}
2237
2237
2238
+ // Repro from #23940
2239
+
2240
+ interface I7 {
2241
+ >I7 : Symbol(I7, Decl(keyofAndIndexedAccess.ts, 627, 1))
2242
+
2243
+ x: any;
2244
+ >x : Symbol(I7.x, Decl(keyofAndIndexedAccess.ts, 631, 14))
2245
+ }
2246
+ type Foo7<T extends number> = T;
2247
+ >Foo7 : Symbol(Foo7, Decl(keyofAndIndexedAccess.ts, 633, 1))
2248
+ >T : Symbol(T, Decl(keyofAndIndexedAccess.ts, 634, 10))
2249
+ >T : Symbol(T, Decl(keyofAndIndexedAccess.ts, 634, 10))
2250
+
2251
+ declare function f7<K extends keyof I7>(type: K): Foo7<I7[K]>;
2252
+ >f7 : Symbol(f7, Decl(keyofAndIndexedAccess.ts, 634, 32))
2253
+ >K : Symbol(K, Decl(keyofAndIndexedAccess.ts, 635, 20))
2254
+ >I7 : Symbol(I7, Decl(keyofAndIndexedAccess.ts, 627, 1))
2255
+ >type : Symbol(type, Decl(keyofAndIndexedAccess.ts, 635, 40))
2256
+ >K : Symbol(K, Decl(keyofAndIndexedAccess.ts, 635, 20))
2257
+ >Foo7 : Symbol(Foo7, Decl(keyofAndIndexedAccess.ts, 633, 1))
2258
+ >I7 : Symbol(I7, Decl(keyofAndIndexedAccess.ts, 627, 1))
2259
+ >K : Symbol(K, Decl(keyofAndIndexedAccess.ts, 635, 20))
2260
+
0 commit comments