import type { LogProvider } from '../logger.js';
import type EventEmitter from 'events';
import type { IProjectStats } from '../features/project/project-service.js';
import type { ICreateEnabledDates, IProjectStatsStore } from '../types/stores/project-stats-store-type.js';
import type { Db } from './db.js';
import type { DoraFeaturesSchema } from '../openapi/index.js';
interface IProjectStatsRow {
    avg_time_to_prod_current_window: number;
    features_created_current_window: number;
    features_created_past_window: number;
    features_archived_current_window: number;
    features_archived_past_window: number;
    project_changes_current_window: number;
    project_changes_past_window: number;
    project_members_added_current_window: number;
}
declare class ProjectStatsStore implements IProjectStatsStore {
    private db;
    private timer;
    constructor(db: Db, eventBus: EventEmitter, _getLogger: LogProvider);
    updateProjectStats(projectId: string, status: IProjectStats): Promise<void>;
    getProjectStats(projectId: string): Promise<IProjectStats>;
    mapRow(row: IProjectStatsRow): IProjectStats;
    getTimeToProdDates(projectId: string): Promise<ICreateEnabledDates[]>;
    getTimeToProdDatesForFeatureToggles(projectId: string, featureToggleNames: string[]): Promise<DoraFeaturesSchema[]>;
}
export default ProjectStatsStore;
//# sourceMappingURL=project-stats-store.d.ts.map