import { ShellApiWithMongoClass } from './decorators'; import type Mongo from './mongo'; import type { Batch, Document, WriteConcern, OrderedBulkOperation, UnorderedBulkOperation, FindOperators, CollationOptions } from '@mongosh/service-provider-core'; import { asPrintable } from './enums'; import { BulkWriteResult } from './result'; import type { CollectionWithSchema } from './collection'; import type { MQLDocument, MQLQuery } from './mql-types'; export declare class BulkFindOp extends ShellApiWithMongoClass { _serviceProviderBulkFindOp: FindOperators; _parentBulk: Bulk; constructor(innerFind: FindOperators, parentBulk: Bulk); get _mongo(): Mongo; [asPrintable](): string; collation(spec: CollationOptions): BulkFindOp; arrayFilters(filters: Document[]): BulkFindOp; hint(hintDoc: Document): BulkFindOp; delete(): Bulk; deleteOne(): Bulk; remove(): Bulk; removeOne(): Bulk; replaceOne(replacement: Document): Bulk; updateOne(update: Document | Document[]): Bulk; update(update: Document | Document[]): Bulk; upsert(): BulkFindOp; } export default class Bulk extends ShellApiWithMongoClass { _mongo: Mongo; _collection: CollectionWithSchema; _batchCounts: any; _executed: boolean; _serviceProviderBulkOp: OrderedBulkOperation | UnorderedBulkOperation; _ordered: boolean; constructor(collection: CollectionWithSchema, innerBulk: OrderedBulkOperation | UnorderedBulkOperation, ordered?: boolean); [asPrintable](): any; private _emitBulkApiCall; execute(writeConcern?: WriteConcern): Promise; find(query: MQLQuery): BulkFindOp; insert(document: MQLDocument): Bulk; toJSON(): Record<'nInsertOps' | 'nUpdateOps' | 'nRemoveOps' | 'nBatches', number>; toString(): string; getOperations(): Pick[]; }