import { Express } from 'express';
import http from 'http';
import { AuthRouter } from "./routes/AuthRouter";
import { UserRouter } from "./routes/UserRouter";
import { LibraryRoutes } from './routes/LibraryRoutes';
import { AdminsRouter } from "./routes/AdminsRouter";
import { MiraServer } from '.';
import { HttpRouter } from './routes/HttpRouter';
import { PluginRoutes } from './routes/PluginRoutes';
import { DatabaseRoutes } from './routes/DatabaseRoutes';
import { FileRoutes } from './routes/FileRoutes';
import { DeviceRoutes } from './routes/DeviceRoutes';
import { TagRouter } from './routes/TagRouter';
import { FolderRouter } from './routes/FolderRouter';
import { FsRouter } from './routes/FsRouter';
import { SettingsRouter } from './routes/SettingsRouter';
import { CookieSitesRouter } from './routes/CookieSitesRouter';
import { DownloadRoutes } from './routes/DownloadRoutes';
import { StatisticsRouter } from './routes/StatisticsRouter';
import { ThumbRouter } from './routes/ThumbRouter';
export declare class MiraHttpServer {
    app: Express;
    httpServer: http.Server;
    authRouter: AuthRouter;
    userRouter: UserRouter;
    backend: MiraServer;
    libraryRoutes: LibraryRoutes;
    pluginRoutes: PluginRoutes;
    databaseRoutes: DatabaseRoutes;
    fileRoutes: FileRoutes;
    deviceRoutes: DeviceRoutes;
    tagRouter: TagRouter;
    folderRouter: FolderRouter;
    fsRouter: FsRouter;
    adminsRouter: AdminsRouter;
    httpRouter: HttpRouter;
    settingsRouter: SettingsRouter;
    cookieSitesRouter: CookieSitesRouter;
    downloadRoutes: DownloadRoutes;
    statisticsRouter: StatisticsRouter;
    thumbRouter: ThumbRouter;
    constructor(backend: MiraServer, dataDir?: string);
    initialize(): Promise<void>;
    request(options: {
        method: string;
        url: string;
        headers?: Record<string, string>;
        data?: any;
    }): Promise<any>;
    private setupMiddleware;
    private setupRoutes;
    start(port?: number): Promise<void>;
    stop(): Promise<void>;
    getApp(): Express;
    getHttpServer(): http.Server;
    getAuthRouter(): AuthRouter;
}
//# sourceMappingURL=HttpServer.d.ts.map