picgo
Version:
A tool for image uploading
43 lines (42 loc) • 1.79 kB
TypeScript
import type { Handler, MiddlewareHandler } from 'hono';
import type { IPicGo, IServerManager, PluginRouterSetup } from '../../types';
import type { IServerUploadAdapter } from '../../types/internal';
declare class ServerManager implements IServerManager {
private app;
private readonly ctx;
private server?;
private listeningPort?;
private listeningHost?;
private authSecret?;
private warnedQuerySecret;
private staticRoutePrefixes;
private uploadAdapter?;
constructor(ctx: IPicGo);
registerGet<P extends string>(path: P, handler: Handler<any, P>, isInternal?: boolean): void;
registerPost<P extends string>(path: P, handler: Handler<any, P>, isInternal?: boolean): void;
registerPut<P extends string>(path: P, handler: Handler<any, P>, isInternal?: boolean): void;
registerDelete<P extends string>(path: P, handler: Handler<any, P>, isInternal?: boolean): void;
registerMiddleware<P extends string>(path: P, handler: MiddlewareHandler<any, P>): void;
setUploadAdapter(adapter?: IServerUploadAdapter): void;
registerStatic(path: string, root: string): void;
private handleRegister;
mount(path: string, setup: PluginRouterSetup): void;
getServerInfo(): string;
isListening(): boolean;
private initMiddleware;
private initCoreRoutes;
private t;
private getRequestPath;
private isStaticPath;
private shouldSkipAuth;
private extractAuthToken;
private warnQuerySecretOnce;
private getClientIp;
private logUnauthorized;
private handleAuth;
private startServer;
private isExistingPicGoServer;
listen(port?: number, host?: string, ignoreExistingExternalServer?: boolean, secret?: string): Promise<number | void>;
shutdown(): void;
}
export { ServerManager };