Я создаю конструктор с типами, способ, которым я объявляю тип:
export type BuilderInterface<T> = {
[key in keyof T]: (arg: T[key]) => BuilderInterface<T> } & {
build(): T
}
При запуске ESLint жалуется, говоря: "BuilderInteface" was used before it was defined (no-use-before-define)
.Что является нормальным, поскольку мне нужно утверждать, что каждый аргумент функции возвращает построитель одного и того же вида.
Какими способами я должен объявить это, не нарушая правила eslint?Должен ли я игнорировать правило напрямую?Почему?