weaviate-client
    Preparing search index...

    Variable default

    default: {
        ApiKey: typeof ApiKey;
        AuthAccessTokenCredentials: typeof AuthAccessTokenCredentials;
        AuthClientCredentials: typeof AuthClientCredentials;
        AuthUserPasswordCredentials: typeof AuthUserPasswordCredentials;
        client: (params: ClientParams) => Promise<WeaviateClient>;
        configGuards: {
            quantizer: typeof Quantizer;
            vectorIndex: typeof VectorIndex;
        };
        configure: {
            dataType: {
                BLOB: "blob";
                BOOLEAN: "boolean";
                BOOLEAN_ARRAY: "boolean[]";
                DATE: "date";
                DATE_ARRAY: "date[]";
                GEO_COORDINATES: "geoCoordinates";
                INT: "int";
                INT_ARRAY: "int[]";
                NUMBER: "number";
                NUMBER_ARRAY: "number[]";
                OBJECT: "object";
                OBJECT_ARRAY: "object[]";
                PHONE_NUMBER: "phoneNumber";
                TEXT: "text";
                TEXT_ARRAY: "text[]";
                UUID: "uuid";
                UUID_ARRAY: "uuid[]";
            };
            generative: {
                azureOpenAI: (
                    config: GenerativeAzureOpenAIConfigCreate,
                ) => ModuleConfig<"generative-openai", GenerativeAzureOpenAIConfig>;
                cohere: (
                    config?: GenerativeCohereConfigCreate,
                ) => ModuleConfig<
                    "generative-cohere",
                    GenerativeCohereConfig
                    | undefined,
                >;
                contextualai: (
                    config?: GenerativeContextualAIConfigCreate,
                ) => ModuleConfig<
                    "generative-contextualai",
                    GenerativeContextualAIConfig
                    | undefined,
                >;
                databricks: (
                    config: GenerativeDatabricksConfig,
                ) => ModuleConfig<"generative-databricks", GenerativeDatabricksConfig>;
                google: (
                    config?: GenerativeGoogleConfig,
                ) => ModuleConfig<
                    "generative-google",
                    GenerativeGoogleConfig
                    | undefined,
                >;
                openAI: (
                    config?: GenerativeOpenAIConfigCreate,
                ) => ModuleConfig<
                    "generative-openai",
                    GenerativeOpenAIConfig
                    | undefined,
                >;
                palm: (
                    config?: GenerativeGoogleConfig,
                ) => ModuleConfig<"generative-palm", GenerativeGoogleConfig | undefined>;
                xai: (
                    config?: GenerativeXAIConfig,
                ) => ModuleConfig<"generative-xai", GenerativeXAIConfig | undefined>;
                anthropic(
                    config?: GenerativeAnthropicConfig,
                ): ModuleConfig<
                    "generative-anthropic",
                    GenerativeAnthropicConfig
                    | undefined,
                >;
                anyscale(
                    config?: GenerativeAnyscaleConfig,
                ): ModuleConfig<
                    "generative-anyscale",
                    GenerativeAnyscaleConfig
                    | undefined,
                >;
                aws(
                    config: GenerativeAWSConfig,
                ): ModuleConfig<"generative-aws", GenerativeAWSConfig>;
                friendliai(
                    config?: GenerativeFriendliAIConfig,
                ): ModuleConfig<
                    "generative-friendliai",
                    GenerativeFriendliAIConfig
                    | undefined,
                >;
                mistral(
                    config?: GenerativeMistralConfig,
                ): ModuleConfig<
                    "generative-mistral",
                    GenerativeMistralConfig
                    | undefined,
                >;
                nvidia(
                    config?: GenerativeNvidiaConfig,
                ): ModuleConfig<"generative-nvidia", GenerativeNvidiaConfig | undefined>;
                ollama(
                    config?: GenerativeOllamaConfig,
                ): ModuleConfig<"generative-ollama", GenerativeOllamaConfig | undefined>;
            };
            invertedIndex: (
                options: {
                    bm25b?: number;
                    bm25k1?: number;
                    cleanupIntervalSeconds?: number;
                    indexNullState?: boolean;
                    indexPropertyLength?: boolean;
                    indexTimestamps?: boolean;
                    stopwordsAdditions?: string[];
                    stopwordsPreset?: "none" | "en";
                    stopwordsRemovals?: string[];
                },
            ) => {
                bm25?: { b?: number; k1?: number };
                cleanupIntervalSeconds?: number;
                indexNullState?: boolean;
                indexPropertyLength?: boolean;
                indexTimestamps?: boolean;
                stopwords?: {
                    additions?: (string | undefined)[];
                    preset?: string;
                    removals?: (string | undefined)[];
                };
            };
            multiTenancy: (
                options?: {
                    autoTenantActivation?: boolean;
                    autoTenantCreation?: boolean;
                    enabled?: boolean;
                },
            ) => {
                autoTenantActivation?: boolean;
                autoTenantCreation?: boolean;
                enabled?: boolean;
            };
            multiVectors: {
                multi2VecJinaAI: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Multi2MultivecJinaAIConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & {
                        encoding?: {
                            dprojections?: number;
                            ksim?: number;
                            repetitions?: number;
                            type?: "muvera";
                        };
                    },
                ) => VectorConfigCreate<never, N, I, "multi2multivec-jinaai">;
                multi2VecWeaviate: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<Multi2MultivecWeaviateConfig, Multi2VecOmissions> & {
                        imageField: string;
                    } & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & {
                        encoding?: {
                            dprojections?: number;
                            ksim?: number;
                            repetitions?: number;
                            type?: "muvera";
                        };
                    },
                ) => VectorConfigCreate<never, N, I, "multi2multivec-weaviate">;
                selfProvided: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: ConfigureNonTextMultiVectorizerOptions<N, I, "none">,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "none">;
                text2VecJinaAI: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: ConfigureTextMultiVectorizerOptions<
                        T,
                        N,
                        I,
                        "text2multivec-jinaai",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2multivec-jinaai">;
            };
            objectTTL: {
                deleteByCreationTime: (
                    options: {
                        defaultTTLSeconds: number;
                        filterExpiredObjects?: boolean;
                    },
                ) => {
                    defaultTTLSeconds?: number;
                    deleteOn?: string;
                    enabled?: boolean;
                    filterExpiredObjects?: boolean;
                };
                deleteByDateProperty: (
                    options: {
                        defaultTTLSeconds?: number;
                        filterExpiredObjects?: boolean;
                        property: string;
                    },
                ) => {
                    defaultTTLSeconds?: number;
                    deleteOn?: string;
                    enabled?: boolean;
                    filterExpiredObjects?: boolean;
                };
                deleteByUpdateTime: (
                    options: {
                        defaultTTLSeconds: number;
                        filterExpiredObjects?: boolean;
                    },
                ) => {
                    defaultTTLSeconds?: number;
                    deleteOn?: string;
                    enabled?: boolean;
                    filterExpiredObjects?: boolean;
                };
            };
            replication: (
                options: {
                    asyncEnabled?: boolean;
                    deletionStrategy?: ReplicationDeletionStrategy;
                    factor?: number;
                },
            ) => {
                asyncEnabled?: boolean;
                deletionStrategy?: ReplicationDeletionStrategy;
                factor?: number;
            };
            reranker: {
                cohere: (
                    config?: RerankerCohereConfig,
                ) => ModuleConfig<"reranker-cohere", RerankerCohereConfig | undefined>;
                contextualai: (
                    config?: RerankerContextualAIConfig,
                ) => ModuleConfig<
                    "reranker-contextualai",
                    RerankerContextualAIConfig
                    | undefined,
                >;
                jinaai: (
                    config?: RerankerJinaAIConfig,
                ) => ModuleConfig<"reranker-jinaai", RerankerJinaAIConfig | undefined>;
                nvidia: (
                    config?: RerankerNvidiaConfig,
                ) => ModuleConfig<"reranker-nvidia", RerankerNvidiaConfig | undefined>;
                transformers: () => ModuleConfig<
                    "reranker-transformers",
                    Record<string, never>,
                >;
                voyageAI: (
                    config?: RerankerVoyageAIConfig,
                ) => ModuleConfig<
                    "reranker-voyageai",
                    RerankerVoyageAIConfig
                    | undefined,
                >;
            };
            sharding: (
                options: {
                    desiredCount?: number;
                    desiredVirtualCount?: number;
                    virtualPerPhysical?: number;
                },
            ) => ShardingConfigCreate;
            tokenization: {
                FIELD: "field";
                GSE: "gse";
                KAGOME_KR: "kagome_kr";
                LOWERCASE: "lowercase";
                TRIGRAM: "trigram";
                WHITESPACE: "whitespace";
                WORD: "word";
            };
            vectorDistances: {
                COSINE: "cosine";
                DOT: "dot";
                HAMMING: "hamming";
                L2_SQUARED: "l2-squared";
            };
            vectorIndex: {
                dynamic: (
                    opts?: VectorIndexConfigDynamicCreateOptions,
                ) => ModuleConfig<"dynamic", VectorIndexConfigDynamicCreate | undefined>;
                flat: (
                    opts?: VectorIndexConfigFlatCreateOptions,
                ) => ModuleConfig<"flat", VectorIndexConfigFlatCreate | undefined>;
                hnsw: (
                    opts?: VectorIndexConfigHNSWCreateOptions,
                ) => ModuleConfig<"hnsw", VectorIndexConfigHNSWCreate | undefined>;
                multiVector: {
                    encoding: {
                        muvera: (
                            options?: {
                                dprojections?: number;
                                ksim?: number;
                                repetitions?: number;
                            },
                        ) => {
                            dprojections?: number;
                            ksim?: number;
                            repetitions?: number;
                            type?: "muvera";
                        };
                    };
                    multiVector: (
                        options?: {
                            aggregation?: string;
                            encoding?: {
                                dprojections?: number;
                                ksim?: number;
                                repetitions?: number;
                                type?: "muvera";
                            };
                        },
                    ) => MultiVectorConfigCreate;
                };
                quantizer: {
                    bq: (
                        options?: { cache?: boolean; rescoreLimit?: number },
                    ) => BQConfigCreate;
                    none: () => UncompressedConfig;
                    pq: (
                        options?: {
                            bitCompression?: boolean;
                            centroids?: number;
                            encoder?: {
                                distribution?: PQEncoderDistribution;
                                type?: PQEncoderType;
                            };
                            segments?: number;
                            trainingLimit?: number;
                        },
                    ) => PQConfigCreate;
                    rq: (
                        options?: { bits?: number; rescoreLimit?: number },
                    ) => RQConfigCreate;
                    sq: (
                        options?: { rescoreLimit?: number; trainingLimit?: number },
                    ) => SQConfigCreate;
                };
            };
            vectorizer: {
                img2VecNeural: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Img2VecNeuralConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    },
                ) => VectorConfigCreate<never, N, I, "img2vec-neural">;
                multi2VecBind: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<Multi2VecBindConfig, Multi2VecOmissions> & {
                        audioFields?: string[] | Multi2VecField[];
                        depthFields?: string[] | Multi2VecField[];
                        imageFields?: string[] | Multi2VecField[];
                        IMUFields?: string[] | Multi2VecField[];
                        textFields?: string[] | Multi2VecField[];
                        thermalFields?: string[] | Multi2VecField[];
                        videoFields?: string[] | Multi2VecField[];
                    } & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    },
                ) => VectorConfigCreate<never, N, I, "multi2vec-bind">;
                multi2VecClip: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<Multi2VecClipConfig, Multi2VecOmissions> & {
                        imageFields?: string[] | Multi2VecField[];
                        textFields?: string[] | Multi2VecField[];
                    } & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    },
                ) => VectorConfigCreate<never, N, I, "multi2vec-clip">;
                multi2VecCohere: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<Multi2VecCohereConfig, Multi2VecOmissions> & {
                        imageFields?: string[] | Multi2VecField[];
                        textFields?: string[] | Multi2VecField[];
                    } & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    },
                ) => VectorConfigCreate<never, N, I, "multi2vec-cohere">;
                multi2VecGoogle: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts: ConfigureNonTextVectorizerOptions<N, I, "multi2vec-google">,
                ) => VectorConfigCreate<never, N, I, "multi2vec-google">;
                multi2VecJinaAI: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<Multi2VecJinaAIConfig, Multi2VecOmissions> & {
                        imageFields?: string[] | Multi2VecField[];
                        textFields?: string[] | Multi2VecField[];
                    } & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    },
                ) => VectorConfigCreate<never, N, I, "multi2vec-jinaai">;
                multi2VecPalm: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts: ConfigureNonTextVectorizerOptions<N, I, "multi2vec-palm">,
                ) => VectorConfigCreate<never, N, I, "multi2vec-palm">;
                multi2VecVoyageAI: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<Multi2VecVoyageAIConfig, Multi2VecOmissions> & {
                        imageFields?: string[] | Multi2VecField[];
                        textFields?: string[] | Multi2VecField[];
                        videoFields?: string[] | Multi2VecField[];
                    } & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    },
                ) => VectorConfigCreate<never, N, I, "multi2vec-voyageai">;
                none: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    },
                ) => VectorConfigCreate<never, N, I, "none">;
                ref2VecCentroid: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts: ConfigureNonTextVectorizerOptions<N, I, "ref2vec-centroid">,
                ) => VectorConfigCreate<never, N, I, "ref2vec-centroid">;
                selfProvided: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    },
                ) => VectorConfigCreate<never, N, I, "none">;
                text2VecAWS: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts: ConfigureTextVectorizerOptions<T, N, I, "text2vec-aws">,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-aws">;
                text2VecAzureOpenAI: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts: ConfigureTextVectorizerOptions<
                        T,
                        N,
                        I,
                        "text2vec-azure-openai",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-azure-openai">;
                text2VecCohere: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecCohereConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-cohere">;
                text2VecContextionary: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecContextionaryConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-contextionary">;
                text2VecDatabricks: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts: ConfigureTextVectorizerOptions<T, N, I, "text2vec-databricks">,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-databricks">;
                text2VecGoogle: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecGoogleConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-google">;
                text2VecGPT4All: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecGPT4AllConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-gpt4all">;
                text2VecHuggingFace: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecHuggingFaceConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-huggingface">;
                text2VecJinaAI: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecJinaAIConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-jinaai">;
                text2VecMistral: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecMistralConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-mistral">;
                text2VecModel2Vec: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecModel2Vec & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-model2vec">;
                text2VecNvidia: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecNvidiaConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-nvidia">;
                text2VecOllama: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecOllamaConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-ollama">;
                text2VecOpenAI: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecOpenAIConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-openai">;
                text2VecPalm: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecGoogleConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-palm">;
                text2VecTransformers: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecTransformersConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-transformers">;
                text2VecVoyageAI: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecVoyageAIConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-voyageai">;
                text2VecWeaviate: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecWeaviateConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-weaviate">;
            };
            vectors: {
                img2VecNeural: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Img2VecNeuralConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    },
                ) => VectorConfigCreate<never, N, I, "img2vec-neural">;
                multi2VecBind: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Omit<Multi2VecBindConfig, Multi2VecOmissions> & {
                            audioFields?: string[] | Multi2VecField[];
                            depthFields?: string[] | Multi2VecField[];
                            imageFields?: string[] | Multi2VecField[];
                            IMUFields?: string[] | Multi2VecField[];
                            textFields?: string[] | Multi2VecField[];
                            thermalFields?: string[] | Multi2VecField[];
                            videoFields?: string[] | Multi2VecField[];
                        } & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<never, N, I, "multi2vec-bind">;
                multi2VecClip: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Omit<Multi2VecClipConfig, Multi2VecOmissions> & {
                            imageFields?: string[] | Multi2VecField[];
                            textFields?: string[] | Multi2VecField[];
                        } & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<never, N, I, "multi2vec-clip">;
                multi2VecCohere: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Omit<Multi2VecCohereConfig, Multi2VecOmissions> & {
                            imageFields?: string[] | Multi2VecField[];
                            textFields?: string[] | Multi2VecField[];
                        } & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<never, N, I, "multi2vec-cohere">;
                multi2VecGoogle: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts: Omit<
                        ConfigureNonTextVectorizerOptions<N, I, "multi2vec-google">,
                        "vectorizeCollectionName",
                    > & { model?: string; modelId?: undefined },
                ) => VectorConfigCreate<never, N, I, "multi2vec-google">;
                multi2VecJinaAI: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Omit<Multi2VecJinaAIConfig, Multi2VecOmissions> & {
                            imageFields?: string[] | Multi2VecField[];
                            textFields?: string[] | Multi2VecField[];
                        } & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<never, N, I, "multi2vec-jinaai">;
                multi2VecNvidia: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<Multi2VecNvidiaConfig, Multi2VecOmissions> & {
                        imageFields?: string[] | Multi2VecField[];
                        outputEncoding?: string;
                        textFields?: string[] | Multi2VecField[];
                    } & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    },
                ) => VectorConfigCreate<never, N, I, "multi2vec-nvidia">;
                multi2VecVoyageAI: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Omit<Multi2VecVoyageAIConfig, Multi2VecOmissions> & {
                            imageFields?: string[] | Multi2VecField[];
                            textFields?: string[] | Multi2VecField[];
                            videoFields?: string[] | Multi2VecField[];
                        } & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<never, N, I, "multi2vec-voyageai">;
                none: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    },
                ) => VectorConfigCreate<never, N, I, "none">;
                ref2VecCentroid: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts: ConfigureNonTextVectorizerOptions<N, I, "ref2vec-centroid">,
                ) => VectorConfigCreate<never, N, I, "ref2vec-centroid">;
                selfProvided: <
                    N extends string
                    | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    },
                ) => VectorConfigCreate<never, N, I, "none">;
                text2VecAWS: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts: Omit<
                        ConfigureTextVectorizerOptions<T, N, I, "text2vec-aws">,
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-aws">;
                text2VecAzureOpenAI: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts: Omit<
                        ConfigureTextVectorizerOptions<T, N, I, "text2vec-azure-openai">,
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-azure-openai">;
                text2VecCohere: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Text2VecCohereConfig & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-cohere">;
                text2VecContextionary: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Text2VecContextionaryConfig & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-contextionary">;
                text2VecDatabricks: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts: Omit<
                        ConfigureTextVectorizerOptions<T, N, I, "text2vec-databricks">,
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-databricks">;
                text2VecGoogle: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Text2VecGoogleConfig & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<(...), (...)>;
                        } & { sourceProperties?: (...)[] },
                        "vectorizeCollectionName",
                    > & { model?: string; modelId?: undefined },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-google">;
                text2VecGoogleAiStudio: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecGoogleAiStudioConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-google">;
                text2VecGPT4All: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Text2VecGPT4AllConfig & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-gpt4all">;
                text2VecHuggingFace: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Text2VecHuggingFaceConfig & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-huggingface">;
                text2VecJinaAI: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Text2VecJinaAIConfig & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-jinaai">;
                text2VecMistral: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Text2VecMistralConfig & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-mistral">;
                text2VecModel2Vec: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecModel2Vec & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-model2vec">;
                text2VecMorph: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Text2VecMorphConfig & {
                        name?: N;
                        quantizer?: QuantizerConfigCreate;
                        vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                    } & { sourceProperties?: PrimitiveKeys<T>[] },
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-morph">;
                text2VecNvidia: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Text2VecNvidiaConfig & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-nvidia">;
                text2VecOllama: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Text2VecOllamaConfig & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-ollama">;
                text2VecOpenAI: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Text2VecOpenAIConfig & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-openai">;
                text2VecTransformers: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Text2VecTransformersConfig & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-transformers">;
                text2VecVoyageAI: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Text2VecVoyageAIConfig & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-voyageai">;
                text2VecWeaviate: <
                    T,
                    N extends string | undefined = undefined,
                    I extends string = "hnsw",
                >(
                    opts?: Omit<
                        Text2VecWeaviateConfig & {
                            name?: N;
                            quantizer?: QuantizerConfigCreate;
                            vectorIndexConfig?: ModuleConfig<
                                I,
                                VectorIndexConfigCreateType<(...)>,
                            >;
                        } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                        "vectorizeCollectionName",
                    >,
                ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-weaviate">;
            };
        };
        connectToCustom: (
            options: ConnectToCustomOptions,
        ) => Promise<WeaviateClient>;
        connectToLocal: (
            options?: ConnectToLocalOptions,
        ) => Promise<WeaviateClient>;
        connectToWCD: (
            clusterURL: string,
            options?: ConnectToWeaviateCloudOptions,
        ) => Promise<WeaviateClient>;
        connectToWCS: (
            clusterURL: string,
            options?: ConnectToWeaviateCloudOptions,
        ) => Promise<WeaviateClient>;
        connectToWeaviateCloud: (
            clusterURL: string,
            options?: ConnectToWeaviateCloudOptions,
        ) => Promise<WeaviateClient>;
        filter: Filter<any>;
        permissions: {
            aliases: (
                args: {
                    alias: string | string[];
                    collection: string | string[];
                    create?: boolean;
                    delete?: boolean;
                    read?: boolean;
                    update?: boolean;
                },
            ) => AliasPermission[];
            backup: (
                args: { collection: string | string[]; manage?: boolean },
            ) => BackupsPermission[];
            cluster: (args: { read?: boolean }) => ClusterPermission[];
            collections: (
                args: {
                    collection: string | string[];
                    create_collection?: boolean;
                    delete_collection?: boolean;
                    read_config?: boolean;
                    update_config?: boolean;
                },
            ) => CollectionsPermission[];
            data: (
                args: {
                    collection: string | string[];
                    create?: boolean;
                    delete?: boolean;
                    read?: boolean;
                    tenant?: string | string[];
                    update?: boolean;
                },
            ) => DataPermission[];
            groups: {
                oidc: (
                    args: {
                        assignAndRevoke?: boolean;
                        groupID: string | string[];
                        read?: boolean;
                    },
                ) => GroupsPermission[];
            };
            nodes: {
                minimal: (args: { read?: boolean }) => NodesPermission[];
                verbose: (
                    args: { collection: string | string[]; read?: boolean },
                ) => NodesPermission[];
            };
            replicate: (
                args: {
                    collection: string | string[];
                    create?: boolean;
                    delete?: boolean;
                    read?: boolean;
                    shard: string | string[];
                    update?: boolean;
                },
            ) => ReplicatePermission[];
            roles: (
                args: {
                    create?: boolean;
                    delete?: boolean;
                    read?: boolean;
                    role: string | string[];
                    update?: boolean;
                },
            ) => RolesPermission[];
            tenants: (
                args: {
                    collection: string | string[];
                    create?: boolean;
                    delete?: boolean;
                    read?: boolean;
                    tenant?: string | string[];
                    update?: boolean;
                },
            ) => TenantsPermission[];
            users: (
                args: {
                    assignAndRevoke?: boolean;
                    read?: boolean;
                    user: string | string[];
                },
            ) => UsersPermission[];
        };
        query: {
            hybridVector: { nearText: () => void; nearVector: () => void };
            nearVector: {
                listOfVectors: <V extends PrimitiveVectorType>(
                    ...vectors: V[],
                ) => ListOfVectors<V>;
            };
        };
        reconfigure: {
            generative: {
                azureOpenAI: (
                    config: GenerativeAzureOpenAIConfigCreate,
                ) => ModuleConfig<"generative-openai", GenerativeAzureOpenAIConfig>;
                cohere: (
                    config?: GenerativeCohereConfigCreate,
                ) => ModuleConfig<
                    "generative-cohere",
                    GenerativeCohereConfig
                    | undefined,
                >;
                contextualai: (
                    config?: GenerativeContextualAIConfigCreate,
                ) => ModuleConfig<
                    "generative-contextualai",
                    GenerativeContextualAIConfig
                    | undefined,
                >;
                databricks: (
                    config: GenerativeDatabricksConfig,
                ) => ModuleConfig<"generative-databricks", GenerativeDatabricksConfig>;
                google: (
                    config?: GenerativeGoogleConfig,
                ) => ModuleConfig<
                    "generative-google",
                    GenerativeGoogleConfig
                    | undefined,
                >;
                openAI: (
                    config?: GenerativeOpenAIConfigCreate,
                ) => ModuleConfig<
                    "generative-openai",
                    GenerativeOpenAIConfig
                    | undefined,
                >;
                palm: (
                    config?: GenerativeGoogleConfig,
                ) => ModuleConfig<"generative-palm", GenerativeGoogleConfig | undefined>;
                xai: (
                    config?: GenerativeXAIConfig,
                ) => ModuleConfig<"generative-xai", GenerativeXAIConfig | undefined>;
                anthropic(
                    config?: GenerativeAnthropicConfig,
                ): ModuleConfig<
                    "generative-anthropic",
                    GenerativeAnthropicConfig
                    | undefined,
                >;
                anyscale(
                    config?: GenerativeAnyscaleConfig,
                ): ModuleConfig<
                    "generative-anyscale",
                    GenerativeAnyscaleConfig
                    | undefined,
                >;
                aws(
                    config: GenerativeAWSConfig,
                ): ModuleConfig<"generative-aws", GenerativeAWSConfig>;
                friendliai(
                    config?: GenerativeFriendliAIConfig,
                ): ModuleConfig<
                    "generative-friendliai",
                    GenerativeFriendliAIConfig
                    | undefined,
                >;
                mistral(
                    config?: GenerativeMistralConfig,
                ): ModuleConfig<
                    "generative-mistral",
                    GenerativeMistralConfig
                    | undefined,
                >;
                nvidia(
                    config?: GenerativeNvidiaConfig,
                ): ModuleConfig<"generative-nvidia", GenerativeNvidiaConfig | undefined>;
                ollama(
                    config?: GenerativeOllamaConfig,
                ): ModuleConfig<"generative-ollama", GenerativeOllamaConfig | undefined>;
            };
            invertedIndex: (
                options: {
                    bm25b?: number;
                    bm25k1?: number;
                    cleanupIntervalSeconds?: number;
                    stopwordsAdditions?: string[];
                    stopwordsPreset?: "none" | "en";
                    stopwordsRemovals?: string[];
                },
            ) => InvertedIndexConfigUpdate;
            multiTenancy: (
                options: {
                    autoTenantActivation?: boolean;
                    autoTenantCreation?: boolean;
                },
            ) => MultiTenancyConfigUpdate;
            objectTTL: {
                deleteByCreationTime: (
                    options: {
                        defaultTTLSeconds: number;
                        filterExpiredObjects?: boolean;
                    },
                ) => {
                    defaultTTLSeconds?: number;
                    deleteOn?: string;
                    enabled?: boolean;
                    filterExpiredObjects?: boolean;
                };
                deleteByDateProperty: (
                    options: {
                        defaultTTLSeconds?: number;
                        filterExpiredObjects?: boolean;
                        propertyName: string;
                    },
                ) => {
                    defaultTTLSeconds?: number;
                    deleteOn?: string;
                    enabled?: boolean;
                    filterExpiredObjects?: boolean;
                };
                deleteByUpdateTime: (
                    options: {
                        defaultTTLSeconds: number;
                        filterExpiredObjects?: boolean;
                    },
                ) => {
                    defaultTTLSeconds?: number;
                    deleteOn?: string;
                    enabled?: boolean;
                    filterExpiredObjects?: boolean;
                };
                disable: () => {
                    defaultTTLSeconds?: number;
                    deleteOn?: string;
                    enabled?: boolean;
                    filterExpiredObjects?: boolean;
                };
            };
            replication: (
                options: {
                    asyncEnabled?: boolean;
                    deletionStrategy?: ReplicationDeletionStrategy;
                    factor?: number;
                },
            ) => ReplicationConfigUpdate;
            reranker: {
                cohere: (
                    config?: RerankerCohereConfig,
                ) => ModuleConfig<"reranker-cohere", RerankerCohereConfig | undefined>;
                contextualai: (
                    config?: RerankerContextualAIConfig,
                ) => ModuleConfig<
                    "reranker-contextualai",
                    RerankerContextualAIConfig
                    | undefined,
                >;
                jinaai: (
                    config?: RerankerJinaAIConfig,
                ) => ModuleConfig<"reranker-jinaai", RerankerJinaAIConfig | undefined>;
                nvidia: (
                    config?: RerankerNvidiaConfig,
                ) => ModuleConfig<"reranker-nvidia", RerankerNvidiaConfig | undefined>;
                transformers: () => ModuleConfig<
                    "reranker-transformers",
                    Record<string, never>,
                >;
                voyageAI: (
                    config?: RerankerVoyageAIConfig,
                ) => ModuleConfig<
                    "reranker-voyageai",
                    RerankerVoyageAIConfig
                    | undefined,
                >;
            };
            vectorIndex: {
                flat: (
                    options: {
                        quantizer?: BQConfigUpdate;
                        vectorCacheMaxObjects?: number;
                    },
                ) => ModuleConfig<"flat", VectorIndexConfigFlatUpdate>;
                hnsw: (
                    options: {
                        dynamicEfFactor?: number;
                        dynamicEfMax?: number;
                        dynamicEfMin?: number;
                        ef?: number;
                        filterStrategy?: VectorIndexFilterStrategy;
                        flatSearchCutoff?: number;
                        quantizer?:
                            | PQConfigUpdate
                            | BQConfigUpdate
                            | SQConfigUpdate
                            | RQConfigUpdate;
                        vectorCacheMaxObjects?: number;
                    },
                ) => ModuleConfig<"hnsw", VectorIndexConfigHNSWUpdate>;
                quantizer: {
                    bq: (
                        options?: { cache?: boolean; rescoreLimit?: number },
                    ) => BQConfigUpdate;
                    pq: (
                        options?: {
                            centroids?: number;
                            pqEncoderDistribution?: PQEncoderDistribution;
                            pqEncoderType?: PQEncoderType;
                            segments?: number;
                            trainingLimit?: number;
                        },
                    ) => PQConfigUpdate;
                    rq: (options?: { rescoreLimit?: number }) => RQConfigUpdate;
                    sq: (
                        options?: { rescoreLimit?: number; trainingLimit?: number },
                    ) => SQConfigUpdate;
                };
            };
            vectorizer: {
                update: <N extends string | undefined, I extends string>(
                    options: VectorizerUpdateOptions<N, I>,
                ) => VectorConfigUpdate<N, I>;
            };
            vectors: {
                update: <N extends string | undefined, I extends string>(
                    options: VectorizerUpdateOptions<N, I>,
                ) => VectorConfigUpdate<N, I>;
            };
        };
    }

    Type Declaration

    • ApiKey: typeof ApiKey
    • AuthAccessTokenCredentials: typeof AuthAccessTokenCredentials
    • AuthClientCredentials: typeof AuthClientCredentials
    • AuthUserPasswordCredentials: typeof AuthUserPasswordCredentials
    • client: (params: ClientParams) => Promise<WeaviateClient>
    • configGuards: { quantizer: typeof Quantizer; vectorIndex: typeof VectorIndex }
    • configure: {
          dataType: {
              BLOB: "blob";
              BOOLEAN: "boolean";
              BOOLEAN_ARRAY: "boolean[]";
              DATE: "date";
              DATE_ARRAY: "date[]";
              GEO_COORDINATES: "geoCoordinates";
              INT: "int";
              INT_ARRAY: "int[]";
              NUMBER: "number";
              NUMBER_ARRAY: "number[]";
              OBJECT: "object";
              OBJECT_ARRAY: "object[]";
              PHONE_NUMBER: "phoneNumber";
              TEXT: "text";
              TEXT_ARRAY: "text[]";
              UUID: "uuid";
              UUID_ARRAY: "uuid[]";
          };
          generative: {
              azureOpenAI: (
                  config: GenerativeAzureOpenAIConfigCreate,
              ) => ModuleConfig<"generative-openai", GenerativeAzureOpenAIConfig>;
              cohere: (
                  config?: GenerativeCohereConfigCreate,
              ) => ModuleConfig<"generative-cohere", GenerativeCohereConfig | undefined>;
              contextualai: (
                  config?: GenerativeContextualAIConfigCreate,
              ) => ModuleConfig<
                  "generative-contextualai",
                  GenerativeContextualAIConfig
                  | undefined,
              >;
              databricks: (
                  config: GenerativeDatabricksConfig,
              ) => ModuleConfig<"generative-databricks", GenerativeDatabricksConfig>;
              google: (
                  config?: GenerativeGoogleConfig,
              ) => ModuleConfig<"generative-google", GenerativeGoogleConfig | undefined>;
              openAI: (
                  config?: GenerativeOpenAIConfigCreate,
              ) => ModuleConfig<"generative-openai", GenerativeOpenAIConfig | undefined>;
              palm: (
                  config?: GenerativeGoogleConfig,
              ) => ModuleConfig<"generative-palm", GenerativeGoogleConfig | undefined>;
              xai: (
                  config?: GenerativeXAIConfig,
              ) => ModuleConfig<"generative-xai", GenerativeXAIConfig | undefined>;
              anthropic(
                  config?: GenerativeAnthropicConfig,
              ): ModuleConfig<
                  "generative-anthropic",
                  GenerativeAnthropicConfig
                  | undefined,
              >;
              anyscale(
                  config?: GenerativeAnyscaleConfig,
              ): ModuleConfig<
                  "generative-anyscale",
                  GenerativeAnyscaleConfig
                  | undefined,
              >;
              aws(
                  config: GenerativeAWSConfig,
              ): ModuleConfig<"generative-aws", GenerativeAWSConfig>;
              friendliai(
                  config?: GenerativeFriendliAIConfig,
              ): ModuleConfig<
                  "generative-friendliai",
                  GenerativeFriendliAIConfig
                  | undefined,
              >;
              mistral(
                  config?: GenerativeMistralConfig,
              ): ModuleConfig<"generative-mistral", GenerativeMistralConfig | undefined>;
              nvidia(
                  config?: GenerativeNvidiaConfig,
              ): ModuleConfig<"generative-nvidia", GenerativeNvidiaConfig | undefined>;
              ollama(
                  config?: GenerativeOllamaConfig,
              ): ModuleConfig<"generative-ollama", GenerativeOllamaConfig | undefined>;
          };
          invertedIndex: (
              options: {
                  bm25b?: number;
                  bm25k1?: number;
                  cleanupIntervalSeconds?: number;
                  indexNullState?: boolean;
                  indexPropertyLength?: boolean;
                  indexTimestamps?: boolean;
                  stopwordsAdditions?: string[];
                  stopwordsPreset?: "none" | "en";
                  stopwordsRemovals?: string[];
              },
          ) => {
              bm25?: { b?: number; k1?: number };
              cleanupIntervalSeconds?: number;
              indexNullState?: boolean;
              indexPropertyLength?: boolean;
              indexTimestamps?: boolean;
              stopwords?: {
                  additions?: (string | undefined)[];
                  preset?: string;
                  removals?: (string | undefined)[];
              };
          };
          multiTenancy: (
              options?: {
                  autoTenantActivation?: boolean;
                  autoTenantCreation?: boolean;
                  enabled?: boolean;
              },
          ) => {
              autoTenantActivation?: boolean;
              autoTenantCreation?: boolean;
              enabled?: boolean;
          };
          multiVectors: {
              multi2VecJinaAI: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Multi2MultivecJinaAIConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & {
                      encoding?: {
                          dprojections?: number;
                          ksim?: number;
                          repetitions?: number;
                          type?: "muvera";
                      };
                  },
              ) => VectorConfigCreate<never, N, I, "multi2multivec-jinaai">;
              multi2VecWeaviate: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<Multi2MultivecWeaviateConfig, Multi2VecOmissions> & {
                      imageField: string;
                  } & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & {
                      encoding?: {
                          dprojections?: number;
                          ksim?: number;
                          repetitions?: number;
                          type?: "muvera";
                      };
                  },
              ) => VectorConfigCreate<never, N, I, "multi2multivec-weaviate">;
              selfProvided: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: ConfigureNonTextMultiVectorizerOptions<N, I, "none">,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "none">;
              text2VecJinaAI: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: ConfigureTextMultiVectorizerOptions<
                      T,
                      N,
                      I,
                      "text2multivec-jinaai",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2multivec-jinaai">;
          };
          objectTTL: {
              deleteByCreationTime: (
                  options: { defaultTTLSeconds: number; filterExpiredObjects?: boolean },
              ) => {
                  defaultTTLSeconds?: number;
                  deleteOn?: string;
                  enabled?: boolean;
                  filterExpiredObjects?: boolean;
              };
              deleteByDateProperty: (
                  options: {
                      defaultTTLSeconds?: number;
                      filterExpiredObjects?: boolean;
                      property: string;
                  },
              ) => {
                  defaultTTLSeconds?: number;
                  deleteOn?: string;
                  enabled?: boolean;
                  filterExpiredObjects?: boolean;
              };
              deleteByUpdateTime: (
                  options: { defaultTTLSeconds: number; filterExpiredObjects?: boolean },
              ) => {
                  defaultTTLSeconds?: number;
                  deleteOn?: string;
                  enabled?: boolean;
                  filterExpiredObjects?: boolean;
              };
          };
          replication: (
              options: {
                  asyncEnabled?: boolean;
                  deletionStrategy?: ReplicationDeletionStrategy;
                  factor?: number;
              },
          ) => {
              asyncEnabled?: boolean;
              deletionStrategy?: ReplicationDeletionStrategy;
              factor?: number;
          };
          reranker: {
              cohere: (
                  config?: RerankerCohereConfig,
              ) => ModuleConfig<"reranker-cohere", RerankerCohereConfig | undefined>;
              contextualai: (
                  config?: RerankerContextualAIConfig,
              ) => ModuleConfig<
                  "reranker-contextualai",
                  RerankerContextualAIConfig
                  | undefined,
              >;
              jinaai: (
                  config?: RerankerJinaAIConfig,
              ) => ModuleConfig<"reranker-jinaai", RerankerJinaAIConfig | undefined>;
              nvidia: (
                  config?: RerankerNvidiaConfig,
              ) => ModuleConfig<"reranker-nvidia", RerankerNvidiaConfig | undefined>;
              transformers: () => ModuleConfig<
                  "reranker-transformers",
                  Record<string, never>,
              >;
              voyageAI: (
                  config?: RerankerVoyageAIConfig,
              ) => ModuleConfig<"reranker-voyageai", RerankerVoyageAIConfig | undefined>;
          };
          sharding: (
              options: {
                  desiredCount?: number;
                  desiredVirtualCount?: number;
                  virtualPerPhysical?: number;
              },
          ) => ShardingConfigCreate;
          tokenization: {
              FIELD: "field";
              GSE: "gse";
              KAGOME_KR: "kagome_kr";
              LOWERCASE: "lowercase";
              TRIGRAM: "trigram";
              WHITESPACE: "whitespace";
              WORD: "word";
          };
          vectorDistances: {
              COSINE: "cosine";
              DOT: "dot";
              HAMMING: "hamming";
              L2_SQUARED: "l2-squared";
          };
          vectorIndex: {
              dynamic: (
                  opts?: VectorIndexConfigDynamicCreateOptions,
              ) => ModuleConfig<"dynamic", VectorIndexConfigDynamicCreate | undefined>;
              flat: (
                  opts?: VectorIndexConfigFlatCreateOptions,
              ) => ModuleConfig<"flat", VectorIndexConfigFlatCreate | undefined>;
              hnsw: (
                  opts?: VectorIndexConfigHNSWCreateOptions,
              ) => ModuleConfig<"hnsw", VectorIndexConfigHNSWCreate | undefined>;
              multiVector: {
                  encoding: {
                      muvera: (
                          options?: {
                              dprojections?: number;
                              ksim?: number;
                              repetitions?: number;
                          },
                      ) => {
                          dprojections?: number;
                          ksim?: number;
                          repetitions?: number;
                          type?: "muvera";
                      };
                  };
                  multiVector: (
                      options?: {
                          aggregation?: string;
                          encoding?: {
                              dprojections?: number;
                              ksim?: number;
                              repetitions?: number;
                              type?: "muvera";
                          };
                      },
                  ) => MultiVectorConfigCreate;
              };
              quantizer: {
                  bq: (
                      options?: { cache?: boolean; rescoreLimit?: number },
                  ) => BQConfigCreate;
                  none: () => UncompressedConfig;
                  pq: (
                      options?: {
                          bitCompression?: boolean;
                          centroids?: number;
                          encoder?: {
                              distribution?: PQEncoderDistribution;
                              type?: PQEncoderType;
                          };
                          segments?: number;
                          trainingLimit?: number;
                      },
                  ) => PQConfigCreate;
                  rq: (
                      options?: { bits?: number; rescoreLimit?: number },
                  ) => RQConfigCreate;
                  sq: (
                      options?: { rescoreLimit?: number; trainingLimit?: number },
                  ) => SQConfigCreate;
              };
          };
          vectorizer: {
              img2VecNeural: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Img2VecNeuralConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  },
              ) => VectorConfigCreate<never, N, I, "img2vec-neural">;
              multi2VecBind: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<Multi2VecBindConfig, Multi2VecOmissions> & {
                      audioFields?: string[] | Multi2VecField[];
                      depthFields?: string[] | Multi2VecField[];
                      imageFields?: string[] | Multi2VecField[];
                      IMUFields?: string[] | Multi2VecField[];
                      textFields?: string[] | Multi2VecField[];
                      thermalFields?: string[] | Multi2VecField[];
                      videoFields?: string[] | Multi2VecField[];
                  } & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  },
              ) => VectorConfigCreate<never, N, I, "multi2vec-bind">;
              multi2VecClip: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<Multi2VecClipConfig, Multi2VecOmissions> & {
                      imageFields?: string[] | Multi2VecField[];
                      textFields?: string[] | Multi2VecField[];
                  } & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  },
              ) => VectorConfigCreate<never, N, I, "multi2vec-clip">;
              multi2VecCohere: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<Multi2VecCohereConfig, Multi2VecOmissions> & {
                      imageFields?: string[] | Multi2VecField[];
                      textFields?: string[] | Multi2VecField[];
                  } & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  },
              ) => VectorConfigCreate<never, N, I, "multi2vec-cohere">;
              multi2VecGoogle: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts: ConfigureNonTextVectorizerOptions<N, I, "multi2vec-google">,
              ) => VectorConfigCreate<never, N, I, "multi2vec-google">;
              multi2VecJinaAI: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<Multi2VecJinaAIConfig, Multi2VecOmissions> & {
                      imageFields?: string[] | Multi2VecField[];
                      textFields?: string[] | Multi2VecField[];
                  } & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  },
              ) => VectorConfigCreate<never, N, I, "multi2vec-jinaai">;
              multi2VecPalm: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts: ConfigureNonTextVectorizerOptions<N, I, "multi2vec-palm">,
              ) => VectorConfigCreate<never, N, I, "multi2vec-palm">;
              multi2VecVoyageAI: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<Multi2VecVoyageAIConfig, Multi2VecOmissions> & {
                      imageFields?: string[] | Multi2VecField[];
                      textFields?: string[] | Multi2VecField[];
                      videoFields?: string[] | Multi2VecField[];
                  } & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  },
              ) => VectorConfigCreate<never, N, I, "multi2vec-voyageai">;
              none: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  },
              ) => VectorConfigCreate<never, N, I, "none">;
              ref2VecCentroid: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts: ConfigureNonTextVectorizerOptions<N, I, "ref2vec-centroid">,
              ) => VectorConfigCreate<never, N, I, "ref2vec-centroid">;
              selfProvided: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  },
              ) => VectorConfigCreate<never, N, I, "none">;
              text2VecAWS: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts: ConfigureTextVectorizerOptions<T, N, I, "text2vec-aws">,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-aws">;
              text2VecAzureOpenAI: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts: ConfigureTextVectorizerOptions<T, N, I, "text2vec-azure-openai">,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-azure-openai">;
              text2VecCohere: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecCohereConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-cohere">;
              text2VecContextionary: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecContextionaryConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-contextionary">;
              text2VecDatabricks: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts: ConfigureTextVectorizerOptions<T, N, I, "text2vec-databricks">,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-databricks">;
              text2VecGoogle: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecGoogleConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-google">;
              text2VecGPT4All: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecGPT4AllConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-gpt4all">;
              text2VecHuggingFace: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecHuggingFaceConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-huggingface">;
              text2VecJinaAI: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecJinaAIConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-jinaai">;
              text2VecMistral: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecMistralConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-mistral">;
              text2VecModel2Vec: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecModel2Vec & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-model2vec">;
              text2VecNvidia: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecNvidiaConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-nvidia">;
              text2VecOllama: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecOllamaConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-ollama">;
              text2VecOpenAI: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecOpenAIConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-openai">;
              text2VecPalm: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecGoogleConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-palm">;
              text2VecTransformers: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecTransformersConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-transformers">;
              text2VecVoyageAI: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecVoyageAIConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-voyageai">;
              text2VecWeaviate: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecWeaviateConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-weaviate">;
          };
          vectors: {
              img2VecNeural: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Img2VecNeuralConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  },
              ) => VectorConfigCreate<never, N, I, "img2vec-neural">;
              multi2VecBind: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Omit<Multi2VecBindConfig, Multi2VecOmissions> & {
                          audioFields?: string[] | Multi2VecField[];
                          depthFields?: string[] | Multi2VecField[];
                          imageFields?: string[] | Multi2VecField[];
                          IMUFields?: string[] | Multi2VecField[];
                          textFields?: string[] | Multi2VecField[];
                          thermalFields?: string[] | Multi2VecField[];
                          videoFields?: string[] | Multi2VecField[];
                      } & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<never, N, I, "multi2vec-bind">;
              multi2VecClip: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Omit<Multi2VecClipConfig, Multi2VecOmissions> & {
                          imageFields?: string[] | Multi2VecField[];
                          textFields?: string[] | Multi2VecField[];
                      } & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<never, N, I, "multi2vec-clip">;
              multi2VecCohere: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Omit<Multi2VecCohereConfig, Multi2VecOmissions> & {
                          imageFields?: string[] | Multi2VecField[];
                          textFields?: string[] | Multi2VecField[];
                      } & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<never, N, I, "multi2vec-cohere">;
              multi2VecGoogle: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts: Omit<
                      ConfigureNonTextVectorizerOptions<N, I, "multi2vec-google">,
                      "vectorizeCollectionName",
                  > & { model?: string; modelId?: undefined },
              ) => VectorConfigCreate<never, N, I, "multi2vec-google">;
              multi2VecJinaAI: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Omit<Multi2VecJinaAIConfig, Multi2VecOmissions> & {
                          imageFields?: string[] | Multi2VecField[];
                          textFields?: string[] | Multi2VecField[];
                      } & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<never, N, I, "multi2vec-jinaai">;
              multi2VecNvidia: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<Multi2VecNvidiaConfig, Multi2VecOmissions> & {
                      imageFields?: string[] | Multi2VecField[];
                      outputEncoding?: string;
                      textFields?: string[] | Multi2VecField[];
                  } & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  },
              ) => VectorConfigCreate<never, N, I, "multi2vec-nvidia">;
              multi2VecVoyageAI: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Omit<Multi2VecVoyageAIConfig, Multi2VecOmissions> & {
                          imageFields?: string[] | Multi2VecField[];
                          textFields?: string[] | Multi2VecField[];
                          videoFields?: string[] | Multi2VecField[];
                      } & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<never, N, I, "multi2vec-voyageai">;
              none: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  },
              ) => VectorConfigCreate<never, N, I, "none">;
              ref2VecCentroid: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts: ConfigureNonTextVectorizerOptions<N, I, "ref2vec-centroid">,
              ) => VectorConfigCreate<never, N, I, "ref2vec-centroid">;
              selfProvided: <
                  N extends string
                  | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  },
              ) => VectorConfigCreate<never, N, I, "none">;
              text2VecAWS: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts: Omit<
                      ConfigureTextVectorizerOptions<T, N, I, "text2vec-aws">,
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-aws">;
              text2VecAzureOpenAI: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts: Omit<
                      ConfigureTextVectorizerOptions<T, N, I, "text2vec-azure-openai">,
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-azure-openai">;
              text2VecCohere: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Text2VecCohereConfig & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-cohere">;
              text2VecContextionary: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Text2VecContextionaryConfig & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-contextionary">;
              text2VecDatabricks: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts: Omit<
                      ConfigureTextVectorizerOptions<T, N, I, "text2vec-databricks">,
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-databricks">;
              text2VecGoogle: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Text2VecGoogleConfig & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<(...), (...)>;
                      } & { sourceProperties?: (...)[] },
                      "vectorizeCollectionName",
                  > & { model?: string; modelId?: undefined },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-google">;
              text2VecGoogleAiStudio: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecGoogleAiStudioConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-google">;
              text2VecGPT4All: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Text2VecGPT4AllConfig & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-gpt4all">;
              text2VecHuggingFace: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Text2VecHuggingFaceConfig & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-huggingface">;
              text2VecJinaAI: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Text2VecJinaAIConfig & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-jinaai">;
              text2VecMistral: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Text2VecMistralConfig & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-mistral">;
              text2VecModel2Vec: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecModel2Vec & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-model2vec">;
              text2VecMorph: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Text2VecMorphConfig & {
                      name?: N;
                      quantizer?: QuantizerConfigCreate;
                      vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<I>>;
                  } & { sourceProperties?: PrimitiveKeys<T>[] },
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-morph">;
              text2VecNvidia: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Text2VecNvidiaConfig & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-nvidia">;
              text2VecOllama: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Text2VecOllamaConfig & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-ollama">;
              text2VecOpenAI: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Text2VecOpenAIConfig & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-openai">;
              text2VecTransformers: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Text2VecTransformersConfig & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-transformers">;
              text2VecVoyageAI: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Text2VecVoyageAIConfig & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-voyageai">;
              text2VecWeaviate: <
                  T,
                  N extends string | undefined = undefined,
                  I extends string = "hnsw",
              >(
                  opts?: Omit<
                      Text2VecWeaviateConfig & {
                          name?: N;
                          quantizer?: QuantizerConfigCreate;
                          vectorIndexConfig?: ModuleConfig<I, VectorIndexConfigCreateType<(...)>>;
                      } & { sourceProperties?: PrimitiveKeys<(...)>[] },
                      "vectorizeCollectionName",
                  >,
              ) => VectorConfigCreate<PrimitiveKeys<T>, N, I, "text2vec-weaviate">;
          };
      }
    • connectToCustom: (options: ConnectToCustomOptions) => Promise<WeaviateClient>
    • connectToLocal: (options?: ConnectToLocalOptions) => Promise<WeaviateClient>
    • connectToWCD: (
          clusterURL: string,
          options?: ConnectToWeaviateCloudOptions,
      ) => Promise<WeaviateClient>
    • connectToWCS: (
          clusterURL: string,
          options?: ConnectToWeaviateCloudOptions,
      ) => Promise<WeaviateClient>
    • connectToWeaviateCloud: (
          clusterURL: string,
          options?: ConnectToWeaviateCloudOptions,
      ) => Promise<WeaviateClient>
    • filter: Filter<any>
    • permissions: {
          aliases: (
              args: {
                  alias: string | string[];
                  collection: string | string[];
                  create?: boolean;
                  delete?: boolean;
                  read?: boolean;
                  update?: boolean;
              },
          ) => AliasPermission[];
          backup: (
              args: { collection: string | string[]; manage?: boolean },
          ) => BackupsPermission[];
          cluster: (args: { read?: boolean }) => ClusterPermission[];
          collections: (
              args: {
                  collection: string | string[];
                  create_collection?: boolean;
                  delete_collection?: boolean;
                  read_config?: boolean;
                  update_config?: boolean;
              },
          ) => CollectionsPermission[];
          data: (
              args: {
                  collection: string | string[];
                  create?: boolean;
                  delete?: boolean;
                  read?: boolean;
                  tenant?: string | string[];
                  update?: boolean;
              },
          ) => DataPermission[];
          groups: {
              oidc: (
                  args: {
                      assignAndRevoke?: boolean;
                      groupID: string | string[];
                      read?: boolean;
                  },
              ) => GroupsPermission[];
          };
          nodes: {
              minimal: (args: { read?: boolean }) => NodesPermission[];
              verbose: (
                  args: { collection: string | string[]; read?: boolean },
              ) => NodesPermission[];
          };
          replicate: (
              args: {
                  collection: string | string[];
                  create?: boolean;
                  delete?: boolean;
                  read?: boolean;
                  shard: string | string[];
                  update?: boolean;
              },
          ) => ReplicatePermission[];
          roles: (
              args: {
                  create?: boolean;
                  delete?: boolean;
                  read?: boolean;
                  role: string | string[];
                  update?: boolean;
              },
          ) => RolesPermission[];
          tenants: (
              args: {
                  collection: string | string[];
                  create?: boolean;
                  delete?: boolean;
                  read?: boolean;
                  tenant?: string | string[];
                  update?: boolean;
              },
          ) => TenantsPermission[];
          users: (
              args: {
                  assignAndRevoke?: boolean;
                  read?: boolean;
                  user: string | string[];
              },
          ) => UsersPermission[];
      }
      • aliases: (
            args: {
                alias: string | string[];
                collection: string | string[];
                create?: boolean;
                delete?: boolean;
                read?: boolean;
                update?: boolean;
            },
        ) => AliasPermission[]

        Create a set of permissions specific to Weaviate's collection aliasing functionality.

      • backup: (
            args: { collection: string | string[]; manage?: boolean },
        ) => BackupsPermission[]

        Create a set of permissions specific to Weaviate's backup functionality.

        For all collections, provide the collection argument as '*'.

      • cluster: (args: { read?: boolean }) => ClusterPermission[]

        Create a set of permissions specific to Weaviate's cluster endpoints.

      • collections: (
            args: {
                collection: string | string[];
                create_collection?: boolean;
                delete_collection?: boolean;
                read_config?: boolean;
                update_config?: boolean;
            },
        ) => CollectionsPermission[]

        Create a set of permissions specific to any operations involving collections.

        For all collections, provide the collection argument as '*'.

      • data: (
            args: {
                collection: string | string[];
                create?: boolean;
                delete?: boolean;
                read?: boolean;
                tenant?: string | string[];
                update?: boolean;
            },
        ) => DataPermission[]

        Create a set of permissions specific to any operations involving objects within collections and tenants.

        For all collections, provide the collection argument as '*'. For all tenants, provide the tenant argument as '*'.

        Providing arrays of collections and tenants will create permissions for each combination of collection and tenant. E.g., data({ collection: ['A', 'B'], tenant: ['X', 'Y'] }) will create permissions for tenants X and Y in both collections A and B.

      • groups: {
            oidc: (
                args: {
                    assignAndRevoke?: boolean;
                    groupID: string | string[];
                    read?: boolean;
                },
            ) => GroupsPermission[];
        }

        This namespace contains methods to create permissions specific to RBAC groups.

        • oidc: (
              args: {
                  assignAndRevoke?: boolean;
                  groupID: string | string[];
                  read?: boolean;
              },
          ) => GroupsPermission[]

          Create a set of permissions for 'oidc' groups.

      • nodes: {
            minimal: (args: { read?: boolean }) => NodesPermission[];
            verbose: (
                args: { collection: string | string[]; read?: boolean },
            ) => NodesPermission[];
        }

        This namespace contains methods to create permissions specific to nodes.

        • minimal: (args: { read?: boolean }) => NodesPermission[]

          Create a set of permissions specific to reading nodes with verbosity set to minimal.

        • verbose: (args: { collection: string | string[]; read?: boolean }) => NodesPermission[]

          Create a set of permissions specific to reading nodes with verbosity set to verbose.

      • replicate: (
            args: {
                collection: string | string[];
                create?: boolean;
                delete?: boolean;
                read?: boolean;
                shard: string | string[];
                update?: boolean;
            },
        ) => ReplicatePermission[]

        Create a set of permissions specific to shard replica movement operations.

        For all collections, provide the collection argument as '*'. For all shards, provide the shard argument as '*'.

        Providing arrays of collections and shards will create permissions for each combination of collection and shard. E.g., replicate({ collection: ['A', 'B'], shard: ['X', 'Y'] }) will create permissions for shards X and Y in both collections A and B.

      • roles: (
            args: {
                create?: boolean;
                delete?: boolean;
                read?: boolean;
                role: string | string[];
                update?: boolean;
            },
        ) => RolesPermission[]

        Create a set of permissions specific to any operations involving roles.

      • tenants: (
            args: {
                collection: string | string[];
                create?: boolean;
                delete?: boolean;
                read?: boolean;
                tenant?: string | string[];
                update?: boolean;
            },
        ) => TenantsPermission[]

        Create a set of permissions specific to any operations involving tenants.

        For all collections, provide the collection argument as '*'. For all tenants, provide the tenant argument as '*'.

        Providing arrays of collections and tenants will create permissions for each combination of collection and tenant. E.g., tenants({ collection: ['A', 'B'], tenant: ['X', 'Y'] }) will create permissions for tenants X and Y in both collections A and B.

      • users: (
            args: {
                assignAndRevoke?: boolean;
                read?: boolean;
                user: string | string[];
            },
        ) => UsersPermission[]

        Create a set of permissions specific to any operations involving users.

    • query: {
          hybridVector: { nearText: () => void; nearVector: () => void };
          nearVector: {
              listOfVectors: <V extends PrimitiveVectorType>(
                  ...vectors: V[],
              ) => ListOfVectors<V>;
          };
      }
    • reconfigure: {
          generative: {
              azureOpenAI: (
                  config: GenerativeAzureOpenAIConfigCreate,
              ) => ModuleConfig<"generative-openai", GenerativeAzureOpenAIConfig>;
              cohere: (
                  config?: GenerativeCohereConfigCreate,
              ) => ModuleConfig<"generative-cohere", GenerativeCohereConfig | undefined>;
              contextualai: (
                  config?: GenerativeContextualAIConfigCreate,
              ) => ModuleConfig<
                  "generative-contextualai",
                  GenerativeContextualAIConfig
                  | undefined,
              >;
              databricks: (
                  config: GenerativeDatabricksConfig,
              ) => ModuleConfig<"generative-databricks", GenerativeDatabricksConfig>;
              google: (
                  config?: GenerativeGoogleConfig,
              ) => ModuleConfig<"generative-google", GenerativeGoogleConfig | undefined>;
              openAI: (
                  config?: GenerativeOpenAIConfigCreate,
              ) => ModuleConfig<"generative-openai", GenerativeOpenAIConfig | undefined>;
              palm: (
                  config?: GenerativeGoogleConfig,
              ) => ModuleConfig<"generative-palm", GenerativeGoogleConfig | undefined>;
              xai: (
                  config?: GenerativeXAIConfig,
              ) => ModuleConfig<"generative-xai", GenerativeXAIConfig | undefined>;
              anthropic(
                  config?: GenerativeAnthropicConfig,
              ): ModuleConfig<
                  "generative-anthropic",
                  GenerativeAnthropicConfig
                  | undefined,
              >;
              anyscale(
                  config?: GenerativeAnyscaleConfig,
              ): ModuleConfig<
                  "generative-anyscale",
                  GenerativeAnyscaleConfig
                  | undefined,
              >;
              aws(
                  config: GenerativeAWSConfig,
              ): ModuleConfig<"generative-aws", GenerativeAWSConfig>;
              friendliai(
                  config?: GenerativeFriendliAIConfig,
              ): ModuleConfig<
                  "generative-friendliai",
                  GenerativeFriendliAIConfig
                  | undefined,
              >;
              mistral(
                  config?: GenerativeMistralConfig,
              ): ModuleConfig<"generative-mistral", GenerativeMistralConfig | undefined>;
              nvidia(
                  config?: GenerativeNvidiaConfig,
              ): ModuleConfig<"generative-nvidia", GenerativeNvidiaConfig | undefined>;
              ollama(
                  config?: GenerativeOllamaConfig,
              ): ModuleConfig<"generative-ollama", GenerativeOllamaConfig | undefined>;
          };
          invertedIndex: (
              options: {
                  bm25b?: number;
                  bm25k1?: number;
                  cleanupIntervalSeconds?: number;
                  stopwordsAdditions?: string[];
                  stopwordsPreset?: "none" | "en";
                  stopwordsRemovals?: string[];
              },
          ) => InvertedIndexConfigUpdate;
          multiTenancy: (
              options: {
                  autoTenantActivation?: boolean;
                  autoTenantCreation?: boolean;
              },
          ) => MultiTenancyConfigUpdate;
          objectTTL: {
              deleteByCreationTime: (
                  options: { defaultTTLSeconds: number; filterExpiredObjects?: boolean },
              ) => {
                  defaultTTLSeconds?: number;
                  deleteOn?: string;
                  enabled?: boolean;
                  filterExpiredObjects?: boolean;
              };
              deleteByDateProperty: (
                  options: {
                      defaultTTLSeconds?: number;
                      filterExpiredObjects?: boolean;
                      propertyName: string;
                  },
              ) => {
                  defaultTTLSeconds?: number;
                  deleteOn?: string;
                  enabled?: boolean;
                  filterExpiredObjects?: boolean;
              };
              deleteByUpdateTime: (
                  options: { defaultTTLSeconds: number; filterExpiredObjects?: boolean },
              ) => {
                  defaultTTLSeconds?: number;
                  deleteOn?: string;
                  enabled?: boolean;
                  filterExpiredObjects?: boolean;
              };
              disable: () => {
                  defaultTTLSeconds?: number;
                  deleteOn?: string;
                  enabled?: boolean;
                  filterExpiredObjects?: boolean;
              };
          };
          replication: (
              options: {
                  asyncEnabled?: boolean;
                  deletionStrategy?: ReplicationDeletionStrategy;
                  factor?: number;
              },
          ) => ReplicationConfigUpdate;
          reranker: {
              cohere: (
                  config?: RerankerCohereConfig,
              ) => ModuleConfig<"reranker-cohere", RerankerCohereConfig | undefined>;
              contextualai: (
                  config?: RerankerContextualAIConfig,
              ) => ModuleConfig<
                  "reranker-contextualai",
                  RerankerContextualAIConfig
                  | undefined,
              >;
              jinaai: (
                  config?: RerankerJinaAIConfig,
              ) => ModuleConfig<"reranker-jinaai", RerankerJinaAIConfig | undefined>;
              nvidia: (
                  config?: RerankerNvidiaConfig,
              ) => ModuleConfig<"reranker-nvidia", RerankerNvidiaConfig | undefined>;
              transformers: () => ModuleConfig<
                  "reranker-transformers",
                  Record<string, never>,
              >;
              voyageAI: (
                  config?: RerankerVoyageAIConfig,
              ) => ModuleConfig<"reranker-voyageai", RerankerVoyageAIConfig | undefined>;
          };
          vectorIndex: {
              flat: (
                  options: {
                      quantizer?: BQConfigUpdate;
                      vectorCacheMaxObjects?: number;
                  },
              ) => ModuleConfig<"flat", VectorIndexConfigFlatUpdate>;
              hnsw: (
                  options: {
                      dynamicEfFactor?: number;
                      dynamicEfMax?: number;
                      dynamicEfMin?: number;
                      ef?: number;
                      filterStrategy?: VectorIndexFilterStrategy;
                      flatSearchCutoff?: number;
                      quantizer?:
                          | PQConfigUpdate
                          | BQConfigUpdate
                          | SQConfigUpdate
                          | RQConfigUpdate;
                      vectorCacheMaxObjects?: number;
                  },
              ) => ModuleConfig<"hnsw", VectorIndexConfigHNSWUpdate>;
              quantizer: {
                  bq: (
                      options?: { cache?: boolean; rescoreLimit?: number },
                  ) => BQConfigUpdate;
                  pq: (
                      options?: {
                          centroids?: number;
                          pqEncoderDistribution?: PQEncoderDistribution;
                          pqEncoderType?: PQEncoderType;
                          segments?: number;
                          trainingLimit?: number;
                      },
                  ) => PQConfigUpdate;
                  rq: (options?: { rescoreLimit?: number }) => RQConfigUpdate;
                  sq: (
                      options?: { rescoreLimit?: number; trainingLimit?: number },
                  ) => SQConfigUpdate;
              };
          };
          vectorizer: {
              update: <N extends string | undefined, I extends string>(
                  options: VectorizerUpdateOptions<N, I>,
              ) => VectorConfigUpdate<N, I>;
          };
          vectors: {
              update: <N extends string | undefined, I extends string>(
                  options: VectorizerUpdateOptions<N, I>,
              ) => VectorConfigUpdate<N, I>;
          };
      }