UNPKG

koishi-plugin-pics

Version:
67 lines (66 loc) 2.21 kB
import { Context, Awaitable, Logger, Schema, Quester } from 'koishi'; import { PartialDeep } from 'koishi-thirdeye'; import PicsContainer from '.'; import { PicSourceConfig } from './config'; import { PicSourceInfo, PicResult } from './def'; export declare class PicSource implements PicSourceInfo { ctx: Context; constructor(ctx: Context); tags: string[]; weight: number; name: string; description: string; isDefault: boolean; applyConfig(src: Partial<PicSourceInfo>): void; randomPic(picTags: string[]): Awaitable<PicResult>; onStartup(): Awaitable<void>; onShutdown(): Awaitable<void>; getDisplayString(): string; } export declare class BasePicSourcePlugin extends PicSource { constructor(ctx: Context, config: PartialDeep<PicSourceConfig>); http: Quester; config: PicSourceConfig; pics: PicsContainer; logger: Logger; initializeSource(): void; } export declare const PicSourcePlugin: <S>(specificConfig?: import("koishi-thirdeye").ClassType<S>) => new (ctx: import("cordis").Context<any>, config: PartialDeep<S> & { tags?: string[]; weight?: number; name?: string; description?: string; isDefault?: boolean; http?: { headers?: { [x: string]: any; }; timeout?: number; proxyAgent?: string; }; applyTo?: (target: PicSourceInfo) => void; }) => BasePicSourcePlugin & { config: PicSourceConfig & S; }; export declare function PlainPicSourcePlugin<C>(dict: { [K in keyof C]: Schema<C[K]>; }): { new (ctx: Context, config: PartialDeep<C & PicSourceConfig>): { http: Quester; config: PicSourceConfig & C; ctx: Context; tags: string[]; weight: number; name: string; description: string; isDefault: boolean; applyConfig(src: Partial<PicSourceInfo>): void; randomPic(picTags: string[]): PicResult | Promise<PicResult>; onStartup(): void | Promise<void>; onShutdown(): void | Promise<void>; getDisplayString(): string; }; Config: Schema<PartialDeep<PicSourceConfig & C>, PicSourceConfig & C>; using: readonly ["pics"]; reusable: boolean; };