/// import { EventEmitter } from 'events'; import * as fsScandir from '@nodelib/fs.scandir'; import type Settings from '../settings'; import type { Entry, Errno } from '../types'; import Reader from './reader'; declare type EntryEventCallback = (entry: Entry) => void; declare type ErrorEventCallback = (error: Errno) => void; declare type EndEventCallback = () => void; export default class AsyncReader extends Reader { protected readonly _settings: Settings; protected readonly _scandir: typeof fsScandir.scandir; protected readonly _emitter: EventEmitter; private readonly _queue; private _isFatalError; private _isDestroyed; constructor(_root: string, _settings: Settings); read(): EventEmitter; get isDestroyed(): boolean; destroy(): void; onEntry(callback: EntryEventCallback): void; onError(callback: ErrorEventCallback): void; onEnd(callback: EndEventCallback): void; private _pushToQueue; private _worker; private _handleError; private _handleEntry; private _emitEntry; } export {};