import { PluginManifest } from "../entities/types"; /** * FilePath. Must be absolute */ export declare type Path = string; /** * Create a directory * @param path Path to directory * @param recursive Whether to recursively create parent directories if they do not exist * @returns true if mkdir succeeded or file exists. false otherwise */ export declare function mkdir(path: Path, recursive?: boolean): Promise; /** * Check whether a file exists * @param path File path * @returns boolean */ export declare const existsFile: (path: Path) => Promise; /** * Delete a file * @param path File path * @returns Whether the file was successfully deleted */ export declare const deleteFile: (path: Path) => Promise; /** * Read a file * @param path Path to file * @param encoding Encoding. Must be one of utf-8 or base64 * @returns content in the specified encoding */ export declare function readFile(path: Path, encoding?: "base64" | "utf-8"): Promise; /** * Write a file * @param path Path to file * @param content Content. Must be a string, pass base64 to write binary * @param encoding Encoding of content. Must be one of utf-8 or base64 */ export declare function writeFile(path: Path, content: string, encoding?: "base64" | "utf-8"): Promise; /** * Retrieve a plugin's manifest * @param plugin Plugin name * @returns PluginManifest or null if no manifest found */ export declare function getManifest(plugin: string): Promise; /** * Get a list of all native modules * @returns Map */ export declare const listNativeModules: () => Promise>; /** * Used to check if Aliucord has storage permissions */ export declare const checkPermissions: () => Promise; /** * Used to request storage permissions */ export declare const requestPermissions: () => Promise;