@apistudio/apim-cli
Version:
CLI for API Management Products
58 lines (55 loc) • 1.92 kB
text/typescript
/**
* Copyright Super iPaaS Integration LLC, an IBM Company 2024
*/
import { VCSConfigData } from "../../vcs/models/vcs-config-data.model.js";
import { VCSRepoData } from "../../vcs/models/vcs-repo-data.model.js";
import { BranchProjectInfo } from "../../vcs/models/branch-project-info.model.js";
import { ChangedItem } from "../../vcs/models/changed-item.model.js";
export interface IStudioVcsIndexedDbHandler {
setVCSConfig(configData: VCSConfigData): Promise<void>;
getVCSConfig(): Promise<VCSConfigData | void>;
setRemoteRepository(remoteRepoData: VCSRepoData[]): Promise<void>;
getRemoteRepositories(): Promise<VCSRepoData[] | void>;
setRepoProjectsData(
repoNameWithOwner: string,
branchProjectInfo: BranchProjectInfo
): Promise<void>;
getRepoProjectsData(
repoNameWithOwner: string
): Promise<BranchProjectInfo | void>;
updateChangedItem(
repoNameWithOwner: string,
branchName: string,
changedItem: ChangedItem,
isChangeDiscarded: boolean
): Promise<void>;
deleteBranchChangedItems(
repoNameWithOwner: string,
branchName: string
): Promise<void>;
setAllChangedItems(
repoNameWithOwner: string,
branchName: string,
changedItems: ChangedItem[]
): Promise<void>;
getAllChangedItems(
repoNameWithOwner: string,
branchName: string
): Promise<ChangedItem[] | void>;
setLastCommitId(
repoNameWithOwner: string,
branchName: string,
lastCommitId: string
): Promise<void>;
getLastCommitId(
repoNameWithOwner: string,
branchName: string
): Promise<string | null>;
deleteLastCommitId(
repoNameWithOwner: string,
branchName: string
): Promise<void>;
deleteRepository(repoNameWithOwner: string): Promise<void>;
deleteAllRepositoryData(): Promise<void>;
copyBranchSpecificChangedItemsToCreatedBranch(repoNameWithOwner: string, BasebranchName: string, NewbranchName: string): Promise<void>;
}