UNPKG

onebots

Version:

基于icqq的多例oneBot实现

90 lines (89 loc) 3.21 kB
import Koa from "koa"; import * as os from "os"; import "reflect-metadata"; import { Logger } from "log4js"; import { Server } from "http"; import { Class } from "../utils"; import { Router, WsServer } from "./router"; import { V11 } from "../service/V11"; import { V12 } from "../service/V12"; import { LogLevel } from "../types"; import { Adapter } from "../adapter"; import { ChildProcess } from "child_process"; export interface KoaOptions { env?: string; keys?: string[]; proxy?: boolean; subdomainOffset?: number; proxyIpHeader?: string; maxIpsCount?: number; } type AdapterClass = Class<Adapter>; export declare class App extends Koa { config: Required<App.Config>; httpServer: Server; isStarted: boolean; logger: Logger; static configDir: string; static get configPath(): string; static get dataDir(): string; static get logFile(): string; adapters: Map<string, Adapter>; ws: WsServer; router: Router; get info(): { system_platform: NodeJS.Platform; system_arch: NodeJS.Architecture; system_cpus: os.CpuInfo[]; system_version: string; system_uptime: number; username: string; total_memory: number; free_memory: number; process_id: number; process_parent_id: number; process_cwd: string; process_use_memory: number; node_version: string; sdk_version: any; uptime: number; }; constructor(config?: App.Config); init(): void; getLogger(patform: string): Logger; private getConfigMaps; private createOneBots; addAccount<P extends string>(platform: P, uin: string, config: Adapter.Configs[P]): void; updateAccount<P extends string>(platform: P, uin: string, config: Adapter.Configs[P]): void; removeAccount(platform: string, uin: string, force?: boolean): void; createOneBot<P extends string>(platform: P, uin: string, config: Adapter.Config): import("..").OneBot<any>; get oneBots(): import("..").OneBot<any>[]; findOrCreateAdapter<P extends string>(platform: P, config?: Adapter.Config): void | Adapter<string, any>; start(): Promise<void>; reload(config: App.Config): Promise<void>; stop(): Promise<void>; } export declare function createOnebots(config?: App.Config | string, cp?: ChildProcess | null): App; export declare function defineConfig(config: App.Config): App.Config; export declare namespace App { const ADAPTERS: Map<string, AdapterClass>; interface Adapters<P extends string = string> extends Map<P, Adapter<P>> { } type Config = { port?: number; path?: string; timeout?: number; username?: string; password?: string; log_level?: LogLevel; general?: { V11?: V11.Config; V12?: V12.Config; }; } & KoaOptions & Record<`${string}.${string}`, Adapter.Config>; const defaultConfig: Config; function registerAdapter(name: string): void; function registerAdapter<T extends string>(platform: T, adapter: AdapterClass): void; function loadAdapter<T extends string>(platform: string): Class<Adapter<T, any>>; } export {};