import type { Buff } from '../buffs/index.ts'; import type { ItemHrid } from '../items/types.ts'; import type { MonsterHrid } from '../monsters/index.ts'; import type { DropTable } from '../shared/index.ts'; import type { ExperienceGain, LevelRequirement } from '../shared/types.ts'; import type { ItemInput } from '../shop/types.ts'; import type { ACTION_CATEGORY_HRIDS, ACTION_FUNCTION_HRIDS, ACTION_HRIDS, ACTION_TYPES_HRID } from './constants.ts'; export type ActionCategoryHrid = (typeof ACTION_CATEGORY_HRIDS)[number]; export interface ActionCategory { hrid: ActionCategoryHrid; name: string; type: ActionTypeHrid; sortIndex: number; } export type ActionTypeHrid = (typeof ACTION_TYPES_HRID)[number]; export interface ActionType { hrid: ActionTypeHrid; name: string; sortIndex: number; } export type ActionFunctionHrid = (typeof ACTION_FUNCTION_HRIDS)[number]; export type ActionHrid = (typeof ACTION_HRIDS)[number]; /** * Spawn */ export interface Spawn { combatMonsterHrid: MonsterHrid; difficultyTier: number; rate: number; strength: number; } export interface SpawnMap { maxSpawnCount: number; maxTotalStrength: number; spawns: Spawn[] | null; } export interface CombatZone { isDungeon: boolean; fightInfo: { randomSpawnInfo: SpawnMap; bossSpawns: Spawn[] | null; battlesPerBoss: number; }; dungeonInfo: { keyItemHrid: ItemHrid | ''; rewardDropTable: DropTable[] | null; maxWaves: number; randomSpawnInfoMap: Record | null; fixedSpawnsMap: Record | null; }; } export interface Action { hrid: ActionHrid; function: ActionFunctionHrid; type: ActionTypeHrid; category: ActionCategoryHrid; name: string; maxDifficulty: number; levelRequirement: LevelRequirement; baseTimeCost: number; experienceGain: ExperienceGain; dropTable?: DropTable[] | null; essenceDropTable?: DropTable[] | null; rareDropTable?: DropTable[] | null; upgradeItemHrid: ItemHrid | ''; retainAllEnhancement: boolean; inputItems: ItemInput | null; outputItems: ItemInput | null; combatZoneInfo?: CombatZone; maxPartySize: number; buffs?: Buff[] | null; sortIndex: number; } //# sourceMappingURL=types.d.ts.map