@apistudio/apim-cli
Version:
CLI for API Management Products
78 lines (69 loc) • 2.36 kB
text/typescript
/**
* Copyright IBM Corp. 2024, 2025
*/
export interface FileHandlesWithPath {
file: FileSystemFileHandle;
path: string;
}
export interface ILocalDirectoryRequestHandler {
readFromFile(fileHandle: FileSystemFileHandle): Promise<string>;
readFileForTest(fileHandle: FileSystemFileHandle): Promise<ArrayBuffer>;
writeToFile(
fileHandle: FileSystemFileHandle,
content: unknown,
): Promise<void>;
createFile(
parentDirectoryHandle: FileSystemDirectoryHandle,
fileName: string,
): Promise<FileSystemFileHandle>;
createDirectory(
parentDirectoryHandle: FileSystemDirectoryHandle,
directoryName: string,
): Promise<FileSystemDirectoryHandle>;
deleteFile(fileHandle: FileSystemFileHandle): Promise<void>;
deleteDirectory(directoryHandle: FileSystemDirectoryHandle): Promise<void>;
renameFile(
fileHandle: FileSystemFileHandle,
newFileName: string,
): Promise<FileSystemFileHandle>;
renameDirectory(
parentDirectoryHandle: FileSystemDirectoryHandle,
oldDirectoryName: string,
newDirectoryName: string,
): Promise<FileSystemDirectoryHandle>;
copyFile(
sourceFileHandle: FileSystemFileHandle,
targetParentDirectoryHandle: FileSystemDirectoryHandle,
targetFileName: string,
): Promise<FileSystemFileHandle>;
copyDirectory(
sourceDirectoryHandle: FileSystemDirectoryHandle,
targetParentDirectoryHandle: FileSystemDirectoryHandle,
targetDirectoryName: string,
): Promise<FileSystemDirectoryHandle>;
moveFile(
sourceFileHandle: FileSystemFileHandle,
targetParentDirectoryHandle: FileSystemDirectoryHandle,
): Promise<FileSystemFileHandle>;
moveDirectory(
sourceDirectoryHandle: FileSystemDirectoryHandle,
targetParentDirectoryHandle: FileSystemDirectoryHandle,
): Promise<FileSystemDirectoryHandle>;
isAccessPermissionRequired(
fileSystemHandle: FileSystemHandle,
accessLevel?: string,
): Promise<boolean>;
requestAccessPermission(
fileSystemHandle: FileSystemHandle,
accessLevel?: string,
): Promise<boolean>;
existsInDirectory(
directoryHandle: FileSystemDirectoryHandle,
fileName: string,
options?: { kind: 'file' | 'directory' },
): Promise<boolean>;
getAllFilesFromDirectory(
directoryHandle: FileSystemDirectoryHandle,
path?: string,
): Promise<FileHandlesWithPath[]>;
}