import { BaseRetriever } from '@langchain/core/retrievers'; import { IAuthUserWithPermissions } from '@sourceloop/core'; import { VectorStore } from '@langchain/core/vectorstores'; import { QueryTemplateDTO } from '../models'; import { IQueryTemplateStore, QueryTemplateMetadata } from '../types'; import { SchemaStore } from '../services/schema.store'; export declare class TemplateController { private readonly vectorStore; private readonly user; private readonly schemaStore; private readonly templateRetriever; private readonly templateStore; constructor(vectorStore: VectorStore, user: IAuthUserWithPermissions, schemaStore: SchemaStore, templateRetriever: BaseRetriever, templateStore: IQueryTemplateStore | undefined); create(body: QueryTemplateDTO): Promise<{ id: string; }>; find(query?: string): Promise<{ id: string; prompt: string; description: string; template: string; tables: any; placeholders: any; schemaHash: string; votes: number; }[]>; private _validatePlaceholders; private _validatePlaceholderMarker; private _validatePlaceholderPresenceInTemplate; private _validateTemplateRefId; private _hashSchema; }