import type { MongoDBAccessor } from '../../accessor/mongodb.ts';
import type { MongoFindOptions, MongoIterOptions } from './_driver.ts';
import { EntityKind } from './types.ts';
export declare function listDatabases(accessor: MongoDBAccessor): Promise<string[]>;
export declare function listCollections(accessor: MongoDBAccessor, database: string, kind?: EntityKind | null): Promise<string[]>;
export declare function databaseExists(accessor: MongoDBAccessor, database: string): Promise<boolean>;
export declare function entityExists(accessor: MongoDBAccessor, database: string, name: string, kind?: EntityKind | null): Promise<boolean>;
export declare function findDocuments<T = Record<string, unknown>>(accessor: MongoDBAccessor, database: string, collection: string, filter?: Record<string, unknown>, options?: MongoFindOptions): Promise<T[]>;
export declare function iterDocuments<T = Record<string, unknown>>(accessor: MongoDBAccessor, database: string, collection: string, options?: MongoIterOptions): AsyncIterableIterator<T>;
export declare function findSnapshot<T = Record<string, unknown>>(accessor: MongoDBAccessor, database: string, collection: string, options: MongoFindOptions): Promise<[T[], unknown] | null>;
export declare function iterInserts<T = Record<string, unknown>>(accessor: MongoDBAccessor, database: string, collection: string, after?: unknown): AsyncIterableIterator<T>;
export declare function countDocuments(accessor: MongoDBAccessor, database: string, collection: string, filter?: Record<string, unknown>): Promise<number>;
export declare function isView(accessor: MongoDBAccessor, database: string, collection: string): Promise<boolean>;
export declare function getIndexes(accessor: MongoDBAccessor, database: string, collection: string): Promise<Record<string, unknown>[]>;
export declare function getValidator(accessor: MongoDBAccessor, database: string, collection: string): Promise<unknown>;
//# sourceMappingURL=client.d.ts.map