import {
getBranchInfo as getGitBranchInfo,
getFileList as getGitFileList,
getFileLastTouchInfo as getGitFileLastTouchInfo,
} from './git/operations.ts'
import {type BranchInfo} from '../dataTypes.ts'
type RepoOperationsType = {
[vcs: string]: {
getBranchInfo: (repoName: string, branchName: string, repoLocation: string) => Promise<BranchInfo['patches']>,
getFileList: (repoName: string, branchName: string, repoLocation: string) => Promise<BranchInfo['files']>,
getFileLastTouchInfo: (repoName: string, branchName: string, filename: string, repoLocation: string) => Promise<Array<{sha: string, author: string}>>,
}
}
const repoOperations: RepoOperationsType = {
git: {
getBranchInfo: getGitBranchInfo,
getFileList: getGitFileList,
getFileLastTouchInfo: getGitFileLastTouchInfo,
},
}
export default repoOperations