import type { Room } from "../room/base.js"; import type { State } from "../state/state.js"; import type { ParentTrait } from "../traits/parent.js"; import type { SelectableChildrenTrait } from "../traits/selectableChildren.js"; import { Command, Target } from "../command.js"; type ParentSelecta = SelectableChildrenTrait & ParentTrait; export declare class Select extends Command { private indexes; private parent; /** * Mark items as selected * @param parent target parent of child elements you want to select * @param idx single number or array of all entity indexes to select. Omit to SELECT ALL. These are not "selection indexes" but entity's index in its parent. */ constructor(parent: Target, idx?: number | number[]); execute(state: State, room: Room): Promise; undo(state: State, room: Room): Promise; } export declare class Deselect extends Command { private indexes; private parent; /** * Clear selection marking from items * @param parent target parent of child elements you want to deselect * @param idx single number or array of all indexes to deselect. Omit to DESELECT ALL. These are not "selection indexes" but entity's index in its parent. */ constructor(parent: Target, idx?: number | number[]); execute(state: State, room: Room): Promise; undo(state: State, room: Room): Promise; } export declare class ToggleSelection extends Command { private lastStates; private indexes; private parent; /** * Toggle selection marking of items * @param parent target parent of child elements you want to toggle selection * @param idx single number or array of all indexes to toggle. Omit to TOGGLE ALL. These are not "selection indexes" but entity's index in its parent. */ constructor(parent: Target, idx?: number | number[]); execute(state: State, room: Room): Promise; undo(state: State, room: Room): Promise; } export {};