import type { ClientMessageConditions, ClientMessageContext } from "../../conditions/context/clientMessage.js"; import type { State } from "../../state/state.js"; import type { Command } from "../../command.js"; import type { BaseActionDefinition, BaseActionTemplate } from "../base.js"; /** * @category Action definitions */ export interface MessageActionTemplate extends BaseActionTemplate { /** * Custom game message type */ messageType: string; } /** * @ignore */ export declare class MessageActionDefinition implements BaseActionDefinition { private template; name: string; /** * Only for use in bots internals * @ignore */ get templateMessageType(): string; constructor(template: MessageActionTemplate); checkPrerequisites(messageContext: ClientMessageContext): boolean; checkConditions(test: ClientMessageConditions, messageContext: ClientMessageContext): void; getCommand(messageContext: ClientMessageContext): Command; } /** * @category Action definitions */ export declare function defineMessageAction(template: MessageActionTemplate): MessageActionDefinition;