нужно добавить constructor для статического метода
А почему Model.prototype с типом any?
Почему возвращается стрелочная функция?А что по Вашему должно возвращаться?
И чем вариант modelProto[methodName].call(instance, settings) лучше modelProto[methodName](settings)?Второй вариант вызовет метод непосредственно с прототипом в качестве this, а значит все изменения this в методе применятся к прототипу и тест сломает Ваш класс, метод call у функции (метод - это та же функция) позволяет задать произвольный this при вызове
тест также проходит с неверными значениями и при min > max и min < max,Вы в тесте проверяете любое исключение, скорее всего Ваш код падает еще в каком то месте, в toThrow можно передать объект ошибки (матчится глубоким сравнением), строку (сравнивает с message) или регулярку (матчит message)
а должен только с min > max
using NamespaceName такой экстеншн никак не повлияет на мой код.
в других языках, расширение методов обычная и очень удобная практика
MVC - это паттерн программирования для разделения данных и визуального представление этих данных.
export {} // Экспорт без объекта не работаетздесь фигурные скобки - это не объект, это особый синтаксисэто транспилится вexport = init // Но чем это закончится, переопределение export, думаю ничем хорошим
module.export = initв JS такое не возможно, в нативные модули это не компилируется, такой синтаксис не рекомендованнормально это делают так:require("./file").init() // Намного лучше выглядит import file from "./file" // Чем это file.init()
import {init} from "./file";
init();но нужно и экспортировать нормально:export function init(): void {}обычно в индексе пишут реэкспорты:
Default.ts
index.ts // Где индекс собирает все конфиги
export * as Default from './Default';"moduleResolution": "Node",правильное значение -
node, регистр имеет значение
ты неправильно тестируешь.
Смотрите, что у Вас срабатывает раз в час.
Если запустить ноду с флагом --inspect то можно будет подключится к ней из Chrome Dev Tools и посмотреть данные профилировщика