[K in keyof T]: Date extends T[K] ? D : T[K];
};
https://www.typescriptlang.org/play?#code/C4TwDgpgBAsghmAInYEAqB7APGqEAeqAdgCYDOUAShAMYYBOJWZw9AlkQOYA0UcRIAHy9EgqAF4oUAN4AoKQG0A0lA5QA1hBAYAZlDQBdAFxRkqPIQikKaZQagB+U1BO2lBgNyyAvl9kdUeh04GmgAYQwiHTZ6AFsIEgBJVFiZeVUSExZ2Li8pIjh4rNYOTjyoABsMGhQ2SIdinLL0gDc2CAB3MwgG0xQIctZ+MhDgOqJEzKhs0q9vWVlQSCgIqJj4pJSYCVgEbswsVei4hOSIWN4ZrkEvIA
блин как это прочитать)
Рассматриваем ключи объекта T Для каждого такого ключа K, если тип T[K] является расширением даты, тогда подставляем тип D, в противном случае оставляем исходный тип
Обсуждают сегодня