import type { McpActivationResult, McpCallToolResult, McpConfigDocument, McpConfigSaveResult, McpOverview, McpRefreshResult, McpServerConfig, McpServiceOptions } from './types.js';
export declare class McpService {
    private readonly stateRoot;
    private readonly configStore;
    private readonly activationStore;
    private readonly catalogStore;
    private readonly clientService;
    constructor(options: McpServiceOptions);
    listOverview(): McpOverview;
    readConfigDocument(): McpConfigDocument;
    ensureConfigDocument(): McpConfigDocument;
    saveConfigDocument(content: string): McpConfigSaveResult;
    activateServer(serverId: string, now?: Date): McpActivationResult;
    disableServer(serverId: string, now?: Date): McpActivationResult;
    refreshServer(serverId: string, now?: Date): Promise<McpRefreshResult>;
    refreshEnabledServers(now?: Date): Promise<McpRefreshResult[]>;
    callTool(serverId: string, toolName: string, args: Record<string, unknown>): Promise<McpCallToolResult>;
    private buildServerViews;
    private enabledServerIds;
}
export declare function createMcpService(options: McpServiceOptions): McpService;
export declare function isToolAllowed(server: McpServerConfig, toolName: string): boolean;
export declare function shouldMcpToolRequireApproval(server: McpServerConfig): boolean;
export declare function mcpTimestamp(): string;
//# sourceMappingURL=service.d.ts.map