export declare const hasOwn: (v: PropertyKey) => boolean; export declare const ELEMENT_OPERATORS: { $lt: { compileElementSelector(operand: any): (value: any) => any; }; $gt: { compileElementSelector(operand: any): (value: any) => any; }; $lte: { compileElementSelector(operand: any): (value: any) => any; }; $gte: { compileElementSelector(operand: any): (value: any) => any; }; $mod: { compileElementSelector(operand: any): (value: any) => boolean; }; $in: { compileElementSelector(operand: any): (value: any) => boolean; }; $size: { dontExpandLeafArrays: boolean; compileElementSelector(operand: any): (value: any) => boolean; }; $type: { dontIncludeLeafArrays: boolean; compileElementSelector(operand: any): (value: any) => boolean; }; $bitsAllSet: { compileElementSelector(operand: any): (value: any) => boolean; }; $bitsAnySet: { compileElementSelector(operand: any): (value: any) => boolean; }; $bitsAllClear: { compileElementSelector(operand: any): (value: any) => boolean; }; $bitsAnyClear: { compileElementSelector(operand: any): (value: any) => boolean; }; $regex: { compileElementSelector(operand: any, valueSelector: any): (value: any) => any; }; $elemMatch: { dontExpandLeafArrays: boolean; compileElementSelector(operand: any, valueSelector: any, matcher: any): (value: any) => number | false; }; }; export declare function compileDocumentSelector(docSelector: any, matcher: any, options?: { isRoot?: boolean; inElemMatch?: boolean; }): any; export declare function equalityElementMatcher(elementSelector: any): (value: any) => any; export declare function expandArraysInBranches(branches: any, skipTheArrays?: boolean): any[]; export declare function isIndexable(obj: any): boolean; export declare function isNumericKey(s: any): boolean; export declare function isOperatorObject(valueSelector: any, inconsistentOK?: any): boolean; export declare function makeLookupFunction(key: any, options?: { forSort?: boolean; }): (doc: any, arrayIndices?: any[]) => any[]; export declare function nothingMatcher(docOrBranchedValues: any): { result: boolean; }; export declare function pathsToTree(paths: any, newLeafFn: any, conflictFn: any, root?: {}): {}; export declare function populateDocumentWithQueryFields(query: any, document?: {}): {}; export declare function projectionDetails(fields: any): { including: any; tree: {}; }; export declare function regexpElementMatcher(regexp: any): (value: any) => any; export declare const _f: { _type(v: any): 1 | 2 | 3 | 4 | 8 | 5 | 10 | 7 | 11 | 9 | 13; _equal(a: any, b: any): any; _typeorder(t: any): number; _cmp(a: any, b: any): any; }; export declare function _checkSupportedProjection(fields: any): void; export declare function _modify(doc: any, modifier: any, options?: { isInsert?: boolean; arrayIndices?: number[]; }): void; export declare function combineImportantPathsIntoProjection(paths: any, projection: any): {}; export declare function _pathsElidingNumericKeys(paths: any): any; export declare function _compileProjection(fields: any): (doc: any) => any;