/**
 * Copyright IBM Corp. 2024, 2025
 */
import { VCSConfigData } from '../models/vcs-config-data.model.js';
import { VCSRepoData } from '../models/vcs-repo-data.model.js';
import { Response } from '../../common/models/response-wrapper.js';
import { TreeEntry } from '../../common/models/tree-entry.model.js';
export interface IVcsRepoHandler {
    getVcsConfig(): Promise<Response<null | VCSConfigData>>;
    setVcsConfig(vcsConfig: VCSConfigData): Promise<void>;
    addRepositories(repoInfo: VCSRepoData[]): Promise<Response<void | VCSRepoData[]>>;
    getAllRepositories(): Promise<Response<VCSRepoData[] | void>>;
    getRepository(rootDirAlias: string): Promise<Response<VCSRepoData | null>>;
    deleteRepository(name: string): Promise<void>;
    getRepositoryContent(repoNameWithOwner: string): Promise<TreeEntry[] | void>;
}
//# sourceMappingURL=vcs-repo-handler.interface.d.ts.map