import type { GeometryUnion } from "@arcgis/core/geometry/types.js";
/**
 * A GeoJSON geometry.
 */
export type GeoJSON = GeoJSONPoint | GeoJSONMultiPoint | GeoJSONLineString | GeoJSONMultiLineString | GeoJSONPolygon | GeoJSONMultiPolygon;
/**
 * A GeoJSON point.
 */
export interface GeoJSONPoint {
    /**
     * The type of GeoJSON geometry.
     */
    type: "Point";
    /**
     * The point coordinates.
     */
    coordinates: number[];
}
/**
 * A GeoJSON multipoint.
 */
export interface GeoJSONMultiPoint {
    /**
     * The type of GeoJSON geometry.
     */
    type: "MultiPoint";
    /**
     * The point coordinates.
     */
    coordinates: number[][];
}
/**
 * A GeoJSON line.
 */
export interface GeoJSONLineString {
    /**
     * The type of GeoJSON geometry.
     */
    type: "LineString";
    /**
     * The line coordinates.
     */
    coordinates: number[][];
}
/**
 * A GeoJSON multiline.
 */
export interface GeoJSONMultiLineString {
    /**
     * The type of GeoJSON geometry.
     */
    type: "MultiLineString";
    /**
     * The line coordinates.
     */
    coordinates: number[][][];
}
/**
 * A GeoJSON polygon.
 */
export interface GeoJSONPolygon {
    /**
     * The type of GeoJSON geometry.
     */
    type: "Polygon";
    /**
     * The polygon coordinates.
     */
    coordinates: number[][][];
}
/**
 * A GeoJSON multipolygon.
 */
export interface GeoJSONMultiPolygon {
    /**
     * The type of GeoJSON geometry.
     */
    type: "MultiPolygon";
    /**
     * The polygon coordinates.
     */
    coordinates: number[][][][];
}
/**
 * Converts an esri geometry to a GeoJSON geometry.
 *
 * @param geometry Geometry to convert.
 */
export declare function esriToGeoJSON(geometry: GeometryUnion): GeoJSON;
/**
 * Converts a GeoJSON geometry to an esri geometry. Assigns a spatial reference
 * of WGS84.
 *
 * @param geometry Geometry to convert.
 */
export declare function geoJSONToEsri(geometry: GeoJSON): GeometryUnion;
