{"version":3,"file":"convex.d.cts","names":["DocumentByInfo","FieldPaths","FilterExpression","FunctionReference","GenericActionCtx","GenericDataModel","GenericTableInfo","NamedTableInfo","NamedVectorIndex","TableNamesInDataModel","VectorFilterBuilder","VectorIndexNames","EmbeddingsInterface","VectorStore","Document","ConvexVectorStoreConfig","DataModel","TableName","IndexName","TextFieldName","EmbeddingFieldName","MetadataFieldName","InsertMutation","GetQuery","ConvexVectorStore","Promise"],"sources":["../../src/vectorstores/convex.d.ts"],"sourcesContent":["import { DocumentByInfo, FieldPaths, FilterExpression, FunctionReference, GenericActionCtx, GenericDataModel, GenericTableInfo, NamedTableInfo, NamedVectorIndex, TableNamesInDataModel, VectorFilterBuilder, VectorIndexNames } from \"convex/server\";\nimport type { EmbeddingsInterface } from \"@langchain/core/embeddings\";\nimport { VectorStore } from \"@langchain/core/vectorstores\";\nimport { Document } from \"@langchain/core/documents\";\n/**\n * Type that defines the config required to initialize the\n * ConvexVectorStore class. It includes the table name,\n * index name, text field name, and embedding field name.\n */\nexport type ConvexVectorStoreConfig<DataModel extends GenericDataModel, TableName extends TableNamesInDataModel<DataModel>, IndexName extends VectorIndexNames<NamedTableInfo<DataModel, TableName>>, TextFieldName extends FieldPaths<NamedTableInfo<DataModel, TableName>>, EmbeddingFieldName extends FieldPaths<NamedTableInfo<DataModel, TableName>>, MetadataFieldName extends FieldPaths<NamedTableInfo<DataModel, TableName>>, InsertMutation extends FunctionReference<\"mutation\", \"internal\", {\n    table: string;\n    document: object;\n}>, GetQuery extends FunctionReference<\"query\", \"internal\", {\n    id: string;\n}, object | null>> = {\n    readonly ctx: GenericActionCtx<DataModel>;\n    /**\n     * Defaults to \"documents\"\n     */\n    readonly table?: TableName;\n    /**\n     * Defaults to \"byEmbedding\"\n     */\n    readonly index?: IndexName;\n    /**\n     * Defaults to \"text\"\n     */\n    readonly textField?: TextFieldName;\n    /**\n     * Defaults to \"embedding\"\n     */\n    readonly embeddingField?: EmbeddingFieldName;\n    /**\n     * Defaults to \"metadata\"\n     */\n    readonly metadataField?: MetadataFieldName;\n    /**\n     * Defaults to `internal.langchain.db.insert`\n     */\n    readonly insert?: InsertMutation;\n    /**\n     * Defaults to `internal.langchain.db.get`\n     */\n    readonly get?: GetQuery;\n};\n/**\n * Class that is a wrapper around Convex storage and vector search. It is used\n * to insert embeddings in Convex documents with a vector search index,\n * and perform a vector search on them.\n *\n * ConvexVectorStore does NOT implement maxMarginalRelevanceSearch.\n */\nexport declare class ConvexVectorStore<DataModel extends GenericDataModel, TableName extends TableNamesInDataModel<DataModel>, IndexName extends VectorIndexNames<NamedTableInfo<DataModel, TableName>>, TextFieldName extends FieldPaths<NamedTableInfo<DataModel, TableName>>, EmbeddingFieldName extends FieldPaths<NamedTableInfo<DataModel, TableName>>, MetadataFieldName extends FieldPaths<NamedTableInfo<DataModel, TableName>>, InsertMutation extends FunctionReference<\"mutation\", \"internal\", {\n    table: string;\n    document: object;\n}>, GetQuery extends FunctionReference<\"query\", \"internal\", {\n    id: string;\n}, object | null>> extends VectorStore {\n    /**\n     * Type that defines the filter used in the\n     * similaritySearchVectorWithScore and maxMarginalRelevanceSearch methods.\n     * It includes limit, filter and a flag to include embeddings.\n     */\n    FilterType: {\n        filter?: (q: VectorFilterBuilder<DocumentByInfo<GenericTableInfo>, NamedVectorIndex<NamedTableInfo<DataModel, TableName>, IndexName>>) => FilterExpression<boolean>;\n        includeEmbeddings?: boolean;\n    };\n    private readonly ctx;\n    private readonly table;\n    private readonly index;\n    private readonly textField;\n    private readonly embeddingField;\n    private readonly metadataField;\n    private readonly insert;\n    private readonly get;\n    _vectorstoreType(): string;\n    constructor(embeddings: EmbeddingsInterface, config: ConvexVectorStoreConfig<DataModel, TableName, IndexName, TextFieldName, EmbeddingFieldName, MetadataFieldName, InsertMutation, GetQuery>);\n    /**\n     * Add vectors and their corresponding documents to the Convex table.\n     * @param vectors Vectors to be added.\n     * @param documents Corresponding documents to be added.\n     * @returns Promise that resolves when the vectors and documents have been added.\n     */\n    addVectors(vectors: number[][], documents: Document[]): Promise<void>;\n    /**\n     * Add documents to the Convex table. It first converts\n     * the documents to vectors using the embeddings and then calls the\n     * addVectors method.\n     * @param documents Documents to be added.\n     * @returns Promise that resolves when the documents have been added.\n     */\n    addDocuments(documents: Document[]): Promise<void>;\n    /**\n     * Similarity search on the vectors stored in the\n     * Convex table. It returns a list of documents and their\n     * corresponding similarity scores.\n     * @param query Query vector for the similarity search.\n     * @param k Number of nearest neighbors to return.\n     * @param filter Optional filter to be applied.\n     * @returns Promise that resolves to a list of documents and their corresponding similarity scores.\n     */\n    similaritySearchVectorWithScore(query: number[], k: number, filter?: this[\"FilterType\"]): Promise<[Document, number][]>;\n    /**\n     * Static method to create an instance of ConvexVectorStore from a\n     * list of texts. It first converts the texts to vectors and then adds\n     * them to the Convex table.\n     * @param texts List of texts to be converted to vectors.\n     * @param metadatas Metadata for the texts.\n     * @param embeddings Embeddings to be used for conversion.\n     * @param dbConfig Database configuration for Convex.\n     * @returns Promise that resolves to a new instance of ConvexVectorStore.\n     */\n    static fromTexts<DataModel extends GenericDataModel, TableName extends TableNamesInDataModel<DataModel>, IndexName extends VectorIndexNames<NamedTableInfo<DataModel, TableName>>, TextFieldName extends FieldPaths<NamedTableInfo<DataModel, TableName>>, EmbeddingFieldName extends FieldPaths<NamedTableInfo<DataModel, TableName>>, MetadataFieldName extends FieldPaths<NamedTableInfo<DataModel, TableName>>, InsertMutation extends FunctionReference<\"mutation\", \"internal\", {\n        table: string;\n        document: object;\n    }>, GetQuery extends FunctionReference<\"query\", \"internal\", {\n        id: string;\n    }, object | null>>(texts: string[], metadatas: object[] | object, embeddings: EmbeddingsInterface, dbConfig: ConvexVectorStoreConfig<DataModel, TableName, IndexName, TextFieldName, EmbeddingFieldName, MetadataFieldName, InsertMutation, GetQuery>): Promise<ConvexVectorStore<DataModel, TableName, IndexName, TextFieldName, EmbeddingFieldName, MetadataFieldName, InsertMutation, GetQuery>>;\n    /**\n     * Static method to create an instance of ConvexVectorStore from a\n     * list of documents. It first converts the documents to vectors and then\n     * adds them to the Convex table.\n     * @param docs List of documents to be converted to vectors.\n     * @param embeddings Embeddings to be used for conversion.\n     * @param dbConfig Database configuration for Convex.\n     * @returns Promise that resolves to a new instance of ConvexVectorStore.\n     */\n    static fromDocuments<DataModel extends GenericDataModel, TableName extends TableNamesInDataModel<DataModel>, IndexName extends VectorIndexNames<NamedTableInfo<DataModel, TableName>>, TextFieldName extends FieldPaths<NamedTableInfo<DataModel, TableName>>, EmbeddingFieldName extends FieldPaths<NamedTableInfo<DataModel, TableName>>, MetadataFieldName extends FieldPaths<NamedTableInfo<DataModel, TableName>>, InsertMutation extends FunctionReference<\"mutation\", \"internal\", {\n        table: string;\n        document: object;\n    }>, GetQuery extends FunctionReference<\"query\", \"internal\", {\n        id: string;\n    }, object | null>>(docs: Document[], embeddings: EmbeddingsInterface, dbConfig: ConvexVectorStoreConfig<DataModel, TableName, IndexName, TextFieldName, EmbeddingFieldName, MetadataFieldName, InsertMutation, GetQuery>): Promise<ConvexVectorStore<DataModel, TableName, IndexName, TextFieldName, EmbeddingFieldName, MetadataFieldName, InsertMutation, GetQuery>>;\n}\n//# sourceMappingURL=convex.d.ts.map"],"mappings":"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"}