= keyof T> =
                  
                  
                      TKey extends keyof T ? { [P in TKey]-?:T[TKey] } & Partial<Record<Exclude<keyof T, TKey>, never>>: never
                  
                  
                  
                  
                  
                  const mo = { foo: 3, bar: 'ere' };
                  
                  
                  
                  
                  
                  type MyObject<O> = EitherField<{ [key in keyof O]: boolean }>;
                  
                  
                  
                  
                  
                  const x: MyObject<typeof mo> = {
                  
                  
                      foo: true, // Надо позволить только один из ключей
                  
                  
                      bar: true // Вот тут ошибку надо
                  
                  
                  };
                  
                  
                
Офигеть! 😮 Спасибо!
Обсуждают сегодня