Как лучше всего ввести приведенный ниже код без Promise: any, поскольку он у меня сейчас есть?
export const up = function(knex: knex, Promise: any): Promise<knex> {
return Promise.all([
knex.schema.createTable(
'counters',
(table: knex.TableBuilder): void => {
table.increments('id').primary();
table.integer('count');
}
),
]);
};
Я пробовал PromiseConstructor, но потом возникает ошибка с возвратом Promise<knex>. Не могу найти документацию по вводу knex.js миграции.






Почему возвращаемый тип должен быть Promise<knex>?
knex.schema.createTable возвращает SchemaBuilder, который расширяет ChainableInterface, что в конечном итоге расширяет Bluebird<any>, поэтому тип возвращаемого значения — Promise<any[]>.