Skip to main content

storage

Non-Volatile Storage (NVS) bindings for ESP32 Provides persistent key-value storage across reboots using ESP32's NVS partition

export enum StorageError {
Ok = 0,
NotInitialized = 1,
NotFound = 2,
InvalidArg = 3,
InvalidState = 4,
InvalidLength = 5,
NoMemory = 6,
ReadOnly = 7,
NotEnoughSpace = 8,
InvalidName = 9,
InvalidHandle = 10,
RemoveFailed = 11,
FlashError = 12,
CommitFailed = 13,
PartitionNotFound = 14
}


// @ts-ignore
@external("storage", "storage_get_string")
export declare function storageGetString(namespace: u32, key: u32, out: u32): StorageError;


// @ts-ignore
@external("storage", "storage_set_string")
export declare function storageSetString(namespace: u32, key: u32, value: u32): StorageError;


// @ts-ignore
@external("storage", "storage_get_u32")
export declare function storageGetU32(namespace: u32, key: u32, out: u32): StorageError;


// @ts-ignore
@external("storage", "storage_set_u32")
export declare function storageSetU32(namespace: u32, key: u32, value: u32): StorageError;


// @ts-ignore
@external("storage", "storage_get_u8")
export declare function storageGetU8(namespace: u32, key: u32, out: u32): StorageError;


// @ts-ignore
@external("storage", "storage_set_u8")
export declare function storageSetU8(namespace: u32, key: u32, value: undefined): StorageError;


// @ts-ignore
@external("storage", "storage_get_blob")
export declare function storageGetBlob(namespace: u32, key: u32, out: u32, size: u32): StorageError;


// @ts-ignore
@external("storage", "storage_set_blob")
export declare function storageSetBlob(namespace: u32, key: u32, data: u32, size: u32): StorageError;