@struktoai/mirage-core
Version:
A Unified Virtual Filesystem For AI Agents
25 lines • 1.8 kB
TypeScript
import type { DatabricksVolumeAccessor } from '../../accessor/databricks_volume.ts';
import { ByteSpool } from '../../io/spool.ts';
import type { ByteWindow } from '../../utils/ranges.ts';
import type { DirectoryEntry as DirectoryRow, FileMetadata } from './types.ts';
/** The Files API takes a file in one PUT of at most 5 GiB. */
export declare const MAX_UPLOAD_SIZE: number;
export declare function getMetadata(accessor: DatabricksVolumeAccessor, path: string): Promise<FileMetadata>;
export declare function getDirectoryMetadata(accessor: DatabricksVolumeAccessor, path: string): Promise<void>;
/**
* A directory's entries, a page at a time; no page past the one that
* brings `limit` entries. Mirrors Python's `list_directory_contents`.
*/
export declare function listDirectoryContents(accessor: DatabricksVolumeAccessor, path: string, limit?: number): Promise<DirectoryRow[]>;
export declare function download(accessor: DatabricksVolumeAccessor, path: string, window?: ByteWindow): Promise<Uint8Array>;
export declare function downloadStream(accessor: DatabricksVolumeAccessor, path: string): AsyncIterable<Uint8Array>;
/**
* Put one file in a single PUT, at most `MAX_UPLOAD_SIZE` bytes; a spool goes
* up as its fetch body, streamed from where it spilled. Mirrors Python's
* `upload`.
*/
export declare function upload(accessor: DatabricksVolumeAccessor, path: string, data: Uint8Array | ByteSpool, overwrite: boolean): Promise<void>;
export declare function createDirectory(accessor: DatabricksVolumeAccessor, path: string): Promise<void>;
export declare function deleteFile(accessor: DatabricksVolumeAccessor, path: string): Promise<void>;
export declare function deleteDirectory(accessor: DatabricksVolumeAccessor, path: string): Promise<void>;
//# sourceMappingURL=client.d.ts.map