SeyfertPluginApi

Signature

export interface SeyfertPluginApi<M extends PluginMiddlewareMap = PluginMiddlewareMap, E extends object = {}>

Properties

events: {    on<E extends ClientNameEvents | CustomEventsKeys | GatewayEvents>(name: E, handler: (...args: ResolveEventParams<E>) => unknown, opts?: {        once?: boolean;        order?: PluginOrderOpt;    }): PluginDisposer;    once<E extends ClientNameEvents | CustomEventsKeys | GatewayEvents>(name: E, handler: (...args: ResolveEventParams<E>) => unknown): PluginDisposer;    onAny(handler: (name: string, ...args: unknown[]) => unknown, opts?: {        order?: PluginOrderOpt;    }): PluginDisposer;    onError(handler: PluginEventErrorHandler, opts?: {        order?: PluginOrderOpt;    }): PluginDisposer;};
shared: {    set<T, const Name extends string>(key: SharedKey<T, Name>, factory: (client: BaseClient & E) => T, opts?: PluginSharedOptions<T>): void;    set<const Name extends keyof RegisteredPluginShared & string>(name: Name, factory: (client: BaseClient & E) => RegisteredPluginShared[Name], opts?: PluginSharedOptions<RegisteredPluginShared[Name]>): void;    remove(...names: (string | SharedKey<unknown, string>)[]): void;    has<const Name extends string>(name: Name | SharedKey<unknown, Name>): boolean;};

Methods