/// <reference types="@geoscene/core/interfaces.d.ts" />
/// <reference types="../../index.d.ts" />
import { Nil } from '@arcgis/components-utils';
import { default as SceneView } from '@geoscene/core/views/SceneView.js';
import { default as WebScene } from '@geoscene/core/WebScene.js';
import { PublicLitElement as LitElement, TargetedEvent } from '@arcgis/lumina';
import { Use } from '@arcgis/lumina/controllers';

declare const useWebScene: (component: LitElement & Omit<Pick<WebScene, "basemap" | "focusAreas" | "ground" | "clippingArea" | "layers" | "tables" | "presentation" | "widgets" | "applicationProperties" | "authoringApp" | "authoringAppVersion" | "floorInfo" | "initialViewProperties" | "portalItem" | "thumbnailUrl" | "clippingEnabled" | "heightModelInfo">, "basemap" | "ground" | ("destroyed" | "initialized" | "declaredClass" | "set" | "watch" | "addHandles" | "removeHandles" | "hasHandles") | "layers" | "tables" | "presentation" | "widgets" | "applicationProperties" | "authoringApp" | "authoringAppVersion" | "floorInfo" | "initialViewProperties" | "portalItem" | "thumbnailUrl" | "clippingEnabled" | "heightModelInfo"> & {
    autoDestroyDisabled: boolean;
    destroy: () => Promise<void>;
}) => WebScene;
declare const useSceneView: (component: LitElement & Omit<Pick<SceneView, "container" | "map" | "basemapView" | "center" | "constraints" | "extent" | "fatalError" | "graphics" | "highlights" | "navigation" | "padding" | "popup" | "scale" | "spatialReference" | "theme" | "timeExtent" | "viewpoint" | "zoom" | "floors" | "highlightOptions" | "alphaCompositingEnabled" | "analyses" | "camera" | "clippingArea" | "environment" | "qualityProfile" | "viewingMode" | "breakpoints" | "heightBreakpoint" | "popupEnabled" | "widthBreakpoint" | "ui" | "animation" | "displayFilterEnabled">, "container" | "center" | ("destroyed" | "initialized" | "declaredClass" | "set" | "watch" | "addHandles" | "removeHandles" | "hasHandles") | "breakpoints" | "heightBreakpoint" | "popupEnabled" | "widthBreakpoint" | "ui" | "animation" | "displayFilterEnabled"> & {
    autoDestroyDisabled: boolean;
    destroy: () => Promise<void>;
}) => SceneView;
/**
 * The GeoScene Scene component is used to add 3D maps to web applications. For 2D maps, use the
 * [GeoScene Map component](https://doc.geoscene.cn/javascript/4.33/references/map-components/geoscene-map/).
 *
 * The Scene component creates a [SceneView](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html)
 * and loads a [WebScene](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-WebScene.html) item from either
 * [GeoScene Online](https://www.geosceneonline.cn/geoscene/webapps/home) or [GeoScene Enterprise portal](https://enterprise.geoscene.cn/en/portal/latest/administer/windows/what-is-portal-for-geoscene-.htm).
 *
 * ```html
 * <geoscene-scene item-id="e2da7564e4f24eaaa918ffd70378056a"></geoscene-scene>
 * ```
 *
 * Alternatively, the Scene component can be initialized without a WebScene item:
 *
 * ```html
 * <geoscene-scene
 *  basemap="satellite"
 *  ground="world-elevation"
 *  camera-position="12.3808, 46.3959, 4400"
 *  camera-tilt="75"
 *  camera-heading="300">
 * </geoscene-scene>
 * ```
 *
 * Further components can be added and connected to the Scene component:
 *
 * ```html
 * <geoscene-scene item-id="e2da7564e4f24eaaa918ffd70378056a">
 *   <geoscene-layer-list position="bottom-right"></geoscene-layer-list>
 * </geoscene-scene>
 * ```
 *
 * The Scene component can be customized further using any of the [core API functionalities](https://doc.geoscene.cn/javascript/4.33/api-reference/)
 * of the GeoScene Maps SDK for JavaScript.
 *
 * ```js
 * const viewElement = document.querySelector("geoscene-scene");
 * await viewElement.viewOnReady();
 * // The view is now ready to be used.
 * const layer = new GraphicsLayer({ title: "My layer"});
 * viewElement.map.add(layer);
 * ```
 *
 * **See also**
 *
 * - [SDK sample apps using the Scene component](https://doc.geoscene.cn/javascript/4.33/sample-code/?tagged=geoscene-scene)
 * - [Get started](https://doc.geoscene.cn/javascript/4.33/get-started/)
 * - [Programming patterns](https://doc.geoscene.cn/javascript/4.33/programming-patterns/)
 *
 * [Read more...](https://doc.geoscene.cn/javascript/4.33/references/map-components/geoscene-scene/)
 */
