/** 合成/升级所需配表(项目层实现,MX 层只依赖接口) */ export interface IComposeConfigProvider { getWeapon2Type(weapon2Id: number): number; getWeapon1Group(weapon1Id: number): readonly number[]; getWeapon1ByGroupSequence(sequence: readonly number[]): number | null; getWeapon2IdForWeapon1(weapon1Id: number): number | null; getMaxWeaponLevel(weapon1Id: number): number; isSingleCellWeapon1(weapon1Id: number): boolean; /** 被动 buff 是否可在未翻开格产出该 Weapon2(单字/组合字/蟠桃树等) */ allowsPassiveDigSpawn(weapon2Id: number): boolean; /** 蟠桃树等:落空 Put 后转 Dig,源格保持 Dig,可拖回背包 */ passiveSpawnKeepsDigCell(weapon2Id: number): boolean; /** 保持 Dig 格的字块(蟠桃树)可合成等级上限 */ getKeepDigTileMaxLevel(weapon2Id: number): number; /** 五行显示等级上限:同 herotype 的 Hero.level 最大值 */ getElementMaxLevel(textType: number): number; /** * 五行 Hero.id:herotype=Text.type 且 level=显示等级。 * @param textType Text.type(1–5) * @param level 显示等级 */ getElementHeroId(textType: number, level: number): number | null; }