UNPKG

@etothepii/satisfactory-file-parser

Version:

A file parser for satisfactory files. Includes save files and blueprint files.

37 lines (36 loc) 1.44 kB
import { ByteReader } from "../../byte/byte-reader.class"; import { ChunkCompressionInfo } from "../../file.types"; import { ObjectReference } from "../objects/ObjectReference"; import { Level } from "./level.class"; import { RoughSaveVersion, SatisfactorySaveHeader } from "./save.types"; export type ReadMode = 'stream' | 'whole'; export declare const DEFAULT_SATISFACTORY_CHUNK_HEADER_SIZE = 49; export type ByteArray4 = [number, number, number, number]; export type Grids = { [parentName: string]: { checksum: number; cellSize: number; gridHash: number; children: { [name: string]: number; }; }; }; export declare class SaveReader extends ByteReader { onProgressCallback: (progress: number, msg?: string) => void; header: SatisfactorySaveHeader | undefined; levels: Level[]; trailingCollectedObjects: ObjectReference[]; compressionInfo: ChunkCompressionInfo; static readonly EPOCH_TICKS = 621355968000000000n; constructor(fileBuffer: ArrayBuffer, onProgressCallback?: (progress: number, msg?: string) => void); readHeader(): SatisfactorySaveHeader; static getRoughSaveVersion: (saveVersion: number, headerTypeVersion: number) => RoughSaveVersion; inflateChunks(): { concatenatedChunkLength: number; numChunks: number; }; readSaveBodyHash: () => ByteArray4; readGrids: () => Grids; readLevels(): Level[]; }