import { BoundingSphere, Cartographic, Viewer } from "cesium";
import { IInputObjs3DTile } from "src/interfaces/sceneManager.interface";
import { InputDataPrimitive } from "./styleElement";
export declare class SceneManager {
    viewer: Viewer;
    private _containerId;
    private _urlApi;
    private _token;
    private _inputDataPrimitive;
    constructor(containerId: string, viewer: any, token: string, inputDataPrimitive: InputDataPrimitive);
    /**
  * Hàm load model từ url JSON
  * @param {string} url URL Json model
  * @param {number} maximumScreen
  */
    load3DTileUrl: (url: string, inputObjs?: IInputObjs3DTile) => Promise<any>;
    setPositionModel: (tileset: any, inputObjs?: IInputObjs3DTile) => void;
    /**
        * Hàm load file KMZ
        * @param {string} url URL KMZ
        */
    loadKmz: (path: string, inputObjs?: IInputObjs3DTile) => Promise<import("cesium").DataSource>;
    removeKmz: (kmz: any) => void;
    load3DTileById: (idData: string, urlConnect?: string, inputObjs?: IInputObjs3DTile) => Promise<{
        tileSet: any;
        url: any;
        dataConnect: import("../interfaces/styleElement.interface").ObjDataPrimitiveModel | undefined;
    }>;
    showHideTile: (tile: any, show: boolean) => void;
    /**
    * Điều hướng camera đến tileset khi tileset đã được tải
    * @param {any} tileset tile được load
    */
    zoomTo: (tileset: any) => void;
    /**
    * Hàm bay đến bounding Box
    * @param {BoundingSphere} bouding bounding Box
    */
    cameraFlyToBouding: (bouding: BoundingSphere, duration?: number) => void;
    removeTileSet: (tileset: any) => void;
    transformZ: (tileset: any, heightOffset: number, cartographic?: any) => void;
    getCurrentCartographic: (tileset: any) => Cartographic | undefined;
    setModelMatrix: (tileset: any, longitude?: number, latitude?: number, height?: number, cartographic?: any) => void;
    setModelMatrixForKmz: (dataSource: any, targetLongitude?: number, targetLatitude?: number, targetHeight?: number) => void;
    private _computeCenterOfEntities;
    private _moveEntitiesByDelta;
    getBoundingBoxFromKMZ: (kmlDataSource: any) => BoundingSphere;
    handleZoomEarth: (zoom: boolean) => void;
    onChangeMap: (layer: number, mapUrls?: {
        id: string;
        url: string;
    }[]) => void;
    flyToYourLocation: (zDistance?: number, duration?: number) => Promise<unknown>;
}
