import { ActionBattleHotbarSkill, ActionBattleOptions } from '../types'; export interface ActionBattleAttackPreviewState { active: boolean; id: number; direction: string; startedAt: number; durationMs: number; color: number; accentColor: number; } export interface ActionBattleTargetingState { active: boolean; skill: ActionBattleHotbarSkill | null; range: number; offset: { x: number; y: number; }; aoeMask: string[] | string; } export declare const actionBattleUiOptions: import('canvasengine').WritableObjectSignal; export declare const actionBattleSkillOptions: import('canvasengine').WritableObjectSignal; export declare const actionBattleCombatOptions: import('canvasengine').WritableObjectSignal; export declare const actionBattleTargetingState: import('canvasengine').WritableObjectSignal; export declare const actionBattleAttackPreviewState: import('canvasengine').WritableObjectSignal; export declare const setActionBattleOptions: (options?: ActionBattleOptions) => void; export declare const startTargeting: (skill: ActionBattleHotbarSkill, initialOffset?: { x: number; y: number; }, onConfirm?: (target: { x: number; y: number; }) => void) => void; export declare const stopTargeting: () => void; export declare const confirmActionBattleTarget: (target: { x: number; y: number; }) => void; export declare const moveTargetingOffset: (dx: number, dy: number) => void; export declare const startAttackPreview: (options: { direction: string; durationMs?: number; color?: number; accentColor?: number; }) => number; export declare const stopAttackPreview: (id?: number) => void; /** * Tile size used to place a targeting cursor: the configured one, else the map's, as the server does. * It must never come from the hitbox of the player: that one is the size of its body, not of a tile. */ export declare const resolveActionBattleClientTileSize: (engine: any) => { width: number; height: number; };