@ankhzet/goo
Version:
Elegoo .goo file format reader/writer
21 lines (20 loc) • 777 B
TypeScript
import type { FileHandle } from 'node:fs/promises';
export declare class BinaryReader {
private readable;
private buffers;
constructor(readable: FileHandle);
protected buffer(size: number): Buffer;
assert(data: Uint8Array, message: string): Promise<void>;
skip(count: number): Promise<number>;
binary(count: number): Promise<import("fs/promises").FileReadResult<Buffer>>;
bool(): Promise<boolean>;
u8(): Promise<number>;
u16(): Promise<number>;
u24(): Promise<number>;
u32(): Promise<number>;
f32(): Promise<number>;
string(length: number): Promise<string>;
struct<T, Map extends Record<string, () => Promise<any>>>(target: T, map: Map): Promise<T & {
[N in keyof Map]: Awaited<ReturnType<Map[N]>>;
}>;
}