1- import { Execution } from " ../model/execution" ;
1+ import { Execution } from ' ../model/execution' ;
22import { Labels } from '../model/labels' ;
3- import { Result } from " ../model/result" ;
3+ import { Result } from ' ../model/result' ;
44import { SizeThresholds } from '../model/size_thresholds' ;
5+ /**
6+ * Facade for branch-related operations. Delegates to focused repositories
7+ * (GitCli, Workflow, Merge, BranchCompare) for testability.
8+ */
59export declare class BranchRepository {
10+ private readonly gitCliRepository ;
11+ private readonly workflowRepository ;
12+ private readonly mergeRepository ;
13+ private readonly branchCompareRepository ;
614 fetchRemoteBranches : ( ) => Promise < void > ;
715 getLatestTag : ( ) => Promise < string | undefined > ;
816 getCommitTag : ( latestTag : string | undefined ) => Promise < string | undefined > ;
@@ -27,35 +35,6 @@ export declare class BranchRepository {
2735 getListOfBranches : ( owner : string , repository : string , token : string ) => Promise < string [ ] > ;
2836 executeWorkflow : ( owner : string , repository : string , branch : string , workflow : string , inputs : Record < string , unknown > , token : string ) => Promise < import ( "@octokit/plugin-paginate-rest/dist-types/types" ) . OctokitResponse < never , 204 > > ;
2937 mergeBranch : ( owner : string , repository : string , head : string , base : string , timeout : number , token : string ) => Promise < Result [ ] > ;
30- getChanges : ( owner : string , repository : string , head : string , base : string , token : string ) => Promise < {
31- aheadBy : number ;
32- behindBy : number ;
33- totalCommits : number ;
34- files : {
35- filename : string ;
36- status : "modified" | "added" | "removed" | "renamed" | "copied" | "changed" | "unchanged" ;
37- additions : number ;
38- deletions : number ;
39- changes : number ;
40- blobUrl : string ;
41- rawUrl : string ;
42- contentsUrl : string ;
43- patch : string | undefined ;
44- } [ ] ;
45- commits : {
46- sha : string ;
47- message : string ;
48- author : {
49- name ?: string ;
50- email ?: string ;
51- date ?: string ;
52- } ;
53- date : string ;
54- } [ ] ;
55- } > ;
56- getSizeCategoryAndReason : ( owner : string , repository : string , head : string , base : string , sizeThresholds : SizeThresholds , labels : Labels , token : string ) => Promise < {
57- size : string ;
58- githubSize : string ;
59- reason : string ;
60- } > ;
38+ getChanges : ( owner : string , repository : string , head : string , base : string , token : string ) => Promise < import ( "./branch_compare_repository" ) . BranchComparison > ;
39+ getSizeCategoryAndReason : ( owner : string , repository : string , head : string , base : string , sizeThresholds : SizeThresholds , labels : Labels , token : string ) => Promise < import ( "./branch_compare_repository" ) . SizeCategoryResult > ;
6140}
0 commit comments