Skip to main content

fs

File system bindings for ESP32 Provides file and directory operations including read, write, and directory listing

export enum FsError {
Ok = 0,
NotFound = 1,
PermissionDenied = 2,
InvalidArg = 3,
IoError = 4,
NoMemory = 5,
Exists = 6,
NotDir = 7,
IsDir = 8
}

export enum DirentType {
Unknown = 0,
File = 1,
Dir = 2,
Chr = 3,
Blk = 4,
Fifo = 5,
Sock = 6,
Lnk = 7
}


// @ts-ignore
@external("fs", "fs_open")
export declare function fsOpen(path: u32, flags: u32): u32;


// @ts-ignore
@external("fs", "fs_close")
export declare function fsClose(file: u32): i32;


// @ts-ignore
@external("fs", "fs_read")
export declare function fsRead(file: u32, buffer: u32, size: u32): i32;


// @ts-ignore
@external("fs", "fs_write")
export declare function fsWrite(file: u32, buffer: u32, size: u32): i32;


// @ts-ignore
@external("fs", "fs_unlink")
export declare function fsUnlink(path: u32): i32;


// @ts-ignore
@external("fs", "fs_fseek")
export declare function fsFseek(file: u32, offset: i32, whence: i32): i32;


// @ts-ignore
@external("fs", "fs_ftell")
export declare function fsFtell(file: u32): i32;


// @ts-ignore
@external("fs", "fs_opendir")
export declare function fsOpendir(path: u32): u32;


// @ts-ignore
@external("fs", "fs_readdir")
export declare function fsReaddir(dir: u32): u32;


// @ts-ignore
@external("fs", "fs_dirent_get_name")
export declare function fsDirentGetName(dirent: u32): u32;


// @ts-ignore
@external("fs", "fs_dirent_get_type")
export declare function fsDirentGetType(dirent: u32): i32;


// @ts-ignore
@external("fs", "fs_dirent_get_ino")
export declare function fsDirentGetIno(dirent: u32): i32;


// @ts-ignore
@external("fs", "fs_closedir")
export declare function fsClosedir(dir: u32): i32;