export declare class GeosceneScene extends LitElement {
    /** The [SceneView](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html) instance created and managed by the component. Accessible once the component is fully loaded. */
    readonly view: SceneView;
    /**
     * Collection containing a flat list of all the created [LayerViews](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-layers-LayerView.html)
     * related to the basemap, operational layers, and group layers in this view.
     */
    readonly allLayerViews: __geoscene.Collection<__geoscene.LayerView>;
    /**
     * Allows the view to be partially or fully transparent when composited with the webpage elements behind it.
     *
     * @default false
     */
    alphaCompositingEnabled: boolean;
    /**
     * Allows for adding analyses directly to the default analyses in the View.
     *
     * [Read more...](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#analyses)
     */
    analyses: __geoscene.Collection<__geoscene.AnalysisUnion>;
    /**
     * If true, the component will not be destroyed automatically when it is
     * disconnected from the document. This is useful when you want to move the
     * component to a different place on the page, or temporarily hide it. If this
     * is set, make sure to call the [destroy](https://doc.geoscene.cn/javascript/4.33/references/map-components/geoscene-scene/#destroy) method when you are done to
     * prevent memory leaks.
     *
     * @default false
     */
    autoDestroyDisabled: boolean;
    /**
     * Specifies a basemap for the map. The basemap is a set of layers that give
     * geographic context to the view and the other operational layers
     * in the map.
     * It can either be set using a basemap ID string ([see values](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Map.html#basemap)),
     * [Basemap](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Basemap.html)
     * or [BasemapStyle](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-support-BasemapStyle.html).
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Map.html#basemap)
     */
    basemap?: __geoscene.Basemap | string;
    /**
     * Represents the [view for a single basemap](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-BasemapView.html)
     * after it has been added to the map.
     */
    basemapView: __geoscene.BasemapView;
    /**
     * The [camera](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Camera.html) allows to set the observation point from which the visible portion (or perspective)
     * of the view is determined. When set in the constructor, this property overrides the [center](#center), [extent](#extent), [scale](#scale), [viewpoint](#viewpoint), and [zoom](#zoom) properties.
     *
     * Setting the camera immediately changes the current view. For animating the view, see this component's
     * [goTo()](#goTo) method.
     */
    get camera(): __geoscene.Camera;
    set camera(newValue: __geoscene.Camera);
    /**
     * The diagonal field of view (fov) angle for the camera. The range of angles must be between 1 and 170 degrees.
     *
     * Setting the camera fov immediately changes the current view. For animating the view, see this component's
     * [goTo()](#goTo) method.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Camera.html#fov)
     */
    get cameraFov(): Nil | number;
    set cameraFov(newValue: Nil | number);
    /**
     * The compass heading of the camera in degrees.
     *
     * Setting the camera heading immediately changes the current view. For animating the view, see this component's
     * [goTo()](#goTo) method.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Camera.html#heading)
     */
    get cameraHeading(): Nil | number;
    set cameraHeading(newValue: Nil | number);
    /**
     * The position of the camera defined by a map point. It can either be set with a
     * [Point](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-geometry-Point.html) instance
     * or a string in the format: longitude, latitude, elevation. E.g. `"12.3808, 46.3959, 4400"`.
     *
     * Setting the camera position immediately changes the current view. For animating the view, see this component's
     * [goTo()](#goTo) method.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Camera.html#position)
     */
    get cameraPosition(): __geoscene.Point | Nil | number[] | string;
    set cameraPosition(newValue: __geoscene.Point | Nil | number[] | string);
    /**
     * The tilt of the camera in degrees with respect to the surface as projected down from the camera position.
     *
     * Setting the camera tilt immediately changes the current view. For animating the view, see this component's
     * [goTo()](#goTo) method.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Camera.html#tilt)
     */
    get cameraTilt(): Nil | number;
    set cameraTilt(newValue: Nil | number);
    /**
     * Represents the center point of the view. It can be a string with the format `"<longitude>, <latitude>"`
     * or a [Point](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-geometry-Point.html) instance.
     *
     * Setting the center immediately changes the current view. For animating the view, see this component's
     * [goTo()](#goTo) method.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#center)
     */
    get center(): __geoscene.SceneView["center"];
    set center(newValue: __geoscene.SceneView["center"] | Nil | number[] | string);
    /**
     * Represents an optional clipping area used to define the visible [extent](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-geometry-Extent.html)
     * of a Scene in `local` [viewingMode](#viewingMode).
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#clippingArea)
     */
    clippingArea: nullish | __geoscene.Extent;
    /**
     * Specifies constraints for the camera's tilt, altitude, and view's clip distance.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#constraints)
     */
    constraints: __geoscene.SceneViewConstraints;
    /**
     * Indicates whether a layer's `displayFilter` is honored when rendering layers in the view.
     * If `false`, the display filters are ignored and all features are rendered.
     *
     * @default false
     */
    displayFilterDisabled: boolean;
    /**
     * Specifies various properties of the environment's visualization within the view, including lighting, background, weather, and more.
     * The Scene will redraw automatically when any property of environment changes.
     *
     * Modifying the lighting:
     *
     * ```js
     * viewElement.environment.lighting = {
     *   type: "sun", // autocasts as new SunLighting()
     *   date: new Date(), // sets the lighting to reflect the current time of day
     *   directShadowsEnabled: true,
     * };
     * ```
     *
     * Setting the background:
     *
     * ```js
     * viewElement.environment = {
     *  background: {
     *     type: "color",
     *     color: [255, 252, 244, 1]
     *  },
     *   starsEnabled: false,
     *   atmosphereEnabled: false
     * };
     * ```
     *
     * Changing the weather in the scene:
     *
     * ```js
     * viewElement.environment.weather = {
     *   type: "rainy", // autocasts as new RainyWeather({ cloudCover: 0.7, precipitation: 0.3 })
     *   cloudCover: 0.7,
     *   precipitation: 0.3
     * };
     * ```
     *
     * **See also**
     *
     * - [SunLighting](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-3d-environment-SunLighting.html)
     * - [VirtualLighting](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-3d-environment-VirtualLighting.html)
     * - [SunnyWeather](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-3d-environment-SunnyWeather.html)
     * - [CloudyWeather](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-3d-environment-CloudyWeather.html)
     * - [RainyWeather](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-3d-environment-RainyWeather.html)
     * - [SnowyWeather](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-3d-environment-SnowyWeather.html)
     * - [FoggyWeather](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-3d-environment-FoggyWeather.html)
     * - [Sample - Daylight component](https://doc.geoscene.cn/javascript/4.33/sample-code/daylight/)
     * - [Sample - Weather component](https://doc.geoscene.cn/javascript/4.33/sample-code/weather/)
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#environment)
     */
    environment: __geoscene.SceneViewEnvironment;
    /**
     * The extent represents the visible portion of a [map](#map) within the view as an instance of
     * [Extent](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-geometry-Extent.html).
     *
     * Setting the extent immediately changes the view without animation. To animate
     * the view, see this component's [goTo()](#goTo) method.
     * When the view is rotated, the extent does not update to include the newly visible portions of the map.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#extent)
     */
    get extent(): __geoscene.SceneView["extent"];
    set extent(newValue: __geoscene.SceneView["extent"]);
    /**
     * A rejected view indicates a fatal [error](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-core-Error.html)
     * making it unable to display.
     *
     * [Read more](https://next.sites.afd.geoscene.cn/javascript/latest/api-reference/geoscene-views-SceneView.html#fatalError)
     */
    fatalError: nullish | __geoscene.Error;
    /**
     * Applies a display filter on the view for a specific set of floor levels.
     * It can filter the map display on floor-aware layers by zero or more level IDs.
     */
    floors: __geoscene.Collection<string>;
    /**
     * A container of all [focus areas](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-effects-FocusAreas.html) present in the map.
     *
     * [Read more...](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Map.html#focusAreas)
     *
     * @since 4.33
     */
    get focusAreas(): __geoscene.FocusAreas;
    set focusAreas(newValue: __geoscene.FocusAreas);
    /** Gamepad input specific configuration settings. */
    get gamepad(): __geoscene.GamepadSettings;
    /**
     * Allows for adding graphics directly to the default graphics in the view.
     *
     * @example
     * ```js
     * // Adds a graphic to the View
     * graphics.add(pointGraphic);
     * // Removes a graphic from the View
     * graphics.remove(pointGraphic);
     * ```
     */
    graphics: __geoscene.Collection<__geoscene.Graphic>;
    /**
     * Specifies the surface properties for the [map](#map). It can be either a [Ground](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Ground.html)
     * instance or a string with one of the following values:
     *    * `"world-elevation"`
     *    * `"world-topobathymetry"`
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Map.html#ground)
     */
    get ground(): typeof this._map.ground;
    set ground(value: __geoscene.Ground | string);
    /**
     * The view for the ground of the map.
     *
     * [Read more...](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#groundView)
     */
    readonly groundView: __geoscene.GroundView;
    /**
     * Represents a collection of [HighlightOptions](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-support-HighlightOptions.html) objects which can be used to
     * highlight features throughout an application.
     *
     * [Read more...](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-View.html#highlights)
     */
    highlights: __geoscene.Collection<__geoscene.HighlightOptions>;
    /**
     * Options for configuring the highlight.
     *
     * @deprecated since 4.32, use [highlights](https://next.sites.afd.geoscene.cn/javascript/latest/references/map-components/geoscene-scene/#highlights) property instead.
     */
    highlightOptions: __geoscene.HighlightOptions;
    /**
     * Indication whether the view is being interacted with (for example when panning or by an interactive tool).
     *
     * @default false
     */
    get interacting(): boolean;
    /**
     * The ID of a [WebScene](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-WebScene.html) item from either
     * [GeoScene Online](https://www.geosceneonline.cn/geoscene/webapps/home) or [GeoScene Enterprise portal](https://enterprise.geoscene.cn/en/portal/latest/administer/windows/what-is-portal-for-geoscene-.htm).
     *
     * To configure the portal url you must set the [config.portalUrl](https://next.sites.afd.geoscene.cn/javascript/latest/api-reference/geoscene-config.html#portalUrl) property before the Scene component loads.
     */
    get itemId(): Nil | string;
    set itemId(newValue: Nil | string);
    /**
     * A collection containing a hierarchical list of all the created
     * [LayerViews](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-layers-LayerView.html) of the
     * [operational layers](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Map.html#layers) in the [map](#map).
     */
    readonly layerViews: __geoscene.Collection<__geoscene.LayerView>;
    /** The magnifier allows for showing a portion of the view as a magnifier image on top of the view. */
    readonly magnifier: __geoscene.Magnifier;
    /** An instance of a [Map](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Map.html) object to display in the view. */
    map: __geoscene.Map | nullish;
    /**
     * Indication whether the view is being navigated (for example when panning).
     *
     * @default false
     */
    get navigating(): boolean;
    /**
     * Options to configure the navigation behavior of the view.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#navigation)
     */
    navigation: __geoscene.Navigation;
    /**
     * Use the padding property to make the [center](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#center),
     * and [extent](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#extent),
     * etc. work off a subsection of the full view.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#padding)
     *
     * @default {left: 0, top: 0, right: 0, bottom: 0}
     */
    padding: __geoscene.ViewPadding;
    /**
     * This property contains performance information of the view, e.g. global memory usage and additional
     * details for layers about memory consumption and number of features.
     */
    get performanceInfo(): __geoscene.SceneViewPerformanceInfo;
    /**
     * A [Popup](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-widgets-Popup.html)
     * object that displays general content or attributes from [layers](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Map.html#layers)
     * in the [map](#map).
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#popup)
     */
    popup: nullish | __geoscene.Popup;
    /**
     * Controls whether the popup opens when users click on the view.
     *
     * @default false
     */
    popupDisabled: boolean;
    /**
     * Scenes can be drawn in three different quality modes: `high`, `medium` and `low`.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#qualityProfile)
     */
    qualityProfile: "medium" | "low" | "high";
    /**
     * When `true`, this property indicates whether the view successfully satisfied all dependencies,
     * signaling that the necessary conditions are met.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#ready)
     *
     * @default false
     */
    readonly ready: boolean;
    /**
     * Represents the current value of one pixel in the unit of the view's
     * [spatialReference](#spatialReference).
     * The resolution is calculated by dividing the [Scene's extent](#extent) [width](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-geometry-Extent.html#width)
     * by [its width](#width).
     */
    get resolution(): number;
    /**
     * Represents the map scale at the center of the view.
     *
     * Setting the scale immediately changes the view. For animating
     * the view, see this component's [goTo()](#goTo) method.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#scale)
     */
    get scale(): number;
    set scale(newValue: number);
    /**
     * The [spatial reference](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-geometry-SpatialReference.html) of the view.
     * This indicates the projected or geographic coordinate system used
     * to locate geographic features in the map.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#spatialReference)
     *
     * @default null
     */
    spatialReference: __geoscene.SpatialReference;
    /**
     * Indication whether the view is animating, being navigated with or resizing.
     *
     * @default false
     */
    get stationary(): boolean;
    /**
     * Indicates if the view is visible on the page.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#suspended)
     *
     * @default true
     */
    readonly suspended: boolean;
    /**
     * This property specifies the base colors used by some components to render graphics and labels.
     * This only affects those elements that would otherwise use the default orange pattern.
     *
     * @default null
     */
    theme: nullish | __geoscene.Theme;
    /**
     * The view's time extent. Time-aware layers display their temporal data that falls within
     * the view's time extent. Setting the view's time extent is similar to setting the spatial
     * extent because once the time extent is set, the
     * view updates automatically to conform to the change.
     *
     * @default null
     */
    timeExtent: nullish | __geoscene.TimeExtent;
    /**
     * Indicates whether the view is being updated by additional data requests to the network,
     * or by processing received data.
     *
     * @default false
     */
    readonly updating: boolean;
    /**
     * The viewing mode sets whether the view renders the earth as a sphere (global mode) or on a flat plane (local mode).
     *
     * Note that the viewing mode must be set before the Scene component loads.
     * Depending on the viewing mode different [supported coordinate systems](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#supported-coordinate-systems) are available.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#viewingMode)
     *
     * @default "global"
     */
    viewingMode: "global" | "local";
    /**
     * Represents the current view as a [Viewpoint](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-Viewpoint.html)
     * or point of observation on the view.
     *
     * Setting the viewpoint immediately changes the current view. For animating
     * the view, see this component's [goTo()](#goTo) method.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#viewpoint)
     */
    get viewpoint(): __geoscene.Viewpoint;
    set viewpoint(newValue: __geoscene.Viewpoint);
    /**
     * The visibleArea represents the visible portion of a [map](#map) within the view as an instance of a
     * [Polygon](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-geometry-Polygon.html).
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#visibleArea)
     */
    readonly visibleArea: nullish | __geoscene.Polygon;
    /**
     * Represents the level of detail (LOD) at the center of the view.
     *
     * Setting the zoom immediately changes the current view. For animating the view, see this component's [goTo()](#goTo) method.
     * Setting this property in conjunction with [center](#center)
     * is a convenient way to set the initial extent of the view.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#zoom)
     */
    get zoom(): number;
    set zoom(newValue: number);
    /**
     * @deprecated
     * since 4.33, use `element.map.add(layer)` instead.
     *
     * Adds a layer to the [map's](https://next.sites.afd.geoscene.cn/javascript/latest/references/map-components/geoscene-scene/#map) `layers` collection.
     */
    addLayer(layer: __geoscene.Layer | Promise<any>, index?: number): Promise<void>;
    /**
     * @deprecated
     * since 4.33, use `element.map.addMany([layer])` instead.
     *
     * Adds a layer or array of layers to the [map's](https://next.sites.afd.geoscene.cn/javascript/latest/references/map-components/geoscene-scene/#map) `layers` collection.
     */
    addLayers(layers: __geoscene.Layer[], index?: number): Promise<void>;
    /**
     * @deprecated
     * since 4.33, use `element.map.tables.add(table)` instead.
     *
     * Adds a table to the [map's](https://next.sites.afd.geoscene.cn/javascript/latest/references/map-components/geoscene-scene/#map) `tables` collection.
     */
    addTable(table: __geoscene.FeatureLayer): Promise<void>;
    /**
     * @deprecated
     * since 4.33, use `element.map.tables.addMany([table])` instead.
     *
     * Adds a table or array of tables to the [map's](https://next.sites.afd.geoscene.cn/javascript/latest/references/map-components/geoscene-scene/#map) `tables` collection.
     */
    addTables(tables: __geoscene.FeatureLayer[], index?: number): Promise<void>;
    /** Closes the [popup](#popup). */
    closePopup(): Promise<void>;
    /**
     * Destroys the Scene component, and any associated resources, including its [map](#map), [popup](#popup),
     * and removes components or other UI DOM elements added to it.
     */
    destroy(): Promise<void>;
    /**
     * Sets the view to a given target.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#goTo)
     */
    goTo(target: __geoscene.GoToTarget3D, options?: __geoscene.GoToOptions3D): Promise<unknown>;
    /**
     * Returns [hit test results](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#HitTestResult)
     * from each layer that intersects the specified screen coordinates.
     *
     * ```js
     * viewElement.addEventListener("geosceneViewClick", (event) => {
     *   viewElement.hitTest(event.detail).then((response) => {
     *      const result = response.results[0];
     *      if (result?.type === "graphic") {
     *         const { longitude, latitude } = result.mapPoint;
     *         console.log("Hit graphic at (" + longitude + ", " + latitude + ")", result.graphic);
     *      } else {
     *         console.log("Did not hit any graphic");
     *      }
     *   });
     * });
     * ```
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#hitTest)
     */
    hitTest(screenPoint: __geoscene.SceneViewScreenPoint | MouseEvent, options?: __geoscene.SceneViewHitTestOptions): Promise<__geoscene.SceneViewHitTestResult>;
    /**
     * Opens the popup based on input options.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#openPopup)
     */
    openPopup(options?: __geoscene.PopupViewOpenPopupOptions): Promise<void>;
    /**
     * Creates a screenshot of the current view.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#takeScreenshot)
     */
    takeScreenshot(options?: __geoscene.SceneViewTakeScreenshotOptions): Promise<__geoscene.SceneViewScreenshot>;
    /** Converts the given screen point to a [map point](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-geometry-Point.html). */
    toMap(screenPoint: __geoscene.SceneViewScreenPoint | MouseEvent, options?: __geoscene.SceneViewToMapOptions): __geoscene.Point | nullish;
    /** Converts the given [map point](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-geometry-Point.html) to a screen point. */
    toScreen(point: __geoscene.Point): __geoscene.SceneViewScreenPoint;
    /** Call this method to clear any fatal errors resulting from a lost WebGL context. */
    tryFatalErrorRecovery(): Promise<void>;
    /**
     * `viewOnReady()` may be leveraged once an instance of the component and its underlying [view](https://doc.geoscene.cn/javascript/4.33/references/map-components/geoscene-scene/#view) is created and ready.
     * This method takes two input parameters, a `callback` function and an `errback` function, and returns a promise. The `callback` executes when the promise resolves, and the `errback` executes if the promise is rejected.
     *
     * @since 4.33
     * @see [Watch for changes - waiting for components or views to be ready](https://doc.geoscene.cn/javascript/4.33/watch-for-changes/#waiting-for-components-or-views-to-be-ready)
     * @example
     * ```js
     * const viewElement = document.querySelector("geoscene-scene");
     * await viewElement.viewOnReady();
     * // The view is now ready to be used.
     * viewElement.map.add(new FeatureLayer({...}));
     * ```
     */
    viewOnReady(callback?: () => void, errback?: (error: Error) => void): Promise<void>;
    /**
     * Gets the analysis view created for the given analysis object.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#whenAnalysisView)
     */
    whenAnalysisView(analysis: __geoscene.AreaMeasurementAnalysis | __geoscene.DimensionAnalysis | __geoscene.DirectLineMeasurementAnalysis | __geoscene.LineOfSightAnalysis | __geoscene.SliceAnalysis | __geoscene.ViewshedAnalysis): Promise<__geoscene.AreaMeasurementAnalysisView3D | __geoscene.DimensionAnalysisView3D | __geoscene.DirectLineMeasurementAnalysisView3D | __geoscene.LineOfSightAnalysisView3D | __geoscene.SliceAnalysisView3D | __geoscene.ViewshedAnalysisView3D>;
    /**
     * Gets the layer view created on the view for the given layer.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#whenLayerView)
     */
    whenLayerView(layer: __geoscene.Layer): Promise<__geoscene.LayerView>;
    /**
     * This event is for view related property changes: [zoom](#zoom), [scale](#scale), [center](#center), [rotation](#rotation), [extent](#extent),
     * [camera](#camera), [viewpoint](#viewpoint). This event will also emit if [stationary](#stationary) toggles from `true` to `false`.
     */
    readonly geosceneViewChange: TargetedEvent<this, void>;
    /**
     * Fires after a user clicks on the view.
     *
     * ```js
     * viewElement.addEventListener("geosceneViewClick", (event) => {
     *   viewElement.hitTest(event.detail).then((response) => {
     *      const result = response.results[0];
     *      // ....
     *   });
     * });
     * ```
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-click)
     */
    readonly geosceneViewClick: TargetedEvent<this, __geoscene.ViewClickEvent>;
    /**
     * Fires after double-clicking on the view.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-double-click)
     */
    readonly geosceneViewDoubleClick: TargetedEvent<this, __geoscene.ViewDoubleClickEvent>;
    /**
     * Fires during a pointer drag on the view.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-drag)
     */
    readonly geosceneViewDrag: TargetedEvent<this, __geoscene.ViewDragEvent>;
    /**
     * Fires after holding either a mouse button or a single finger on the view for a short amount of time.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-hold)
     */
    readonly geosceneViewHold: TargetedEvent<this, __geoscene.ViewHoldEvent>;
    /**
     * Fires right after a user clicks on the view.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-immediate-click)
     */
    readonly geosceneViewImmediateClick: TargetedEvent<this, __geoscene.ViewImmediateClickEvent>;
    /**
     * Is emitted after two consecutive immediate-click events.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-immediate-double-click)
     */
    readonly geosceneViewImmediateDoubleClick: TargetedEvent<this, __geoscene.ViewImmediateDoubleClickEvent>;
    /**
     * Fires after a keyboard key is pressed.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-key-down)
     */
    readonly geosceneViewKeyDown: TargetedEvent<this, __geoscene.ViewKeyDownEvent>;
    /**
     * Fires after a keyboard key is released.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-key-up)
     */
    readonly geosceneViewKeyUp: TargetedEvent<this, __geoscene.ViewKeyUpEvent>;
    /**
     * Fires after each layer in the map has a corresponding LayerView created and rendered in the view.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-layerview-create)
     */
    readonly geosceneViewLayerviewCreate: TargetedEvent<this, __geoscene.ViewLayerviewCreateEvent>;
    /**
     * Fires when an error emits during the creation of a LayerView after a layer has been added to the map.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-layerview-create-error)
     */
    readonly geosceneViewLayerviewCreateError: TargetedEvent<this, __geoscene.ViewLayerviewCreateErrorEvent>;
    /**
     * Fires after a LayerView is destroyed and is no longer rendered in the view.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-layerview-destroy)
     */
    readonly geosceneViewLayerviewDestroy: TargetedEvent<this, __geoscene.ViewLayerviewDestroyEvent>;
    /**
     * Fires when the view for an analysis is created.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-analysis-view-create)
     */
    readonly geosceneViewAnalysisViewCreate: TargetedEvent<this, __geoscene.ViewAnalysisViewCreateEvent>;
    /**
     * Fires when an error occurs during the creation of an analysis view after an analysis is added to the view.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-analysis-view-create-error)
     */
    readonly geosceneViewAnalysisViewCreateError: TargetedEvent<this, __geoscene.ViewAnalysisViewCreateErrorEvent>;
    /**
     * Fires after an analysis view is destroyed.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-analysis-view-destroy)
     */
    readonly geosceneViewAnalysisViewDestroy: TargetedEvent<this, __geoscene.ViewAnalysisViewDestroyEvent>;
    /**
     * Fires when a wheel button of a pointing device (typically a mouse) is scrolled on the view.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-mouse-wheel)
     */
    readonly geosceneViewMouseWheel: TargetedEvent<this, __geoscene.ViewMouseWheelEvent>;
    /**
     * Fires after a mouse button is pressed, or a finger touches the display.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-pointer-down)
     */
    readonly geosceneViewPointerDown: TargetedEvent<this, __geoscene.ViewPointerDownEvent>;
    /**
     * Fires after a mouse cursor enters the view, or a display touch begins.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-pointer-enter)
     */
    readonly geosceneViewPointerEnter: TargetedEvent<this, __geoscene.ViewPointerEnterEvent>;
    /**
     * Fires after a mouse cursor leaves the view, or a display touch ends.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-pointer-leave)
     */
    readonly geosceneViewPointerLeave: TargetedEvent<this, __geoscene.ViewPointerLeaveEvent>;
    /**
     * Fires after the mouse or a finger on the display moves.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-pointer-move)
     */
    readonly geosceneViewPointerMove: TargetedEvent<this, __geoscene.ViewPointerMoveEvent>;
    /**
     * Fires after a mouse button is released, or a display touch ends.
     *
     * [Read more](https://doc.geoscene.cn/javascript/4.33/api-reference/geoscene-views-SceneView.html#event-pointer-up)
     */
    readonly geosceneViewPointerUp: TargetedEvent<this, __geoscene.ViewPointerUpEvent>;
    /**
     * This event is for the [ready](#ready) property and will be emitted when the view is ready.
     * This event will also emit if the [map](#map) property is changed.
     */
    readonly geosceneViewReadyChange: TargetedEvent<this, void>;
    private _map: __geoscene.Map;
    readonly _setterTypes: {
        center?: __geoscene.SceneView["center"] | Nil | number[] | string;
        ground?: __geoscene.Ground | string;
    };
}
export {};