import { System } from '../engine/system'; import { IEntity, IAction } from '../engine/state'; export interface IBodyComponent { mass?: number; size?: number[]; velocity?: number[]; type?: 'box' | 'sphere' | 'cylinder'; } export interface IImpulseAction extends IAction { type: 'IMPULSE'; entityId: string; force: number[]; } export declare const DoImpulse: (entity: IEntity, force: number[]) => IImpulseAction; export interface IAttackAction extends IAction { type: 'ATTACK'; entityId: string; } export declare const DoAttack: (entity: IEntity) => IAttackAction; export declare class Physics extends System { private bodies; private world; config_physics(physics: any): void; add(entity: IEntity): void; remove(entity: IEntity): void; update_body(entity: IEntity): void; HandleImpulse(a: IImpulseAction): void; HandleAttack(a: IAttackAction): void; tick(delta: any): void; }