@egdata/manifests-parser
Version:
A Node.js native addon for parsing Epic Games manifest files
93 lines (82 loc) • 2 kB
TypeScript
/* auto-generated by NAPI-RS */
/* eslint-disable */
export interface Chunk {
guid: string
hash: string
shaHash: string
group: number
windowSize: number
fileSize: string
}
export interface ChunkDataList {
dataSize: number
dataVersion: number
count: number
elements: Array<Chunk>
chunkLookup: Record<string, number>
}
export interface ChunkPart {
dataSize: number
parentGuid: string
offset: number
size: number
chunk?: Chunk
}
export interface FileManifest {
filename: string
symlinkTarget: string
shaHash: string
fileMetaFlags: number
installTags: Array<string>
chunkParts: Array<ChunkPart>
fileSize: number
mimeType: string
}
export interface FileManifestList {
dataSize: number
dataVersion: number
count: number
fileManifestList: Array<FileManifest>
}
/** Whole manifest, JSON-serialisable. */
export interface Manifest {
header: ManifestHeader
meta?: ManifestMeta
chunkList?: ChunkDataList
fileList?: FileManifestList
}
export interface ManifestHeader {
headerSize: number
dataSizeUncompressed: number
dataSizeCompressed: number
sha1Hash: string
storedAs: number
version: number
guid: string
rollingHash: number
hashType: number
}
export interface ManifestMeta {
dataSize: number
dataVersion: number
featureLevel: number
isFileData: boolean
appId: number
appName: string
buildVersion: string
launchExe: string
launchCommand: string
prereqIds: Array<string>
prereqName: string
prereqPath: string
prereqArgs: string
buildId?: string
}
/** Parse an Epic Games manifest file asynchronously */
export declare function parseManifestAsync(path: string): Promise<NapiResult<Manifest>>
/** Parse manifest data from a buffer */
export declare function parseManifestBuffer(buffer: Buffer): NapiResult<Manifest>
/** Parse an Epic Games manifest file synchronously */
export declare function parseManifestSync(path: string): NapiResult<Manifest>
type NapiResult<T> = T;
type NapiResult<T> = T;