使用typescript对v5进行续集,键入model.d.ts文件所需的类型

使用typescript对v5进行续集,键入model.d.ts文件所需的类型,typescript,sequelize.js,Typescript,Sequelize.js,这是我从V4升级到V5后收到的错误消息 我可以从库中注释出未知的部分,其他的一切都运行得很好 node_modules/sequelize/types/lib/model.d.ts:108:29-错误TS1110: 应键入 108方法:字符串|[string,…未知[] 这是我的典型模型定义: interface IAllergenExtend extends Model { id?: number; name: string; description: string; upda

这是我从V4升级到V5后收到的错误消息

我可以从库中注释出未知的部分,其他的一切都运行得很好

node_modules/sequelize/types/lib/model.d.ts:108:29-错误TS1110: 应键入

108方法:字符串|[string,…未知[]

这是我的典型模型定义:

interface IAllergenExtend extends Model {
  id?: number;
  name: string;
  description: string;
  updatedAt?: string;
  createdAt?: string;
}

type AllergenModel = typeof Model &
  (new (values?: object, options?: BuildOptions) => IAllergenExtend) & {
    associate: (model: IDB) => any;
  };

const allergenFactory = (sequalize: Sequelize) => {
  const Allergen = (<AllergenModel>sequalize.define('Allergen', {
    id: {
      allowNull: false,
      autoIncrement: true,
      primaryKey: true,
      type: DataTypes.INTEGER
    },
    name: {
      allowNull: false,
      type: DataTypes.TEXT
    },
    description: {
      allowNull: false,
      type: DataTypes.TEXT
    }
  })) as AllergenModel;

  Allergen.associate = (model: IDB) => {
    Allergen.belongsToMany(model.Dish, {
      through: db.AllergenDish,
      foreignKey: 'allergenId',
      as: 'dishes'
    });
  };

  return Allergen;
};

export { allergenFactory, AllergenModel };
接口IAllergenExtend扩展模型{
id?:编号;
名称:字符串;
描述:字符串;
updatedAt?:字符串;
createdAt?:字符串;
}
类型模型=类型模型&
(新的(值?:对象,选项?:构建选项)=>IAllergenExtend)和{
助理:(型号:IDB)=>任何;
};
const factory=(sequalize:Sequelize)=>{
常量过敏原=(序列化定义('过敏原'){
身份证:{
allowNull:错,
自动递增:真,
primaryKey:没错,
类型:DataTypes.INTEGER
},
姓名:{
allowNull:错,
类型:DataTypes.TEXT
},
说明:{
allowNull:错,
类型:DataTypes.TEXT
}
}))作为模型;
过敏原关联=(型号:IDB)=>{
过敏原。属于胃病(模型。盘{
通过:db.dish,
外键:“过敏原”,
比如:“盘子”
});
};
回归变应原;
};
出口{过敏原工厂,过敏原模型};

检查您键入的脚本版本。我必须更新到4.27.34才能解决此问题。

我有节点12.13.0和TS版本3.7.2,使用Sequelize 5.21.2时收到此错误