import { MultiTargetVectorJoin, Vectors } from '../index.js'; import { Bm25OperatorOptions, Bm25OperatorOr, ListOfVectors, MultiVectorType, NearVectorInputType, PrimitiveVectorType, SingleVectorType, TargetVectorInputType } from './types.js'; export declare class NearVectorInputGuards { static is1D(input: NearVectorInputType): input is SingleVectorType; static is2D(input: NearVectorInputType): input is MultiVectorType; static isObject(input: NearVectorInputType): input is Record | ListOfVectors>; static isListOf1D(input: PrimitiveVectorType | ListOfVectors | ListOfVectors): input is ListOfVectors; static isListOf2D(input: PrimitiveVectorType | ListOfVectors | ListOfVectors): input is ListOfVectors; } export declare class ArrayInputGuards { static is1DArray(input: U | T): input is T; static is2DArray(input: U | T): input is T; } export declare class TargetVectorInputGuards { static isSingle(input: TargetVectorInputType): input is string; static isMulti(input: TargetVectorInputType): input is string[]; static isMultiJoin(input: TargetVectorInputType): input is MultiTargetVectorJoin; } export declare class Bm25Operator { static and(): Bm25OperatorOptions; static or(opts: Omit): Bm25OperatorOptions; }