import * as sqlite3 from 'sqlite3'; import { BaseRepositoryImpl } from './base-repository'; /** * Embedding model for V-Dimension */ export interface Embedding { id: string; plugin_id: string; dimension: 'X' | 'Y' | 'Z' | 'W' | 'T'; entity_id: string; external_id: string; content_hash: string; embedding_model: string; embedding_vector: Buffer; created_at: Date; updated_at: Date; } /** * Repository for V-Dimension: Embeddings */ export declare class EmbeddingRepository extends BaseRepositoryImpl { constructor(db: sqlite3.Database); /** * Creates a new embedding. */ create(embedding: Embedding): Promise; /** * Gets an embedding by dimension, entity_id, and model. */ getByEntity(dimension: 'X' | 'Y' | 'Z' | 'W' | 'T', entityId: string, pluginId: string, model: string): Promise; /** * Gets all embeddings for a plugin and dimension. */ getAllByDimension(dimension: 'X' | 'Y' | 'Z' | 'W' | 'T', pluginId: string, model: string): Promise; /** * Gets embedding by content hash (for change detection). */ getByContentHash(dimension: 'X' | 'Y' | 'Z' | 'W' | 'T', contentHash: string, pluginId: string, model: string): Promise; /** * Updates an existing embedding. */ update(embedding: Embedding): Promise; /** * Gets an embedding by ID. */ getById(id: string, pluginId: string): Promise; /** * Gets all embeddings for a plugin. */ getAll(pluginId: string): Promise; /** * Checks if an embedding exists. */ exists(id: string, pluginId: string): Promise; /** * Deletes an embedding. */ delete(id: string, pluginId: string): Promise; /** * Maps a database row to an Embedding object. */ private mapRowToEmbedding; } //# sourceMappingURL=embedding-repository.d.ts.map