import type { PickingInfo, UpdateParameters } from "@deck.gl/core";
import { CompositeLayer } from "@deck.gl/core";
import type { ExtendedLayerProps, LayerPickInfo, ReportBoundingBoxAction } from "../utils/layerTools";
import type { RGBAColor, RGBColor } from "../../utils";
import { PrivatePointsLayer } from "./privatePointsLayer";
export interface PointsLayerProps extends ExtendedLayerProps {
    /**
     * Point positions as [x, y, z, x, y, z....].
     */
    pointsData: number[] | Float32Array;
    /**
     * Point color defined as RGB or RGBA array. Each component is in 0-255 range.
     */
    color: RGBColor | RGBAColor;
    /**
     * The units of the point radius, one of `'meters'`, `'common'`, and `'pixels'`.
     */
    radiusUnits: "meters" | "common" | "pixels";
    /**
     * Point radius defined in radius units.
     */
    pointRadius: number;
    /**  If true means that input z values are interpreted as depths.
     * For example depth of z = 1000 corresponds to -1000 on the z axis. Default true.
     */
    ZIncreasingDownwards: boolean;
    /** Enable/disable depth testing when rendering layer. Default true.
     */
    depthTest: boolean;
    reportBoundingBox?: React.Dispatch<ReportBoundingBoxAction>;
}
export default class PointsLayer extends CompositeLayer<PointsLayerProps> {
    constructor(props: PointsLayerProps);
    renderLayers(): [PrivatePointsLayer?];
    initializeState(): void;
    updateState({ props, oldProps }: UpdateParameters<PointsLayer>): void;
    getPickingInfo({ info }: {
        info: PickingInfo;
    }): LayerPickInfo;
    private rebuildDataAttributes;
    private loadData;
    private updateBoundingBox;
}
