import type { AllowedSplitWordsCollection } from './WordsCollection.js';
export interface SourceReaderOptions {
    /**
     * Max Hunspell recursive depth.
     */
    maxDepth?: number | undefined;
    /**
     * split words if necessary.
     */
    splitWords: boolean;
    /**
     * Indicate that it is an unformatted file and needs to be cleaned
     * before processing. Applies only to text file sources.
     * @default false
     */
    legacy?: boolean | undefined;
    keepCase?: boolean | undefined;
    allowedSplitWords: AllowedSplitWordsCollection;
    storeSplitWordsAsCompounds: boolean | undefined;
    minCompoundLength?: number | undefined;
}
export type AnnotatedWord = string;
export interface SourceReader {
    size: number;
    words: Iterable<AnnotatedWord>;
}
export declare function createSourceReader(filename: string, options: SourceReaderOptions): Promise<SourceReader>;
//# sourceMappingURL=SourceReader.d.ts.map