mirror of
https://github.com/Koenkk/zigbee-OTA.git
synced 2026-06-24 15:19:52 +00:00
75 lines
1.8 KiB
TypeScript
75 lines
1.8 KiB
TypeScript
//-- Copied from ZHC
|
|
export interface Version {
|
|
imageType: number;
|
|
manufacturerCode: number;
|
|
fileVersion: number;
|
|
}
|
|
|
|
export interface ImageHeader {
|
|
otaUpgradeFileIdentifier: Buffer;
|
|
otaHeaderVersion: number;
|
|
otaHeaderLength: number;
|
|
otaHeaderFieldControl: number;
|
|
manufacturerCode: number;
|
|
imageType: number;
|
|
fileVersion: number;
|
|
zigbeeStackVersion: number;
|
|
otaHeaderString: string;
|
|
totalImageSize: number;
|
|
securityCredentialVersion?: number;
|
|
upgradeFileDestination?: Buffer;
|
|
minimumHardwareVersion?: number;
|
|
maximumHardwareVersion?: number;
|
|
}
|
|
|
|
export interface ImageElement {
|
|
tagID: number;
|
|
length: number;
|
|
data: Buffer;
|
|
}
|
|
|
|
export interface Image {
|
|
header: ImageHeader;
|
|
elements: ImageElement[];
|
|
raw: Buffer;
|
|
}
|
|
|
|
export interface ImageInfo {
|
|
imageType: number;
|
|
fileVersion: number;
|
|
manufacturerCode: number;
|
|
}
|
|
|
|
// XXX: adjusted from ZHC
|
|
export interface ImageMeta {
|
|
fileVersion: number;
|
|
fileSize: number;
|
|
url: string;
|
|
force?: boolean;
|
|
sha512: string;
|
|
otaHeaderString: string;
|
|
hardwareVersionMin?: number;
|
|
hardwareVersionMax?: number;
|
|
}
|
|
//-- Copied from ZHC
|
|
|
|
export interface RepoImageMeta extends ImageInfo, ImageMeta {
|
|
fileName: string;
|
|
modelId?: string;
|
|
manufacturerName?: string[];
|
|
minFileVersion?: number;
|
|
maxFileVersion?: number;
|
|
originalUrl?: string;
|
|
releaseNotes?: string;
|
|
}
|
|
|
|
export type ExtraMetas = Omit<
|
|
RepoImageMeta,
|
|
"fileName" | "fileVersion" | "fileSize" | "url" | "imageType" | "manufacturerCode" | "sha512" | "otaHeaderString"
|
|
>;
|
|
export type ExtraMetasWithFileName = Omit<
|
|
RepoImageMeta,
|
|
"fileName" | "fileVersion" | "fileSize" | "url" | "imageType" | "manufacturerCode" | "sha512" | "otaHeaderString"
|
|
> & {fileName?: string};
|
|
export type GHExtraMetas = ExtraMetas | ExtraMetasWithFileName[];
|