/**
 * Data Aggregator for Claude Code Usage Analytics
 *
 * Aggregates raw JSONL entries into daily, monthly, and session summaries.
 * Uses model-pricing.ts for cost calculations.
 */
import { type RawUsageEntry } from '../jsonl-parser';
import { type DailyUsage, type HourlyUsage, type MonthlyUsage, type SessionUsage } from './types';
/**
 * Aggregate raw entries into daily usage summaries
 * Groups by date (YYYY-MM-DD), calculates costs per model
 */
export declare function aggregateDailyUsage(entries: RawUsageEntry[], source?: string): DailyUsage[];
/**
 * Aggregate raw entries into hourly usage summaries
 * Groups by hour (YYYY-MM-DD HH:00), calculates costs per model
 */
export declare function aggregateHourlyUsage(entries: RawUsageEntry[], source?: string): HourlyUsage[];
/**
 * Aggregate raw entries into monthly usage summaries
 * Groups by month (YYYY-MM), calculates costs per model
 */
export declare function aggregateMonthlyUsage(entries: RawUsageEntry[], source?: string): MonthlyUsage[];
/**
 * Aggregate raw entries into session usage summaries
 * Groups by sessionId, tracks last activity and versions
 */
export declare function aggregateSessionUsage(entries: RawUsageEntry[], source?: string): SessionUsage[];
import { type ParserOptions } from '../jsonl-parser';
/**
 * Load daily usage data (replaces better-ccusage loadDailyUsageData)
 */
export declare function loadDailyUsageData(options?: ParserOptions): Promise<DailyUsage[]>;
/**
 * Load hourly usage data for today's chart
 */
export declare function loadHourlyUsageData(options?: ParserOptions): Promise<HourlyUsage[]>;
/**
 * Load monthly usage data (replaces better-ccusage loadMonthlyUsageData)
 */
export declare function loadMonthlyUsageData(options?: ParserOptions): Promise<MonthlyUsage[]>;
/**
 * Load session data (replaces better-ccusage loadSessionData)
 */
export declare function loadSessionData(options?: ParserOptions): Promise<SessionUsage[]>;
/**
 * Load all usage data in a single pass (more efficient)
 */
export declare function loadAllUsageData(options?: ParserOptions): Promise<{
    daily: DailyUsage[];
    hourly: HourlyUsage[];
    monthly: MonthlyUsage[];
    session: SessionUsage[];
}>;
//# sourceMappingURL=data-aggregator.d.ts.map