import { CronJob } from 'cron'; import { Command, Filter, type SessionMsg } from '../components'; import { Symbols } from '../global'; import { type CommandConfig, type FilterOption, type MidwareCallback, type RegexpCallback, type TaskCallback, type TaskOptions } from '../types'; import type { Context } from './core'; interface MidwareData { callback: MidwareCallback; priority: number; } interface RegexpData { match: RegExp; callback: RegexpCallback; } export declare class Message { readonly [Symbols.midware]: Set; readonly [Symbols.command]: Set; readonly [Symbols.regexp]: Set; readonly [Symbols.task]: Set; readonly [Symbols.filter]: Map; readonly [Symbols.promise]: Map void)[]>; private handleMidware; private handleRegexp; private handleCommand; private readonly ctx; constructor(ctx: Context); midware(callback: MidwareCallback, priority?: number): () => boolean; command(template: T, config?: CommandConfig): Command; regexp(match: RegExp, callback: RegexpCallback): () => boolean; boardcast(): void; notify(): void; task(options: TaskOptions, callback: TaskCallback): () => boolean; filter(option: FilterOption): any; } export default Message;