import * as flatbuffers from 'flatbuffers';
import { GeometryType } from '../flat-geobuf/geometry-type.js';
export declare class Geometry {
    bb: flatbuffers.ByteBuffer | null;
    bb_pos: number;
    __init(i: number, bb: flatbuffers.ByteBuffer): Geometry;
    static getRootAsGeometry(bb: flatbuffers.ByteBuffer, obj?: Geometry): Geometry;
    static getSizePrefixedRootAsGeometry(bb: flatbuffers.ByteBuffer, obj?: Geometry): Geometry;
    ends(index: number): number | null;
    endsLength(): number;
    endsArray(): Uint32Array | null;
    xy(index: number): number | null;
    xyLength(): number;
    xyArray(): Float64Array | null;
    z(index: number): number | null;
    zLength(): number;
    zArray(): Float64Array | null;
    m(index: number): number | null;
    mLength(): number;
    mArray(): Float64Array | null;
    t(index: number): number | null;
    tLength(): number;
    tArray(): Float64Array | null;
    tm(index: number): bigint | null;
    tmLength(): number;
    type(): GeometryType;
    parts(index: number, obj?: Geometry): Geometry | null;
    partsLength(): number;
    static startGeometry(builder: flatbuffers.Builder): void;
    static addEnds(builder: flatbuffers.Builder, endsOffset: flatbuffers.Offset): void;
    static createEndsVector(builder: flatbuffers.Builder, data: number[] | Uint32Array): flatbuffers.Offset;
    static createEndsVector(builder: flatbuffers.Builder, data: number[] | Uint8Array): flatbuffers.Offset;
    static startEndsVector(builder: flatbuffers.Builder, numElems: number): void;
    static addXy(builder: flatbuffers.Builder, xyOffset: flatbuffers.Offset): void;
    static createXyVector(builder: flatbuffers.Builder, data: number[] | Float64Array): flatbuffers.Offset;
    static createXyVector(builder: flatbuffers.Builder, data: number[] | Uint8Array): flatbuffers.Offset;
    static startXyVector(builder: flatbuffers.Builder, numElems: number): void;
    static addZ(builder: flatbuffers.Builder, zOffset: flatbuffers.Offset): void;
    static createZVector(builder: flatbuffers.Builder, data: number[] | Float64Array): flatbuffers.Offset;
    static createZVector(builder: flatbuffers.Builder, data: number[] | Uint8Array): flatbuffers.Offset;
    static startZVector(builder: flatbuffers.Builder, numElems: number): void;
    static addM(builder: flatbuffers.Builder, mOffset: flatbuffers.Offset): void;
    static createMVector(builder: flatbuffers.Builder, data: number[] | Float64Array): flatbuffers.Offset;
    static createMVector(builder: flatbuffers.Builder, data: number[] | Uint8Array): flatbuffers.Offset;
    static startMVector(builder: flatbuffers.Builder, numElems: number): void;
    static addT(builder: flatbuffers.Builder, tOffset: flatbuffers.Offset): void;
    static createTVector(builder: flatbuffers.Builder, data: number[] | Float64Array): flatbuffers.Offset;
    static createTVector(builder: flatbuffers.Builder, data: number[] | Uint8Array): flatbuffers.Offset;
    static startTVector(builder: flatbuffers.Builder, numElems: number): void;
    static addTm(builder: flatbuffers.Builder, tmOffset: flatbuffers.Offset): void;
    static createTmVector(builder: flatbuffers.Builder, data: bigint[]): flatbuffers.Offset;
    static startTmVector(builder: flatbuffers.Builder, numElems: number): void;
    static addType(builder: flatbuffers.Builder, type: GeometryType): void;
    static addParts(builder: flatbuffers.Builder, partsOffset: flatbuffers.Offset): void;
    static createPartsVector(builder: flatbuffers.Builder, data: flatbuffers.Offset[]): flatbuffers.Offset;
    static startPartsVector(builder: flatbuffers.Builder, numElems: number): void;
    static endGeometry(builder: flatbuffers.Builder): flatbuffers.Offset;
    static createGeometry(builder: flatbuffers.Builder, endsOffset: flatbuffers.Offset, xyOffset: flatbuffers.Offset, zOffset: flatbuffers.Offset, mOffset: flatbuffers.Offset, tOffset: flatbuffers.Offset, tmOffset: flatbuffers.Offset, type: GeometryType, partsOffset: flatbuffers.Offset): flatbuffers.Offset;
}
