UNPKG

koishi-plugin-greeting

Version:

Koishi plugin for automatically greeting at specific time.

54 lines (53 loc) 1.48 kB
import { Bot } from 'koishi'; import moment from 'moment'; interface Salt { salt?: string; } export declare class Word { constructor(config: Partial<Word>); word?: string; weight?: number; formWord(): any; patterns?: Pattern[]; toEntry(): any; } export declare class Pattern { constructor(config: Partial<Pattern>); words: Word[]; pickWord(): any; } export declare class Rule implements Salt { constructor(config: Partial<Rule>); fromTime?: string; toTime?: string; getTimeRange(): readonly [moment.Moment, moment.Moment]; shouldSend(target: Target): boolean; salt?: string; patterns: Pattern[]; generateText(): string; } export declare class Target implements Salt { constructor(config: Partial<Target>); userId?: string; channelId?: string; guildId?: string; getDescription(): string; get salt(): string; set salt(s: string); send(bot: Bot, text: string): Promise<string[]>; } export declare class Instance { constructor(config: Partial<Instance>); from: string; getBot(list: Bot[]): Bot<Bot.Config>; to: Target[]; rules: Rule[]; run(list: Bot[]): Promise<this>; } export declare class GreetingPluginConfig { constructor(config: GreetingPluginConfigLike); instances: Instance[]; runInstances(list: Bot[], instances?: Instance[]): Promise<Instance[]>; } export type GreetingPluginConfigLike = Partial<GreetingPluginConfig>; export {};