/**
 * Creates a mapbox camera.
 *
 * @remarks
 *
 * In order to use Mapbox inside Polygons, you need to add your Mapbox token.
 *
 * This is done by adding the following line inside your `PolyConfig.ts` file:
 *
 * ``` ts
 * Poly.thirdParty.mapbox().setToken('<your token>');
 * ```
 *
 *
 */
import { TypedSopNode } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { CameraNodeType } from '../../poly/NodeContext';
import { OnNodeRegisterCallback } from '../../poly/registers/nodes/NodesRegister';
declare class MapboxCameraSopParamsConfig extends NodeParamsConfig {
    style: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
    /** @param longitude */
    longitude: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param latitude */
    latitude: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    pitch: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    bearing: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    zoom: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    minZoom: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    maxZoom: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    allowDragRotate: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    addZoomControl: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    tlayerBuildings: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    tlayer3D: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    tlayerSky: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    /** @param camera name */
    name: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
    updateFromMap: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BUTTON>;
}
export declare class MapboxCameraSopNode extends TypedSopNode<MapboxCameraSopParamsConfig> {
    readonly paramsConfig: MapboxCameraSopParamsConfig;
    static type(): CameraNodeType;
    static onRegister: OnNodeRegisterCallback;
    protected initializeNode(): void;
    private _operation;
    cook(inputCoreGroups: CoreGroup[]): Promise<void>;
    static PARAM_CALLBACK_updateFromMap(node: MapboxCameraSopNode): void;
    private _paramCallbackUpdateFromMap;
}
export {};
