import type { PluginMiddlewareDenialMetadata } from '../client/plugins/types'; import type { ExtraProps, ResolvedRegisteredMiddlewares, UsingClient } from '../commands'; import type { ModalContext } from './modalcontext'; export interface ModalCommand { __filePath?: string; } export declare abstract class ModalCommand { type: 1; filter?(context: ModalContext): Promise | boolean; customId?: string | RegExp; abstract run(context: ModalContext): any; middlewares: readonly (keyof ResolvedRegisteredMiddlewares)[]; props: ExtraProps; onBeforeMiddlewares?(context: ModalContext): any; onAfterRun?(context: ModalContext, error: unknown | undefined): any; onRunError?(context: ModalContext, error: unknown): any; onMiddlewaresError?(context: ModalContext, error: string, metadata: PluginMiddlewareDenialMetadata): any; onInternalError?(client: UsingClient, modal: ModalCommand, error?: unknown): any; }