import { ByteWriter } from "../../byte/byte-writer.class";
import { ChunkCompressionInfo, ChunkSummary } from "../../file.types";
import { SaveComponent } from "../objects/SaveComponent";
import { SaveEntity } from "../objects/SaveEntity";
import { BlueprintConfig, BlueprintHeader } from "./blueprint.types";
export declare class BlueprintWriter extends ByteWriter {
    constructor();
    static SerializeHeader(writer: ByteWriter, header: BlueprintHeader): void;
    generateChunks(compressionInfo: ChunkCompressionInfo, posAfterHeader: number, onBinaryBeforeCompressing: (binary: ArrayBuffer) => void, onHeader: (header: Uint8Array) => void, onChunk: (chunk: Uint8Array) => void): ChunkSummary[];
    static SerializeObjects(writer: ByteWriter, objects: (SaveEntity | SaveComponent)[]): void;
    static SerializeObjectContents(writer: ByteWriter, objects: (SaveEntity | SaveComponent)[], buildVersion: number, levelName: string): void;
}
export declare class BlueprintConfigWriter extends ByteWriter {
    constructor();
    static SerializeConfig(writer: ByteWriter, config: BlueprintConfig): void;
}
