import { Request, Response } from 'express';
import Controller from '../controller';
import { IUnleashConfig } from '../../types/option';
import { IUnleashServices } from '../../types/services';
import { ApplicationSchema } from '../../openapi/spec/application-schema';
import { ApplicationsSchema } from '../../openapi/spec/applications-schema';
import { RequestsPerSecondSegmentedSchema } from 'lib/openapi/spec/requests-per-second-segmented-schema';
declare type RpsError = string;
declare class MetricsController extends Controller {
    private logger;
    private flagResolver;
    private clientInstanceService;
    constructor(config: IUnleashConfig, { clientInstanceService, openApiService, }: Pick<IUnleashServices, 'clientInstanceService' | 'openApiService'>);
    deprecated(req: Request, res: Response): Promise<void>;
    deleteApplication(req: Request<{
        appName: string;
    }>, res: Response): Promise<void>;
    createApplication(req: Request<{
        appName: string;
    }, unknown, ApplicationSchema>, res: Response): Promise<void>;
    getApplications(req: Request, res: Response<ApplicationsSchema>): Promise<void>;
    getApplication(req: Request, res: Response<ApplicationSchema>): Promise<void>;
    getRps(req: Request, res: Response<RequestsPerSecondSegmentedSchema | RpsError>): Promise<void>;
}
export default MetricsController;
