import { Command } from '../../classes'; import { ICommand } from './command.interface'; /** * Represents a command handler. * Command handlers are used to execute commands. * * @publicApi */ export type ICommandHandler = TCommand extends Command ? { /** * Executes a command. * @param command The command to execute. */ execute(command: TCommand): Promise; } : { /** * Executes a command. * @param command The command to execute. */ execute(command: TCommand): Promise; };