import { IViewer } from "./IViewer"; export interface ICommandService { executeCommand(id: string, ...args: any[]): any; } export type ICommandsMap = Map; export interface ICommandHandler { (viewer: any, ...args: any[]): any; } export interface ICommand { id: string; handler: ICommandHandler; thisArg?: any; description?: ICommandDescription; } export interface ICommandDescription { readonly description: string; } export interface ICommands { registerCommand(id: string, handler: ICommandHandler, description?: ICommandDescription, thisArg?: any): void; registerCommandAlias(id: string, alias: string): void; getCommands(): ICommandsMap; getCommand(id: string): ICommand | undefined; executeCommand(id: string, viewer: IViewer, ...args: any[]): any; } //# sourceMappingURL=ICommands.d.ts.map