import type { Express, Request, Response } from 'express';
import type { GatedFeature } from '../../license/gate.js';
import type { BrainWorker } from '../../worker/brain-worker.js';
import type { IronDomeRouteGuardOptions, Middleware as IronDomeMiddleware } from '../iron-dome-route-guard.js';
type Middleware = (_req: Request, res: Response, next: (err?: unknown) => void) => void;
type FeatureMiddlewareFactory = (feature: GatedFeature) => Middleware;
interface AdminRouteDeps {
    brainWorker: BrainWorker;
    requireNotLocked: Middleware;
    requireProFeature: FeatureMiddlewareFactory;
    requireIronDomeAction: (options: IronDomeRouteGuardOptions) => IronDomeMiddleware;
}
export declare function registerAdminRoutes(app: Express, deps: AdminRouteDeps): void;
export {};
