N.º 258 · Difícil · mapped types
Qué claves son opcionales
Implementa `OptionalKeys<T>` para que produzca la unión de las claves de `T` que son opcionales, y `never` cuando ninguna lo es.
Puzle
optional-keys.tsIntento 1 de 4Aún sin comprobar
Sustituye ??? — tu solución se comprueba con los casos de abajo. Tab indenta; pulsa Escape y luego Tab para sacar el foco.
Comprobaciones
3OptionalKeys<{ a: string; b?: number }>—→ 'b'OptionalKeys<{ a: string }>—→ neverOptionalKeys<{ a?: 1; b?: 2 }>—→ 'a' | 'b'
Cómo se juzga una comprobación Igualdad exacta de tipos, no asignabilidad — una intersección no es lo mismo que el objeto aplanado.
Cómo le fue a todo el mundo
Menos de 5 personas han resuelto este puzle hasta ahora. La distribución aparece cuando la muestra sea lo bastante grande como para significar algo.
Juego corto
Menos caracteresAún no hay marcas públicas.

