import { OnModuleDestroy, OnModuleInit } from '@nestjs/common';
import { ServerInstance, ServerRunSpec } from '@repo/shared/types/domain/server';
import { AppCacheService } from '../cache/appcache.service';
export declare class ServerService implements OnModuleInit, OnModuleDestroy {
    private readonly appCacheService;
    private readonly logger;
    constructor(appCacheService: AppCacheService);
    private instances;
    onModuleInit(): Promise<void>;
    onModuleDestroy(): Promise<void>;
    start(runSpec: ServerRunSpec): Promise<ServerInstance>;
    private startStdioServer;
    private startSseServer;
    private startStreamableHttpServer;
    private upsertRunSpecList;
    private upsertInstanceList;
    private deleteRunSpecList;
    private deleteInstanceList;
    stopInstance(name: string): Promise<ServerInstance>;
    restartInstance(name: string): Promise<ServerInstance>;
    listInstances(): Promise<ServerInstance[]>;
    listRunSpecs(): Promise<ServerRunSpec[]>;
    getInstanceByName(name: string): Promise<ServerInstance | undefined>;
    getRunSpecByName(name: string): Promise<ServerRunSpec | undefined>;
    dispose(): Promise<void>;
    private sanitizeResponseInstance;
    private sanitizeResponseInstanceList;
}
//# sourceMappingURL=server.service.d.ts.map