import * as flatbuffers from 'flatbuffers';
import { Column } from '../flat-geobuf/column.js';
import { Crs } from '../flat-geobuf/crs.js';
import { GeometryType } from '../flat-geobuf/geometry-type.js';
export declare class Header {
    bb: flatbuffers.ByteBuffer | null;
    bb_pos: number;
    __init(i: number, bb: flatbuffers.ByteBuffer): Header;
    static getRootAsHeader(bb: flatbuffers.ByteBuffer, obj?: Header): Header;
    static getSizePrefixedRootAsHeader(bb: flatbuffers.ByteBuffer, obj?: Header): Header;
    name(): string | null;
    name(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    envelope(index: number): number | null;
    envelopeLength(): number;
    envelopeArray(): Float64Array | null;
    geometryType(): GeometryType;
    hasZ(): boolean;
    hasM(): boolean;
    hasT(): boolean;
    hasTm(): boolean;
    columns(index: number, obj?: Column): Column | null;
    columnsLength(): number;
    featuresCount(): bigint;
    indexNodeSize(): number;
    crs(obj?: Crs): Crs | null;
    title(): string | null;
    title(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    description(): string | null;
    description(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    metadata(): string | null;
    metadata(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    static startHeader(builder: flatbuffers.Builder): void;
    static addName(builder: flatbuffers.Builder, nameOffset: flatbuffers.Offset): void;
    static addEnvelope(builder: flatbuffers.Builder, envelopeOffset: flatbuffers.Offset): void;
    static createEnvelopeVector(builder: flatbuffers.Builder, data: number[] | Float64Array): flatbuffers.Offset;
    static createEnvelopeVector(builder: flatbuffers.Builder, data: number[] | Uint8Array): flatbuffers.Offset;
    static startEnvelopeVector(builder: flatbuffers.Builder, numElems: number): void;
    static addGeometryType(builder: flatbuffers.Builder, geometryType: GeometryType): void;
    static addHasZ(builder: flatbuffers.Builder, hasZ: boolean): void;
    static addHasM(builder: flatbuffers.Builder, hasM: boolean): void;
    static addHasT(builder: flatbuffers.Builder, hasT: boolean): void;
    static addHasTm(builder: flatbuffers.Builder, hasTm: boolean): void;
    static addColumns(builder: flatbuffers.Builder, columnsOffset: flatbuffers.Offset): void;
    static createColumnsVector(builder: flatbuffers.Builder, data: flatbuffers.Offset[]): flatbuffers.Offset;
    static startColumnsVector(builder: flatbuffers.Builder, numElems: number): void;
    static addFeaturesCount(builder: flatbuffers.Builder, featuresCount: bigint): void;
    static addIndexNodeSize(builder: flatbuffers.Builder, indexNodeSize: number): void;
    static addCrs(builder: flatbuffers.Builder, crsOffset: flatbuffers.Offset): void;
    static addTitle(builder: flatbuffers.Builder, titleOffset: flatbuffers.Offset): void;
    static addDescription(builder: flatbuffers.Builder, descriptionOffset: flatbuffers.Offset): void;
    static addMetadata(builder: flatbuffers.Builder, metadataOffset: flatbuffers.Offset): void;
    static endHeader(builder: flatbuffers.Builder): flatbuffers.Offset;
    static finishHeaderBuffer(builder: flatbuffers.Builder, offset: flatbuffers.Offset): void;
    static finishSizePrefixedHeaderBuffer(builder: flatbuffers.Builder, offset: flatbuffers.Offset): void;
}
