import { Chunk } from '.';
import { ResizableBinaryWriter } from '../util';
import { ChunkDataDescriptor, Coordinate3D, LocationEntry } from './types';
export declare class AnvilParser extends ResizableBinaryWriter {
    private dirtyChunks;
    static chunkOffset(x: number, z: number): number;
    private getValidMatchingChunkAtOffset;
    buffer(): ArrayBuffer;
    getBlock(c: Coordinate3D): {
        name: string;
        properties: {
            [key: string]: string;
        };
    };
    setBlock(c: Coordinate3D, name: string, properties: {
        [key: string]: string;
    }): void;
    getChunkAtChunkCoordinates(x: number, z: number): Chunk | undefined;
    getChunkContainingCoordinate(c: Coordinate3D): Chunk | undefined;
    getLocationEntry(): LocationEntry;
    setLocationEntry(entry: LocationEntry): void;
    getLocationEntries(): LocationEntry[];
    setLocationEntries(entries: LocationEntry[]): void;
    getTimestamps(): number[];
    setTimestamps(value: number[]): void;
    getChunkDataDescriptor(offset?: number): ChunkDataDescriptor;
    setChunkDataDescriptor(value: ChunkDataDescriptor, offset?: number): void;
    getChunkData(offset?: number): ArrayBuffer;
    getAllChunks(): Chunk[];
    setChunks(chunks?: Chunk[], exact?: boolean): void;
}
