TypeScript · Senior · Запитання 54 з 75

Як типобезпечний builder накопичує інформацію у своєму типі?

class Query<T extends object = {}> {
  where<K extends string, V>(k: K, v: V): Query<T & Record<K, V>> { /* ... */ }
}

Пояснення

Фінальний .build() може повернути точний тип, а неприпустимий порядок викликів можна заборонити.

Де почитати

Помилка в запитанні

TypeScript · Senior · запитання 54

Перевірте себе

Пройдіть тест TypeScript · Senior: запитання й варіанти перемішуються, а наприкінці - розбір помилок.

Пройти цей тест