import { EventEmitter } from 'events';
import { CostMode, type RawUsageEntry, type UsageEntry } from '../types/index.js';
import { PricingCalculator } from '../core/pricing.js';
export interface ReadOptions {
    dataPath?: string;
    hoursBack?: number;
    costMode?: CostMode;
    includeRaw?: boolean;
}
export interface ReadResult {
    entries: UsageEntry[];
    rawEntries?: RawUsageEntry[];
}
export declare class UsageDataReader extends EventEmitter {
    private dataPath;
    private pricingCalculator;
    private processedHashes;
    constructor(dataPath?: string, pricingCalculator?: PricingCalculator);
    loadUsageEntries(options?: ReadOptions): Promise<ReadResult>;
    private findJsonlFiles;
    private processFile;
    private shouldProcessEntry;
    private createUniqueHash;
    private updateProcessedHashes;
    private mapToUsageEntry;
    clearCache(): void;
}
export declare const defaultReader: UsageDataReader;
//# sourceMappingURL=reader.d.ts.map