import type { Callout } from "./Callout.js";
import type { IconSymbol3DLayer } from "./IconSymbol3DLayer.js";
import type { ObjectSymbol3DLayer } from "./ObjectSymbol3DLayer.js";
import type { Symbol3DBase } from "./Symbol3D.js";
import type { VerticalOffset } from "./VerticalOffset.js";
/**
 * PointSymbol3D is used to render features with Point geometry in a 3D
 * SceneView.
 *
 * See
 * {@link https://developers.arcgis.com/web-scene-specification/objects/pointSymbol3D/}.
 *
 * @deprecated Use "json/*" modules instead.
 */
export interface PointSymbol3D extends Symbol3DBase {
    /**
     * Callout configuration for a symbol.
     */
    callout?: Callout;
    /**
     * The origin of the style from which the symbol was originally referenced.
     * A reference to the style origin can be either by styleName or by styleUrl
     * (but not both). It may be used to understand where a symbol was
     * originally sourced from, but does not affect actual appearance or
     * rendering of the symbol. See
     * {@link https://developers.arcgis.com/web-scene-specification/objects/styleOrigin/}.
     */
    styleOrigin?: {
        /**
         * Name of the symbol in the style referenced by styleName or styleUrl.
         */
        name?: string;
        /**
         * A well-known esri-provided style, such as EsriThematicShapesStyle.
         */
        styleName?: string;
        /**
         * URL to a style definition Must be one of the following values: String
         * An absolute URL String A relative path starting with "./".
         */
        styleUrl?: string;
    };
    /**
     * A Collection of Symbol3DLayer objects used to visualize the graphic or
     * feature.
     */
    symbolLayers: (IconSymbol3DLayer | ObjectSymbol3DLayer)[];
    /**
     * @inheritDoc
     */
    type: "PointSymbol3D";
    /**
     * Shifts the symbol along the vertical world axis by a given length.
     */
    verticalOffset?: VerticalOffset;
}
