@apistudio/apim-cli
Version:
CLI for API Management Products
24 lines • 1.73 kB
TypeScript
/**
* Copyright IBM Corp. 2024, 2025
*/
import { TreeEntry } from '../../common/models/tree-entry.model.js';
import { APIChandle } from '../../common/interfaces/file-explorer-handler.interface.js';
import { APICFileInfo } from '../models/apic-file-info.model.js';
import { APICProject } from '../models/apic-project.model.js';
export interface IAPICFileHandler {
saveFile(fileHandle: APICFileInfo, currentProject: APICProject, content: string): Promise<boolean>;
updateFile(fileHandle: APICFileInfo, content: string): Promise<boolean>;
createFile(orgId: string, projectId: string, projectName: string, directoryPath: string | undefined, fileName: string, content: string | Blob | any): Promise<any>;
getAPICFileContent(apicFile: APICFileInfo): Promise<string>;
getAllFilesFromTheProject(orgId: string, projectName: string): Promise<APICFileInfo[]>;
getAPICFileDetails(project: APICProject): Promise<APICFileInfo[]>;
deleteFile(fileInfo: APICFileInfo): Promise<APICFileInfo>;
sendAPICFileToServer(orgId: string, projectId: string, path: string, content: string): Promise<APICFileInfo>;
createDirectory(project: APICProject, directoryPath: string | undefined, directoryName: string): Promise<TreeEntry>;
deleteFromIndexDb(fileKey: string): Promise<boolean>;
moveAPICFile(item: APICFileInfo, targetDirectory: APIChandle, project: APICProject): Promise<APICFileInfo>;
renameAPICFile(item: APICFileInfo, newName: string, project: APICProject): Promise<APICFileInfo>;
getFileDetailsFromTheProject(project: APICProject): Promise<APICFileInfo[]>;
removeIndexDbEntriesBasedOnProject(projectName: string): Promise<any>;
}
//# sourceMappingURL=apic-file-handler.interface.d.ts.map