UNPKG

@pinecone-database/pinecone

Version:

This is the official Node.js SDK for [Pinecone](https://www.pinecone.io), written in TypeScript.

106 lines (105 loc) 3.84 kB
import type { FetchAPI, HTTPHeaders } from '../../pinecone-generated-ts-fetch/db_data'; /** * @see [Understanding projects](https://docs.pinecone.io/docs/projects) */ export type PineconeConfiguration = { /** * The API key for your Pinecone project. You can find this in the [Pinecone console](https://app.pinecone.io). */ apiKey: string; /** * Optional configuration field for specifying the controller host. If not specified, the client will use the default controller host: https://api.pinecone.io. */ controllerHostUrl?: string; /** * Optional configuration field for specifying the fetch implementation. If not specified, the client will look for fetch in the global scope. */ fetchApi?: FetchAPI; /** * Optional headers to be included in all requests. */ additionalHeaders?: HTTPHeaders; /** * Optional sourceTag that is applied to the User-Agent header with all requests. */ sourceTag?: string; /** * Optional configuration field for specifying the maximum number of retries for a request. Defaults to 3. */ maxRetries?: number; /** * Optional configuration field for specifying a region to use with the assistant APIs. If not specified, the default * region of "us" is used. */ assistantRegion?: string; }; type PineconeConfigurationType = keyof PineconeConfiguration; export declare const PineconeConfigurationProperties: PineconeConfigurationType[]; /** The id of the record */ export type RecordId = string; /** An array of values, usually an embedding vector. */ export type RecordValues = Array<number>; /** * A sparse representation of vector values * * @see [Understanding hybrid search](https://docs.pinecone.io/docs/hybrid-search) */ export type RecordSparseValues = { /** A list of indices where non-zero values are present in a vector. */ indices: Array<number>; /** The values that correspond to the positions in the `indices` array. */ values: Array<number>; }; /** * A flexible type describing valid values for metadata stored with * each record. * * @see [Filtering with metadata](https://docs.pinecone.io/docs/metadata-filtering#supported-metadata-types) */ export type RecordMetadataValue = string | boolean | number | Array<string>; /** * @see [Filtering with metadata](https://docs.pinecone.io/docs/metadata-filtering#supported-metadata-types) */ export type RecordMetadata = Record<string, RecordMetadataValue>; /** * @see [Pinecone records](https://docs.pinecone.io/docs/overview#pinecone-indexes-store-records-with-vector-data) */ export type PineconeRecord<T extends RecordMetadata = RecordMetadata> = { /** * The id of the record. This string can be any value and is * useful when fetching or deleting by id. */ id: RecordId; /** * An array of numbers representing an embedding vector. */ values?: RecordValues; /** * Records can optionally include sparse and dense values when an index * is used for hybrid search. See [Sparse-dense vectors](https://docs.pinecone.io/docs/sparse-dense-vectors) */ sparseValues?: RecordSparseValues; /** * Any metadata associated with this record. */ metadata?: T; }; type PineconeRecordsType = keyof PineconeRecord; export declare const PineconeRecordsProperties: PineconeRecordsType[]; /** * Metadata detailing usage units for a specific operation. */ export type OperationUsage = { /** * The number of read units consumed by this operation. */ readUnits?: number; }; /** * Integrated records require an `id` or `_id` field in addition to any relevant model fields, or metadata. */ export type IntegratedRecord<T extends RecordMetadata = RecordMetadata> = { id?: string; _id?: string; } & T; export {};