Sequelize не поставляется с собственными определениями типов, поэтому для их добавления вам необходимо установить их из DefinitiveTyped
npm install @types/sequelize
Вы можете создать модель непосредственно с этими определениями типов на месте.Например, вы можете проверить тесты sequelize.d.ts
Похоже на
interface TaskAttributes {
revision? : number;
name? : string;
}
// For your instance methods
interface TaskInstance extends Sequelize.Instance<TaskAttributes> {
upRevision(): void { ... };
}
const GTask = s.define<TaskInstance, TaskAttributes>( 'task', {
revision : Sequelize.INTEGER,
name : Sequelize.STRING
} );
Что касается вашего второго вопроса. Umzug использует простые файлы JS для ваших миграций, поэтому вам придется либо скомпилировать их в файлы JS, а затем использовать их (на этапе сборки, прежде чем запускать миграции), либо просто написать их на JavaScript ине TypeScript.