import { Entity, MonsterMove } from '../entity.js'; import { SpawnContext } from '../spawn.js'; import { Vec3 } from '@quake2ts/shared'; import { EntitySystem } from '../system.js'; export interface MonsterConfig { model: string; health: number; mass: number; mins?: { x: number; y: number; z: number; }; maxs?: { x: number; y: number; z: number; }; fly?: boolean; } export declare function createMonsterSpawn(config: MonsterConfig): (self: Entity, context: SpawnContext) => void; export declare function M_SetAnimation(self: Entity, move: MonsterMove, context: any): void; export declare function M_ShouldReactToPain(self: Entity, context: EntitySystem): boolean; export declare function M_CheckGib(self: Entity, context: any): boolean; export declare function M_AllowSpawn(self: Entity, context: any): boolean; export declare function walkmonster_start(self: Entity, context: any): void; export declare function flymonster_start(self: Entity, context: any): void; export declare function M_ProjectFlashSource(self: Entity, offset: Vec3, forward: Vec3, right: Vec3): Vec3; export declare function M_MonsterDodge(self: Entity, attacker: Entity, eta: number): void; export declare function monster_done_dodge(self: Entity): void; export declare function M_CheckClearShot(self: Entity, offset: Vec3, context: EntitySystem): boolean; export declare function M_AdjustBlindfireTarget(self: Entity, start: Vec3, target: Vec3, right: Vec3, context: any): Vec3 | null; //# sourceMappingURL=common.d.ts.map