import { Controller } from 'tsoa';
import { ManifestService, Manifest } from '@squiz/component-lib';
import { type Request as ExpressRequest } from 'express';
import { HealthCheckService } from '../../health-check-service';
type ComponentMap = Record<string, {
    components: {
        version: string;
        previewKey: string | undefined;
    }[];
}>;
export declare class CoreController extends Controller {
    protected manifestService: ManifestService;
    protected healthCheckService: HealthCheckService | undefined;
    constructor(manifestService: ManifestService, healthCheckService: HealthCheckService | undefined);
    getSchemaVersion(version: string): Promise<any>;
    getHealthInfo(): Promise<import("../../health-check-service").HealthCheck>;
    getComponents(req: ExpressRequest): Promise<void>;
    protected createComponentMap(components: Manifest[]): ComponentMap;
    protected createComponentMapHtml(groupedComponents: ComponentMap): string;
}
export {};
