815 lines
29 KiB
Markdown
815 lines
29 KiB
Markdown
## API Report File for "@zwave-js/nvmedit"
|
|
|
|
> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
|
|
|
|
```ts
|
|
|
|
import { AllOrNone } from '@zwave-js/shared/safe';
|
|
import { Bytes } from '@zwave-js/shared';
|
|
import { Bytes as Bytes_2 } from '@zwave-js/shared/safe';
|
|
import { CommandClasses } from '@zwave-js/core/safe';
|
|
import { CommandClasses as CommandClasses_2 } from '@zwave-js/core';
|
|
import { Expand } from '@zwave-js/shared';
|
|
import { FLiRS } from '@zwave-js/core/safe';
|
|
import { NodeIDType } from '@zwave-js/core/safe';
|
|
import { NodeProtocolInfo } from '@zwave-js/core/safe';
|
|
import { RFRegion } from '@zwave-js/core/safe';
|
|
import { RouteProtocolDataRate } from '@zwave-js/core/safe';
|
|
|
|
// Warning: (ae-missing-release-tag) "BufferedNVMReader" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export class BufferedNVMReader implements NVMIO {
|
|
constructor(inner: NVMIO);
|
|
// (undocumented)
|
|
get accessMode(): NVMAccess;
|
|
// (undocumented)
|
|
close(): Promise<void>;
|
|
// (undocumented)
|
|
determineChunkSize(): Promise<number>;
|
|
// (undocumented)
|
|
open(access: NVMAccess.Read | NVMAccess.Write): Promise<NVMAccess>;
|
|
// (undocumented)
|
|
read(offset: number, length: number): Promise<{
|
|
buffer: Uint8Array;
|
|
endOfFile: boolean;
|
|
}>;
|
|
// (undocumented)
|
|
get size(): number;
|
|
// (undocumented)
|
|
write(offset: number, data: Uint8Array): Promise<{
|
|
bytesWritten: number;
|
|
endOfFile: boolean;
|
|
}>;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "ControllerInfoFile" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export class ControllerInfoFile extends NVMFile {
|
|
// Warning: (ae-forgotten-export) The symbol "NVMFileDeserializationOptions" needs to be exported by the entry point index.d.ts
|
|
// Warning: (ae-forgotten-export) The symbol "ControllerInfoFileOptions" needs to be exported by the entry point index.d.ts
|
|
constructor(options: NVMFileDeserializationOptions | ControllerInfoFileOptions);
|
|
// (undocumented)
|
|
controllerConfiguration: number;
|
|
// (undocumented)
|
|
dcdcConfig?: number;
|
|
// (undocumented)
|
|
homeId: Uint8Array;
|
|
// (undocumented)
|
|
lastNodeId: number;
|
|
// (undocumented)
|
|
lastNodeIdLR?: number;
|
|
// (undocumented)
|
|
maxNodeId: number;
|
|
// (undocumented)
|
|
maxNodeIdLR?: number;
|
|
// (undocumented)
|
|
nodeId: number;
|
|
// (undocumented)
|
|
primaryLongRangeChannelId?: number;
|
|
// (undocumented)
|
|
reservedId: number;
|
|
// (undocumented)
|
|
reservedIdLR?: number;
|
|
// (undocumented)
|
|
serialize(): NVM3Object & {
|
|
data: Bytes;
|
|
};
|
|
// (undocumented)
|
|
staticControllerNodeId: number;
|
|
// (undocumented)
|
|
sucAwarenessPushNeeded?: number;
|
|
// (undocumented)
|
|
sucLastIndex: number;
|
|
// (undocumented)
|
|
systemState: number;
|
|
// (undocumented)
|
|
toJSON(): Record<string, string | number>;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "ControllerInfoFileID" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export const ControllerInfoFileID = 327684;
|
|
|
|
// Warning: (ae-missing-release-tag) "ControllerNVMProperty" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export type ControllerNVMProperty = {
|
|
domain: "controller";
|
|
type: keyof ControllerNVMPropertyTypes;
|
|
nodeId?: undefined;
|
|
};
|
|
|
|
// Warning: (ae-missing-release-tag) "ControllerNVMPropertyToDataType" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export type ControllerNVMPropertyToDataType<P extends ControllerNVMProperty> = ControllerNVMPropertyTypes[P["type"]];
|
|
|
|
// Warning: (ae-missing-release-tag) "FragmentType" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export enum FragmentType {
|
|
// (undocumented)
|
|
First = 1,
|
|
// (undocumented)
|
|
Last = 3,
|
|
// (undocumented)
|
|
Next = 2,
|
|
// (undocumented)
|
|
None = 0
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "json500To700" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export function json500To700(json: NVM500JSON, truncateApplicationData?: boolean): NVMJSON;
|
|
|
|
// Warning: (ae-missing-release-tag) "json700To500" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export function json700To500(json: NVMJSON): NVM500JSON;
|
|
|
|
// Warning: (ae-missing-release-tag) "jsonToNVM" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export function jsonToNVM(json: NVMJSON, targetSDKVersion: string): Promise<Uint8Array>;
|
|
|
|
// Warning: (ae-missing-release-tag) "jsonToNVM500" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public
|
|
export function jsonToNVM500(json: Required<NVM500JSON>, protocolVersion: string): Promise<Uint8Array>;
|
|
|
|
// Warning: (ae-missing-release-tag) "LRNodeNVMProperty" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export type LRNodeNVMProperty = {
|
|
domain: "lrnode";
|
|
type: keyof LRNodeNVMPropertyTypes;
|
|
nodeId: number;
|
|
};
|
|
|
|
// Warning: (ae-missing-release-tag) "LRNodeNVMPropertyToDataType" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export type LRNodeNVMPropertyToDataType<P extends LRNodeNVMProperty> = P["type"] extends keyof LRNodeNVMPropertyTypes ? LRNodeNVMPropertyTypes[P["type"]] : never;
|
|
|
|
// Warning: (ae-missing-release-tag) "migrateNVM" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public
|
|
export function migrateNVM(sourceNVM: Uint8Array, targetNVM: Uint8Array): Promise<Uint8Array>;
|
|
|
|
// Warning: (ae-missing-release-tag) "NodeNVMProperty" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export type NodeNVMProperty = {
|
|
domain: "node";
|
|
type: keyof NodeNVMPropertyTypes;
|
|
nodeId: number;
|
|
};
|
|
|
|
// Warning: (ae-missing-release-tag) "NodeNVMPropertyToDataType" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export type NodeNVMPropertyToDataType<P extends NodeNVMProperty> = P["type"] extends keyof NodeNVMPropertyTypes ? NodeNVMPropertyTypes[P["type"]] : never;
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public
|
|
export interface NVM<ID, Data> {
|
|
delete(property: ID): Promise<void>;
|
|
get(property: ID): Promise<Data | undefined>;
|
|
has(property: ID): Promise<boolean>;
|
|
set(property: ID, value: Data): Promise<void>;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM3" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export class NVM3 implements NVM<number, Uint8Array> {
|
|
constructor(io: NVMIO);
|
|
// (undocumented)
|
|
delete(property: number): Promise<void>;
|
|
// (undocumented)
|
|
erase(options?: NVM3EraseOptions): Promise<void>;
|
|
// (undocumented)
|
|
get(fileId: number): Promise<Uint8Array | undefined>;
|
|
// (undocumented)
|
|
has(fileId: number): Promise<boolean>;
|
|
// Warning: (ae-forgotten-export) The symbol "NVM3FileSystemInfo" needs to be exported by the entry point index.d.ts
|
|
//
|
|
// (undocumented)
|
|
get info(): NVM3FileSystemInfo | undefined;
|
|
// (undocumented)
|
|
init(): Promise<NVM3FileSystemInfo>;
|
|
// Warning: (ae-forgotten-export) The symbol "NVM3ObjectHeader" needs to be exported by the entry point index.d.ts
|
|
//
|
|
// (undocumented)
|
|
readObjectData(object: NVM3ObjectHeader): Promise<Uint8Array>;
|
|
// (undocumented)
|
|
set(property: number, value: Uint8Array): Promise<void>;
|
|
setMany(values: [number, Uint8Array | null | undefined][]): Promise<void>;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM3Adapter" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export class NVM3Adapter implements NVMAdapter {
|
|
constructor(nvm: NVM3);
|
|
// (undocumented)
|
|
commit(): Promise<void>;
|
|
// (undocumented)
|
|
delete(property: NVMProperty): Promise<void>;
|
|
// (undocumented)
|
|
get<T extends NVMProperty, R extends boolean = boolean>(property: T, required?: R): Promise<R extends true ? NVMPropertyToDataType<T> : (NVMPropertyToDataType<T> | undefined)>;
|
|
// (undocumented)
|
|
getFile<T extends NVMFile = NVMFile>(fileId: number, required: true): Promise<T>;
|
|
// (undocumented)
|
|
getFile<T extends NVMFile = NVMFile>(fileId: number, required?: false): Promise<T | undefined>;
|
|
// (undocumented)
|
|
hasFile(fileId: number): Promise<boolean>;
|
|
// (undocumented)
|
|
hasPendingChanges(): boolean;
|
|
// (undocumented)
|
|
set<T extends NVMProperty>(property: T, value: NVMPropertyToDataType<T>): Promise<void>;
|
|
setFile(file: NVMFile): void;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM3EraseOptions" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export type NVM3EraseOptions = Partial<NVM3Meta>;
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM3Meta" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVM3Meta {
|
|
// (undocumented)
|
|
deviceFamily: number;
|
|
// (undocumented)
|
|
memoryMapped: boolean;
|
|
// (undocumented)
|
|
pageSize: number;
|
|
// (undocumented)
|
|
sharedFileSystem: boolean;
|
|
// (undocumented)
|
|
writeSize: PageWriteSize;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM3Object" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVM3Object {
|
|
// (undocumented)
|
|
data?: Uint8Array;
|
|
// (undocumented)
|
|
fragmentType: FragmentType;
|
|
// (undocumented)
|
|
key: number;
|
|
// (undocumented)
|
|
type: ObjectType;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM3Page" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVM3Page {
|
|
// (undocumented)
|
|
header: NVM3PageHeader;
|
|
// (undocumented)
|
|
objects: NVM3Object[];
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM3PageHeader" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVM3PageHeader {
|
|
// (undocumented)
|
|
deviceFamily: number;
|
|
// (undocumented)
|
|
encrypted: boolean;
|
|
// (undocumented)
|
|
eraseCount: number;
|
|
// (undocumented)
|
|
memoryMapped: boolean;
|
|
// (undocumented)
|
|
offset: number;
|
|
// (undocumented)
|
|
pageSize: number;
|
|
// (undocumented)
|
|
status: PageStatus;
|
|
// (undocumented)
|
|
version: number;
|
|
// (undocumented)
|
|
writeSize: PageWriteSize;
|
|
}
|
|
|
|
// Warning: (ae-forgotten-export) The symbol "NVMEntryName" needs to be exported by the entry point index.d.ts
|
|
// Warning: (ae-forgotten-export) The symbol "NVMData" needs to be exported by the entry point index.d.ts
|
|
// Warning: (ae-missing-release-tag) "NVM500" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export class NVM500 implements NVM<NVMEntryName, NVMData[]> {
|
|
constructor(io: NVMIO);
|
|
// (undocumented)
|
|
delete(_property: NVMEntryName): Promise<void>;
|
|
// (undocumented)
|
|
erase(options: NVM500EraseOptions): Promise<void>;
|
|
// (undocumented)
|
|
get(property: NVMEntryName): Promise<NVMData[] | undefined>;
|
|
// (undocumented)
|
|
getSingle(property: NVMEntryName, index: number): Promise<NVMData | undefined>;
|
|
// (undocumented)
|
|
has(property: NVMEntryName): Promise<boolean>;
|
|
// (undocumented)
|
|
get info(): NVM500Info | undefined;
|
|
// (undocumented)
|
|
init(): Promise<NVM500Info>;
|
|
// (undocumented)
|
|
set(property: NVMEntryName, value: NVMData[]): Promise<void>;
|
|
// (undocumented)
|
|
setSingle(property: NVMEntryName, index: number, value: NVMData): Promise<void>;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM500Adapter" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export class NVM500Adapter implements NVMAdapter {
|
|
constructor(nvm: NVM500);
|
|
// (undocumented)
|
|
commit(): Promise<void>;
|
|
// (undocumented)
|
|
delete(_property: NVMProperty): Promise<void>;
|
|
// (undocumented)
|
|
get<T extends NVMProperty, R extends boolean = boolean>(property: T, required?: R): Promise<R extends true ? NonNullable<NVMPropertyToDataType<T>> : (NVMPropertyToDataType<T> | undefined)>;
|
|
// (undocumented)
|
|
hasPendingChanges(): boolean;
|
|
// (undocumented)
|
|
set<T extends NVMProperty>(property: T, value: NVMPropertyToDataType<T>): Promise<void>;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM500EraseOptions" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export type NVM500EraseOptions = {
|
|
layout: ResolvedNVMLayout;
|
|
nvmSize: number;
|
|
library: NVM500Impl["library"];
|
|
nvmDescriptor: NVMDescriptor;
|
|
};
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM500Info" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVM500Info {
|
|
// (undocumented)
|
|
layout: ResolvedNVMLayout;
|
|
// (undocumented)
|
|
library: NVM500Impl["library"];
|
|
// Warning: (ae-forgotten-export) The symbol "NVMModuleDescriptor" needs to be exported by the entry point index.d.ts
|
|
//
|
|
// (undocumented)
|
|
moduleDescriptors: Map<NVMEntryName, NVMModuleDescriptor>;
|
|
// (undocumented)
|
|
nvmDescriptor: NVMDescriptor;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM500JSON" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVM500JSON {
|
|
// (undocumented)
|
|
controller: NVM500JSONController;
|
|
// (undocumented)
|
|
format: 500;
|
|
// (undocumented)
|
|
meta?: NVM500Meta;
|
|
// (undocumented)
|
|
nodes: Record<number, NVM500JSONNode>;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM500JSONController" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVM500JSONController {
|
|
// (undocumented)
|
|
applicationData?: string | null;
|
|
// (undocumented)
|
|
applicationVersion: string;
|
|
// (undocumented)
|
|
commandClasses: CommandClasses[];
|
|
// (undocumented)
|
|
controllerConfiguration: number;
|
|
// (undocumented)
|
|
lastNodeId: number;
|
|
// (undocumented)
|
|
learnedHomeId?: string | null;
|
|
// (undocumented)
|
|
maxNodeId: number;
|
|
// (undocumented)
|
|
nodeId: number;
|
|
// (undocumented)
|
|
ownHomeId: string;
|
|
// (undocumented)
|
|
preferredRepeaters: number[];
|
|
// (undocumented)
|
|
protocolVersion: string;
|
|
// (undocumented)
|
|
reservedId: number;
|
|
// (undocumented)
|
|
rfConfig: NVM500JSONControllerRFConfig;
|
|
// (undocumented)
|
|
staticControllerNodeId: number;
|
|
// (undocumented)
|
|
sucLastIndex: number;
|
|
// Warning: (ae-forgotten-export) The symbol "SUCUpdateEntry" needs to be exported by the entry point index.d.ts
|
|
//
|
|
// (undocumented)
|
|
sucUpdateEntries: SUCUpdateEntry[];
|
|
// (undocumented)
|
|
systemState: number;
|
|
// (undocumented)
|
|
watchdogStarted: number;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM500JSONControllerRFConfig" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVM500JSONControllerRFConfig {
|
|
// (undocumented)
|
|
powerLevelLow: number[];
|
|
// (undocumented)
|
|
powerLevelNormal: number[];
|
|
// (undocumented)
|
|
powerMode: number;
|
|
// (undocumented)
|
|
powerModeExtintEnable: number;
|
|
// (undocumented)
|
|
powerModeWutTimeout: number;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM500JSONNode" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export type NVM500JSONNode = NVM500JSONNodeWithInfo | NVM500JSONVirtualNode;
|
|
|
|
// Warning: (ae-forgotten-export) The symbol "NVM500NodeInfo" needs to be exported by the entry point index.d.ts
|
|
// Warning: (ae-missing-release-tag) "NVM500JSONNodeWithInfo" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVM500JSONNodeWithInfo extends NVM500NodeInfo {
|
|
// (undocumented)
|
|
appRouteLock: boolean;
|
|
// (undocumented)
|
|
isVirtual: boolean;
|
|
// Warning: (ae-forgotten-export) The symbol "Route" needs to be exported by the entry point index.d.ts
|
|
//
|
|
// (undocumented)
|
|
lwr?: Route | null;
|
|
// (undocumented)
|
|
neighbors: number[];
|
|
// (undocumented)
|
|
nlwr?: Route | null;
|
|
// (undocumented)
|
|
pendingDiscovery: boolean;
|
|
// (undocumented)
|
|
routeSlaveSUC: boolean;
|
|
// (undocumented)
|
|
sucPendingUpdate: boolean;
|
|
// (undocumented)
|
|
sucUpdateIndex: number;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM500JSONVirtualNode" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVM500JSONVirtualNode {
|
|
// (undocumented)
|
|
isVirtual: true;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVM500Meta" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVM500Meta {
|
|
// (undocumented)
|
|
firmwareID: number;
|
|
// (undocumented)
|
|
library: NVM500Impl["library"];
|
|
// (undocumented)
|
|
manufacturerID: number;
|
|
// (undocumented)
|
|
productID: number;
|
|
// (undocumented)
|
|
productType: number;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "nvm500ToJSON" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public
|
|
export function nvm500ToJSON(buffer: Uint8Array): Promise<Required<NVM500JSON>>;
|
|
|
|
// Warning: (ae-missing-release-tag) "NVMAccess" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export enum NVMAccess {
|
|
// (undocumented)
|
|
None = 0,
|
|
// (undocumented)
|
|
Read = 1,
|
|
// (undocumented)
|
|
ReadWrite = 3,
|
|
// (undocumented)
|
|
Write = 2
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVMAdapter" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public
|
|
export interface NVMAdapter {
|
|
commit(): Promise<void>;
|
|
delete(property: NVMProperty): Promise<void>;
|
|
get<T extends NVMProperty, R extends boolean = boolean>(property: T, required?: R): Promise<R extends true ? NVMPropertyToDataType<T> : (NVMPropertyToDataType<T> | undefined)>;
|
|
hasPendingChanges(): boolean;
|
|
set<T extends NVMProperty>(property: T, value: NVMPropertyToDataType<T>): Promise<void>;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVMFile" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export class NVMFile {
|
|
// Warning: (ae-forgotten-export) The symbol "NVMFileOptions" needs to be exported by the entry point index.d.ts
|
|
constructor(options: NVMFileOptions);
|
|
// (undocumented)
|
|
fileId: number;
|
|
// (undocumented)
|
|
fileVersion: string;
|
|
static from(fileId: number, data: Uint8Array, fileVersion: string): NVMFile;
|
|
// (undocumented)
|
|
protected payload: Bytes;
|
|
serialize(): NVM3Object & {
|
|
data: Bytes;
|
|
};
|
|
// (undocumented)
|
|
toJSON(): Record<string, any>;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVMFileIO" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public
|
|
export class NVMFileIO implements NVMIO {
|
|
constructor(path: string);
|
|
// (undocumented)
|
|
get accessMode(): NVMAccess;
|
|
// (undocumented)
|
|
close(): Promise<void>;
|
|
// (undocumented)
|
|
determineChunkSize(): Promise<number>;
|
|
// (undocumented)
|
|
open(access: NVMAccess): Promise<NVMAccess>;
|
|
// (undocumented)
|
|
read(offset: number, length: number): Promise<{
|
|
buffer: Uint8Array;
|
|
endOfFile: boolean;
|
|
}>;
|
|
// (undocumented)
|
|
get size(): number;
|
|
// (undocumented)
|
|
write(offset: number, data: Uint8Array): Promise<{
|
|
bytesWritten: number;
|
|
endOfFile: boolean;
|
|
}>;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVMIO" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public
|
|
export interface NVMIO {
|
|
get accessMode(): NVMAccess;
|
|
close(): Promise<void>;
|
|
determineChunkSize(): Promise<number>;
|
|
open(access: NVMAccess.Read | NVMAccess.Write): Promise<NVMAccess>;
|
|
read(offset: number, length: number): Promise<{
|
|
buffer: Uint8Array;
|
|
endOfFile: boolean;
|
|
}>;
|
|
get size(): number;
|
|
write(offset: number, data: Uint8Array): Promise<{
|
|
bytesWritten: number;
|
|
endOfFile: boolean;
|
|
}>;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVMJSON" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVMJSON {
|
|
// (undocumented)
|
|
applicationFileFormat?: number;
|
|
// (undocumented)
|
|
controller: NVMJSONController;
|
|
// (undocumented)
|
|
format: number;
|
|
// Warning: (ae-forgotten-export) The symbol "NVMJSONLRNode" needs to be exported by the entry point index.d.ts
|
|
//
|
|
// (undocumented)
|
|
lrNodes?: Record<number, NVMJSONLRNode>;
|
|
// (undocumented)
|
|
meta?: NVM3Meta;
|
|
// (undocumented)
|
|
nodes: Record<number, NVMJSONNode>;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVMJSONController" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVMJSONController {
|
|
// (undocumented)
|
|
applicationData?: string | null;
|
|
// (undocumented)
|
|
applicationName?: string | null;
|
|
// (undocumented)
|
|
applicationVersion: string;
|
|
// (undocumented)
|
|
commandClasses: {
|
|
includedInsecurely: CommandClasses[];
|
|
includedSecurelyInsecureCCs: CommandClasses[];
|
|
includedSecurelySecureCCs: CommandClasses[];
|
|
};
|
|
// (undocumented)
|
|
controllerConfiguration: number;
|
|
// (undocumented)
|
|
dcdcConfig?: number | null;
|
|
// (undocumented)
|
|
genericDeviceClass: number;
|
|
// (undocumented)
|
|
homeId: string;
|
|
// (undocumented)
|
|
isListening: boolean;
|
|
// (undocumented)
|
|
lastNodeId: number;
|
|
// (undocumented)
|
|
lastNodeIdLR?: number | null;
|
|
// (undocumented)
|
|
maxNodeId: number;
|
|
// (undocumented)
|
|
maxNodeIdLR?: number | null;
|
|
// (undocumented)
|
|
nodeId: number;
|
|
// (undocumented)
|
|
optionalFunctionality: boolean;
|
|
// (undocumented)
|
|
preferredRepeaters?: number[] | null;
|
|
// (undocumented)
|
|
primaryLongRangeChannelId?: number | null;
|
|
// (undocumented)
|
|
protocolVersion: string;
|
|
// (undocumented)
|
|
reservedId: number;
|
|
// (undocumented)
|
|
reservedIdLR?: number | null;
|
|
// (undocumented)
|
|
rfConfig?: NVMJSONControllerRFConfig | null;
|
|
// (undocumented)
|
|
specificDeviceClass: number;
|
|
// (undocumented)
|
|
staticControllerNodeId: number;
|
|
// (undocumented)
|
|
sucAwarenessPushNeeded?: number | null;
|
|
// (undocumented)
|
|
sucLastIndex: number;
|
|
// (undocumented)
|
|
sucUpdateEntries: SUCUpdateEntry[];
|
|
// (undocumented)
|
|
systemState: number;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVMJSONControllerRFConfig" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVMJSONControllerRFConfig {
|
|
// (undocumented)
|
|
enablePTI: number | null;
|
|
// (undocumented)
|
|
maxTXPower: number | null;
|
|
// (undocumented)
|
|
measured0dBm: number;
|
|
// (undocumented)
|
|
nodeIdType: NodeIDType | null;
|
|
// (undocumented)
|
|
rfRegion: RFRegion;
|
|
// (undocumented)
|
|
txPower: number;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVMJSONNode" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export type NVMJSONNode = NVMJSONNodeWithInfo | NVMJSONVirtualNode;
|
|
|
|
// Warning: (ae-missing-release-tag) "NVMJSONNodeWithInfo" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVMJSONNodeWithInfo extends Omit<NodeProtocolInfo, "hasSpecificDeviceClass"> {
|
|
// (undocumented)
|
|
appRouteLock: boolean;
|
|
// (undocumented)
|
|
genericDeviceClass: number;
|
|
// (undocumented)
|
|
isVirtual: boolean;
|
|
// (undocumented)
|
|
lwr?: Route | null;
|
|
// (undocumented)
|
|
neighbors: number[];
|
|
// (undocumented)
|
|
nlwr?: Route | null;
|
|
// (undocumented)
|
|
pendingDiscovery: boolean;
|
|
// (undocumented)
|
|
routeSlaveSUC: boolean;
|
|
// (undocumented)
|
|
specificDeviceClass: number | null;
|
|
// (undocumented)
|
|
sucPendingUpdate: boolean;
|
|
// (undocumented)
|
|
sucUpdateIndex: number;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVMJSONVirtualNode" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export interface NVMJSONVirtualNode {
|
|
// (undocumented)
|
|
isVirtual: true;
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "NVMProperty" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export type NVMProperty = ControllerNVMProperty | NodeNVMProperty | LRNodeNVMProperty;
|
|
|
|
// Warning: (ae-missing-release-tag) "NVMPropertyToDataType" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export type NVMPropertyToDataType<P extends NVMProperty> = P extends ControllerNVMProperty ? ControllerNVMPropertyToDataType<P> : P extends NodeNVMProperty ? NodeNVMPropertyToDataType<P> : P extends LRNodeNVMProperty ? LRNodeNVMPropertyToDataType<P> : never;
|
|
|
|
// Warning: (ae-forgotten-export) The symbol "NVMJSONWithMeta" needs to be exported by the entry point index.d.ts
|
|
// Warning: (ae-missing-release-tag) "nvmToJSON" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public
|
|
export function nvmToJSON(buffer: Uint8Array, debugLogs?: boolean): Promise<NVMJSONWithMeta>;
|
|
|
|
// Warning: (ae-missing-release-tag) "ObjectType" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export enum ObjectType {
|
|
// (undocumented)
|
|
CounterLarge = 1,
|
|
// (undocumented)
|
|
CounterSmall = 2,
|
|
// (undocumented)
|
|
DataLarge = 0,
|
|
// (undocumented)
|
|
DataSmall = 7,
|
|
// (undocumented)
|
|
Deleted = 3
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "PageStatus" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export enum PageStatus {
|
|
// (undocumented)
|
|
Bad = 65535,
|
|
// (undocumented)
|
|
Bad_ErasePending = 42405,
|
|
// (undocumented)
|
|
OK = 4294967295,
|
|
// (undocumented)
|
|
OK_ErasePending = 4294944165
|
|
}
|
|
|
|
// Warning: (ae-missing-release-tag) "PageWriteSize" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal)
|
|
//
|
|
// @public (undocumented)
|
|
export enum PageWriteSize {
|
|
// (undocumented)
|
|
WRITE_SIZE_16 = 1,// Only single writes are allowed
|
|
// (undocumented)
|
|
WRITE_SIZE_32 = 0
|
|
}
|
|
|
|
// Warnings were encountered during analysis:
|
|
//
|
|
// src/lib/NVM500.ts:56:2 - (ae-forgotten-export) The symbol "ResolvedNVMLayout" needs to be exported by the entry point index.d.ts
|
|
// src/lib/NVM500.ts:58:2 - (ae-forgotten-export) The symbol "NVM500Impl" needs to be exported by the entry point index.d.ts
|
|
// src/lib/NVM500.ts:59:2 - (ae-forgotten-export) The symbol "NVMDescriptor" needs to be exported by the entry point index.d.ts
|
|
// src/lib/common/definitions.ts:208:2 - (ae-forgotten-export) The symbol "ControllerNVMPropertyTypes" needs to be exported by the entry point index.d.ts
|
|
// src/lib/common/definitions.ts:217:2 - (ae-forgotten-export) The symbol "NodeNVMPropertyTypes" needs to be exported by the entry point index.d.ts
|
|
// src/lib/common/definitions.ts:228:2 - (ae-forgotten-export) The symbol "LRNodeNVMPropertyTypes" needs to be exported by the entry point index.d.ts
|
|
|
|
// (No @packageDocumentation comment for this package)
|
|
|
|
```
|