import { IViewport } from '@antv/l7-core';
import WebMercatorViewport from 'viewport-mercator-project';
export interface IEarthCamera {
    viewportHeight: number;
    viewportWidth: number;
}
export default class Viewport implements IViewport {
    private xzReg;
    private yReg;
    private earthCameraRadius;
    private earthCameraZoom;
    private cameraPosition;
    protected viewport: WebMercatorViewport;
    private projectionMatrix;
    private modelMatrix;
    private viewMatrix;
    private viewProjectionMatrix;
    private ViewProjectionMatrixUncentered;
    private viewUncenteredMatrix;
    syncWithMapCamera(mapCamera: Partial<IEarthCamera>): void;
    /**
     * 旋转方法 Y 轴
     * @param r
     */
    rotateY(r: number): void;
    /**
     * 旋转方法 X 轴
     * @param r
     */
    rotateX(r: number): void;
    /**
     * 缩放方法
     * @param z
     */
    scaleZoom(z: number): void;
    getZoom(): number;
    getZoomScale(): number;
    getCenter(): [number, number];
    getProjectionMatrix(): number[];
    getModelMatrix(): number[];
    getViewMatrix(): number[];
    getViewMatrixUncentered(): number[];
    getViewProjectionMatrix(): number[];
    getViewProjectionMatrixUncentered(): number[];
    getFocalDistance(): number;
    projectFlat(lngLat: [number, number], scale?: number | undefined): [number, number];
}
