import { AnyString } from '../../utils/types'; /** * File System Storage Unit returned by the File System API. */ export interface IStorageUnit { /** * The type of the storage unit, e.g., "internal" or "external". */ type: string; /** * The total capacity of the storage unit in bytes. */ capacity: number; /** * The amount of free space available in the storage unit in bytes. */ freeSpace: number; /** * The amount of usable space in the storage unit in bytes. */ usableSpace: number; /** * Indicates whether the storage unit is removable (e.g., an SD card). */ removable: boolean; } export declare const VIStorageUnit: { type: string; capacity: string; freeSpace: string; usableSpace: string; removable: string; }; /** * Base File System interface for methods. */ export interface IFilePath { /** * Storage unit which is selected for performing file operations. */ storageUnit: IStorageUnit; /** * File path within the storage unit. */ filePath: string; } /** * Allowed extract method types for `extractFile()` operations. */ export type ExtractMethodType = 'zip' | AnyString; /** * Properties of returned file from File System API. */ export interface IFile extends IFilePath { localUri: string; /** * Image thumbnail URI of the file, which can be used to display a preview of the file. * Note: Supported only on Linux. */ imageThumbnailUriTemplate?: string; /** * Video thumbnail URI of the file, which can be used to display a preview of the file. * Note: Supported only on Linux. */ videoThumbnailUriTemplate?: string; /** * Date and time when the file was created in milliseconds since the epoch. */ createdAt?: number; lastModifiedAt?: number; sizeBytes?: number; mimeType?: string; } export interface IVideoFile extends IFile { videoDurationMs?: number; videoResolution?: { width: number; height: number; }; videoFramerate?: number; videoBitrate?: number; videoCodec?: string; audioBitrate?: number; audioCodec?: string; } export interface IHeaders { [key: string]: string; } export declare const VIFilePath: { storageUnit: { object: { type: string; capacity: string; freeSpace: string; usableSpace: string; removable: string; }; }; filePath: string; }; export interface ICopyFileOptions { overwrite?: boolean; } export declare const VICopyFileOptions: { overwrite: string; }; export interface IMoveFileOptions { overwrite?: boolean; } export declare const VIMoveFileOptions: { overwrite: string; };