/** * 프롬프트 템플릿 로더 유틸리티 * prompts/ 디렉토리에서 템플릿 파일을 읽고 플레이스홀더를 치환합니다. */ /** * 프롬프트 템플릿 로더 */ export declare class PromptTemplateLoader { /** * 템플릿 파일 로드 * * PRD 0019: 보안 강화 (Phase 1) - Path Traversal 방지 * templateName 파라미터를 정제하여 Path Traversal 공격을 방지합니다. * * @param templateName 템플릿 파일명 (예: 'triple-extraction') * @returns 템플릿 내용 * @throws 파일이 없거나 읽을 수 없는 경우 에러 발생 */ static loadTemplate(templateName: string): string; /** * 템플릿에 변수 치환 * * @param template 템플릿 문자열 * @param variables 변수 객체 (예: { observation: '...' }) * @returns 치환된 템플릿 */ static renderTemplate(template: string, variables: Record): string; /** * 템플릿 파일을 로드하고 변수 치환 * * @param templateName 템플릿 파일명 * @param variables 변수 객체 * @returns 치환된 프롬프트 */ static loadAndRender(templateName: string, variables: Record): string; /** * 캐시 초기화 (테스트용) */ static clearCache(): void; /** * 템플릿 파일 경로 확인 (테스트용) * * PRD 0019: 보안 강화 (Phase 1) - Path Traversal 방지 * templateName 파라미터를 정제하여 Path Traversal 공격을 방지합니다. */ static getTemplatePath(templateName: string): string; } //# sourceMappingURL=prompt-template-loader.d.ts.map