import type { TSciChart3D, TSRTexture } from "../../../types/TSciChart3D";
import type { IBasePointMarker3DOptions } from "./BasePointMarker3D";
import { BasePointMarker3D, EMarkerType } from "./BasePointMarker3D";
/**
 * A {@link BaseTexturePointMarker3D} is a type of {@link BasePointMarker3D | 3D Point Marker} which uses
 * a flat billboarded texture at each point. Useful for fast / high performance requirements such as point-clouds.
 * @remarks See derived types of {@link BaseTexturePointMarker3D} for available texture point-markers
 */
export declare abstract class BaseTexturePointMarker3D extends BasePointMarker3D {
    /**
     * Creates an instance of {@link BaseTexturePointMarker3D}
     * @param webAssemblyContext The {@link TSciChart3D | SciChart 3D WebAssembly Context} containing native methods and
     * access to our WebGL2 Engine and WebAssembly numerical methods
     * @param options Optional parameters of type {@link IBasePointMarker3DOptions} used to configure the point-marker
     * @protected
     */
    protected constructor(webAssemblyContext: TSciChart3D, options?: IBasePointMarker3DOptions);
    /**
     * Defines the MarkerType, e.g. pixel point marker, Mesh (3d object) or textured-quad
     */
    get markerType(): EMarkerType;
    /**
     * Returns the TSRTexture instance which defines the flat geometry
     * (e.g. a billboarded textured quad) to draw at each location or point
     */
    abstract get pointsTexture(): TSRTexture;
}
