///
import type { Readable } from 'stream';
import type { DataService } from 'mongodb-data-service';
import type { Document } from 'mongodb';
import type { ExportQuery } from './export-types';
export type SchemaPath = string[];
export declare function createProjectionFromSchemaFields(fields: SchemaPath[]): Document;
type ProgressCallback = (index: number) => void;
type GatherFieldsOptions = {
input: Readable;
abortSignal?: AbortSignal;
progressCallback?: ProgressCallback;
};
type GatherFieldsResult = {
docsProcessed: number;
paths: SchemaPath[];
aborted: boolean;
};
declare function _gatherFields({ input, abortSignal, progressCallback, }: GatherFieldsOptions): Promise;
export declare function gatherFieldsFromQuery({ ns, dataService, query, sampleSize, ...exportOptions }: Omit & {
ns: string;
dataService: Pick;
query?: ExportQuery;
sampleSize?: number;
}): ReturnType;
export {};
//# sourceMappingURL=gather-fields.d.ts.map