import { Index, Pinecone, QueryOptions } from '@pinecone-database/pinecone'; import { BaseRequestParams, BaseResponse, CreateIndexParams, EditIndexParams, IndexDescription, IndexList, ListVectorIDsParams, ListVectorIDsResult, RecordMetadata, VectorDBBase, VectorRecord } from '@memberjunction/ai-vectordb'; import { UserInfo } from '@memberjunction/core'; export type BaseMetadata = { RecordID: string; Entity: string; TemplateID: string; }; export declare class PineconeDatabase extends VectorDBBase { private _pinecone; private _defaultIndex; constructor(apiKey: string); protected get ApiKey(): string; get pinecone(): Pinecone; GetIndexDescription(params: BaseRequestParams): Promise; GetDefaultIndex(): Promise>; ListIndexes(): Promise; /** * If an indexName is not provided, this will use the default index name * defined in the environment variables instead. */ GetIndex(params?: BaseRequestParams): BaseResponse; /** * @example * The minimum required configuration to create an index is the index `name`, `dimension`, and `spec`. * ```js * await pinecone.createIndex({ name: 'my-index', dimension: 128, spec: { serverless: { cloud: 'aws', region: 'us-west-2' }}}) * ``` */ CreateIndex(options: CreateIndexParams): Promise; DeleteIndex(params: BaseRequestParams): Promise; EditIndex(params: EditIndexParams): Promise; QueryIndex(params: QueryOptions, _contextUser?: UserInfo): Promise; CreateRecord(params: VectorRecord): Promise; CreateRecords(records: VectorRecord[], indexName?: string): Promise; GetRecord(params: BaseRequestParams): Promise; GetRecords(params: BaseRequestParams): Promise; UpdateRecord(params: BaseRequestParams): Promise; UpdateRecords(params: BaseRequestParams): Promise; DeleteRecord(record: VectorRecord, indexName?: string): Promise; DeleteRecords(records: VectorRecord[], indexName?: string): Promise; DeleteAllRecords(indexName: string, namespace?: string): Promise; ListVectorIDs(params: ListVectorIDsParams): Promise; } //# sourceMappingURL=PineconeDatabase.d.ts.map