import { IFileService } from './FileService.js'; interface Logger { debug(message: string, ...args: any[]): void; info(message: string, ...args: any[]): void; warn(message: string, ...args: any[]): void; error(message: string, ...args: any[]): void; } /** * Defines the contract for managing context and prompt templates. * Provides methods for loading prompt templates and processing them with variable substitution. */ export interface IContextManager { /** * Asynchronously loads a prompt template from the prompts directory. */ loadPromptAsync(templateName: string): Promise; /** * Processes a template by replacing variable placeholders with actual values. */ getPrompt(template: string, variables: Record): string; } /** * Manages prompt templates and context processing for the SpecCoding MCP server. * Provides template loading with caching and variable substitution capabilities. */ export declare class ContextManager implements IContextManager { private readonly _fileService; private readonly _specCodingConfiguration; private readonly _logger; private readonly _templateCache; constructor(fileService: IFileService, logger: Logger); /** * Asynchronously loads a prompt template from the prompts directory with caching. * Templates are cached in memory to improve performance for repeated loads. */ loadPromptAsync(templateName: string): Promise; /** * Processes a template by replacing variable placeholders with actual values. * Supports placeholder format: {{variableName}}. * Logs unprocessed placeholders as warnings. */ getPrompt(template: string, variables: Record): string; } export {}; //# sourceMappingURL=ContextManager.d.ts.map