/** * Cumulative counters of artifacts generated during the process. */ export interface GeneratedCount { models: number; repositories: number; mappers: number; useCases: number; providers: number; mocks: number; specs: number; } /** * Result returned by the lint/format step. */ export interface LintResult { prettier: { ran: boolean; filesFormatted: number }; eslint: { ran: boolean; filesFixed: number }; } /** * Per-tag summary included in the generation report. */ export interface TagDetail { name: string; description: string; endpoints: number; } /** * Final generation report persisted as `generation-report.json`. */ export interface GenerationReport { timestamp: string; tags: number; endpoints: number; tagDetails: TagDetail[]; outputDirectory: string; linting: LintResult; structure: { dtos: number; repositories: number; mappers: number; useCases: number; providers: number; mocks: number; specs: number; }; }