import type { SupabaseClient } from "@supabase/supabase-js"; import type { PostgrestFilterBuilder } from "@supabase/postgrest-js"; import { VectorStore } from "./base.js"; import { Embeddings } from "../embeddings/base.js"; import { Document } from "../document.js"; type SupabaseMetadata = Record; export type SupabaseFilter = PostgrestFilterBuilder; export type SupabaseFilterRPCCall = (rpcCall: SupabaseFilter) => SupabaseFilter; export interface SupabaseLibArgs { client: SupabaseClient; tableName?: string; queryName?: string; filter?: SupabaseMetadata | SupabaseFilterRPCCall; } export declare class SupabaseVectorStore extends VectorStore { FilterType: SupabaseMetadata | SupabaseFilterRPCCall; client: SupabaseClient; tableName: string; queryName: string; filter?: SupabaseMetadata | SupabaseFilterRPCCall; _vectorstoreType(): string; constructor(embeddings: Embeddings, args: SupabaseLibArgs); addDocuments(documents: Document[], options?: { ids?: string[]; }): Promise; addVectors(vectors: number[][], documents: Document[], options?: { ids?: string[]; }): Promise; delete(params: { ids: string[]; }): Promise; similaritySearchVectorWithScore(query: number[], k: number, filter?: this["FilterType"]): Promise<[Document, number][]>; static fromTexts(texts: string[], metadatas: object[] | object, embeddings: Embeddings, dbConfig: SupabaseLibArgs): Promise; static fromDocuments(docs: Document[], embeddings: Embeddings, dbConfig: SupabaseLibArgs): Promise; static fromExistingIndex(embeddings: Embeddings, dbConfig: SupabaseLibArgs): Promise; } export {};