scriptable-testlab
Version:
A lightweight, efficient tool designed to manage and update scripts for Scriptable.
29 lines (26 loc) • 1.02 kB
text/typescript
import { FileSystemNode } from '../types/file.mjs';
import './paths.mjs';
/**
* Validates if a file path is valid and within the root directory
*/
declare function validatePath(filePath: string, rootPath: string): void;
/**
* Validates if a node exists and is of the expected type
*/
declare function validateNode(node: FileSystemNode | undefined, expectedType: 'file' | 'directory', path: string): asserts node is FileSystemNode;
/**
* Creates a deep clone of a file system node
*/
declare function cloneNode(node: FileSystemNode): FileSystemNode;
/**
* Calculates the total size of a directory
*/
declare function calculateDirectorySize(dir: FileSystemNode): number;
type FileSystemUtils = {
validatePath: typeof validatePath;
validateNode: typeof validateNode;
cloneNode: typeof cloneNode;
calculateDirectorySize: typeof calculateDirectorySize;
};
declare const FileSystemUtils: FileSystemUtils;
export { FileSystemUtils, calculateDirectorySize, cloneNode, validateNode, validatePath };