import { BoostOptions, DiversityConfig, FilterValue, MMR, MultiTargetVectorJoin, NumericDecay, PropertyValue, TimeDecay, 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 Boost { static filter(filter: FilterValue, args?: Pick): BoostOptions; static timeDecay(args: Omit & Pick): BoostOptions; static numericDecay(args: Omit & Pick): BoostOptions; static numericProperty(args: Omit & Pick): BoostOptions; static blend(boosts: BoostOptions[], options: Pick): BoostOptions; } export declare class Bm25Operator { static and(): Bm25OperatorOptions; static or(opts: Omit): Bm25OperatorOptions; } export declare class Diversity { /** Use Maximal Marginal Relevance diversity selection. */ static mmr(args?: Omit): DiversityConfig; }