gbx
Version:
a slim, fast and easy to set up Gamebox (GBX) parser written in TypeScript
32 lines (31 loc) • 896 B
TypeScript
import { DataStream } from './Handlers';
interface GBXReaderOptions {
classId: number;
stream?: DataStream;
headerChunks?: IHeaderChunks[];
}
export declare class GBXReader<NodeType> {
options: GBXReaderOptions;
private current?;
private fullChunkId;
private versions;
private unknowns;
constructor(options: GBXReaderOptions);
protected readVersion(version: number): number;
protected readUnknown<T>(unknown: T): T;
/**
* Reads a node.
*/
readNode(): NodeType;
/**
* Check if the chunk is supported and process it.
* @param fullChunkId The full chunk ID.
* @returns A boolean indicating if the chunk is supported.
*/
readChunk(fullChunkId: number, isHeaderChunk?: boolean, length?: number): boolean;
/**
* Reads a header chunk.
*/
readHeaderChunk(classId: number): NodeType;
}
export {};