@@ -42,20 +42,6 @@ export interface ContributorRecommendation {
4242 notes : string [ ] ;
4343}
4444
45- export interface CommitInfo {
46- sha : string ;
47- message : string ;
48- authorDate : string ;
49- changedFiles : string [ ] ;
50- }
51-
52- export interface FileChangeInfo {
53- filename : string ;
54- additions ?: number ;
55- deletions ?: number ;
56- changes ?: number ;
57- }
58-
5945export interface CSMDictGeneratorInputs {
6046 repo : string ;
6147 githubToken : string ;
@@ -64,9 +50,49 @@ export interface CSMDictGeneratorInputs {
6450 debug ?: boolean ;
6551}
6652
53+ export interface GitUser {
54+ name : string ;
55+ email : string ;
56+ }
57+
58+ export interface DifferenceStatistic {
59+ totalInsertionCount : number ;
60+ totalDeletionCount : number ;
61+ fileDictionary : { [ filePath : string ] : { insertionCount : number ; deletionCount : number } } ;
62+ }
63+
64+ export interface CommitRaw {
65+ sequence : number ;
66+ id : string ;
67+ parents : string [ ] ;
68+ branches : string [ ] ;
69+ tags : string [ ] ;
70+ author : GitUser ;
71+ authorDate : Date ;
72+ committer : GitUser ;
73+ committerDate : Date ;
74+ message : string ;
75+ differenceStatistic : DifferenceStatistic ;
76+ commitMessageType : string ;
77+ }
78+
79+ export interface CommitNode {
80+ stemId ?: string ;
81+ commit : CommitRaw ;
82+ }
83+
84+ export interface CSMNode {
85+ base : CommitNode ;
86+ source : CommitNode [ ] ;
87+ }
88+
89+ export interface CSMDictionary {
90+ [ branch : string ] : CSMNode [ ] ;
91+ }
92+
6793export interface AnalysisResult {
6894 isPRSuccess : boolean ;
69- csmDict : Record < string , unknown [ ] > ;
95+ csmDict : CSMDictionary ;
7096}
7197
7298export interface CSMDictResult {
@@ -78,7 +104,7 @@ export interface CSMDictResult {
78104 isPRDataAvailable : boolean ;
79105 branches : string [ ] ;
80106 totalClusters : number ;
81- csmDict : Record < string , unknown [ ] > ;
107+ csmDict : CSMDictionary ;
82108 } ;
83109 } ;
84110 metadata : {
@@ -89,7 +115,6 @@ export interface CSMDictResult {
89115 } ;
90116}
91117
92- // React Component Test Types
93118export interface ReactComponentTestInputs {
94119 complexity ?: "simple" | "medium" | "complex" | "all" ;
95120 componentType ?: "basic" | "chart" | "form" | "data-display" | "interactive" ;
@@ -107,7 +132,6 @@ export interface ReactComponentTestResult {
107132 testQuestions : string [ ] ;
108133}
109134
110- // Data-driven React Component Types
111135export interface DataDrivenComponentInputs {
112136 dataType ?: "chart" | "table" | "list" | "card" | "all" ;
113137 sampleData ?: boolean ;
0 commit comments