Vertex Viewer SDK
    Preparing search index...

    Interface IntrinsicElements

    interface IntrinsicElements {
        "vertex-scene-tree": Omit<
            JSX.VertexSceneTree,
            keyof VertexSceneTreeAttributes,
        > & {
            config?: string
            | Config;
            configEnv?: Environment;
            metadataSearchExactMatch?: boolean;
            operationAnimationDuration?: number;
            overScanCount?: number;
            viewerSelector?: string;
        } & {
            "attr:config"?: string
            | Config;
            "attr:configEnv"?: Environment;
            "attr:metadataSearchExactMatch"?: boolean;
            "attr:operationAnimationDuration"?: number;
            "attr:overScanCount"?: number;
            "attr:viewerSelector"?: string;
        } & {
            "prop:config"?: string
            | Config;
            "prop:configEnv"?: Environment;
            "prop:metadataSearchExactMatch"?: boolean;
            "prop:operationAnimationDuration"?: number;
            "prop:overScanCount"?: number;
            "prop:viewerSelector"?: string;
        };
        "vertex-scene-tree-notification-banner": Omit<
            JSX.VertexSceneTreeNotificationBanner,
            keyof VertexSceneTreeNotificationBannerAttributes,
        > & { actionLabel?: string; message?: string } & {
            "attr:actionLabel"?: string;
            "attr:message"?: string;
        } & { "prop:actionLabel"?: string; "prop:message"?: string };
        "vertex-scene-tree-search": Omit<
            JSX.VertexSceneTreeSearch,
            keyof VertexSceneTreeSearchAttributes,
        > & {
            debounce?: number;
            disabled?: boolean;
            placeholder?: string;
            value?: string;
        } & {
            "attr:debounce"?: number;
            "attr:disabled"?: boolean;
            "attr:placeholder"?: string;
            "attr:value"?: string;
        } & {
            "prop:debounce"?: number;
            "prop:disabled"?: boolean;
            "prop:placeholder"?: string;
            "prop:value"?: string;
        };
        "vertex-scene-tree-table-cell": Omit<
            JSX.VertexSceneTreeTableCell,
            keyof VertexSceneTreeTableCellAttributes,
        > & {
            alwaysShowIcons?: boolean;
            endItemIndicator?: boolean;
            expandToggle?: boolean;
            hovered?: boolean;
            isolateButton?: boolean;
            isScrolling?: boolean;
            placeholder?: string;
            value?: string;
            visibilityToggle?: boolean;
        } & {
            "attr:alwaysShowIcons"?: boolean;
            "attr:endItemIndicator"?: boolean;
            "attr:expandToggle"?: boolean;
            "attr:hovered"?: boolean;
            "attr:isolateButton"?: boolean;
            "attr:isScrolling"?: boolean;
            "attr:placeholder"?: string;
            "attr:value"?: string;
            "attr:visibilityToggle"?: boolean;
        } & {
            "prop:alwaysShowIcons"?: boolean;
            "prop:endItemIndicator"?: boolean;
            "prop:expandToggle"?: boolean;
            "prop:hovered"?: boolean;
            "prop:isolateButton"?: boolean;
            "prop:isScrolling"?: boolean;
            "prop:placeholder"?: string;
            "prop:value"?: string;
            "prop:visibilityToggle"?: boolean;
        };
        "vertex-scene-tree-table-column": Omit<
            JSX.VertexSceneTreeTableColumn,
            keyof VertexSceneTreeTableColumnAttributes,
        > & { initialWidth?: number; maxWidth?: number; minWidth?: number } & {
            "attr:initialWidth"?: number;
            "attr:maxWidth"?: number;
            "attr:minWidth"?: number;
        } & {
            "prop:initialWidth"?: number;
            "prop:maxWidth"?: number;
            "prop:minWidth"?: number;
        };
        "vertex-scene-tree-table-header": JSX.VertexSceneTreeTableHeader;
        "vertex-scene-tree-table-layout": Omit<
            JSX.VertexSceneTreeTableLayout,
            keyof VertexSceneTreeTableLayoutAttributes,
        > & {
            layoutHeight?: number;
            layoutOffset?: number;
            layoutWidth?: number;
            overScanCount?: number;
            rowHeight?: number;
            scrollOffset?: number;
            totalRows?: number;
            viewportEndIndex?: number;
            viewportStartIndex?: number;
        } & {
            "attr:layoutHeight"?: number;
            "attr:layoutOffset"?: number;
            "attr:layoutWidth"?: number;
            "attr:overScanCount"?: number;
            "attr:rowHeight"?: number;
            "attr:scrollOffset"?: number;
            "attr:totalRows"?: number;
            "attr:viewportEndIndex"?: number;
            "attr:viewportStartIndex"?: number;
        } & {
            "prop:layoutHeight"?: number;
            "prop:layoutOffset"?: number;
            "prop:layoutWidth"?: number;
            "prop:overScanCount"?: number;
            "prop:rowHeight"?: number;
            "prop:scrollOffset"?: number;
            "prop:totalRows"?: number;
            "prop:viewportEndIndex"?: number;
            "prop:viewportStartIndex"?: number;
        };
        "vertex-scene-tree-table-resize-divider": JSX.VertexSceneTreeTableResizeDivider;
        "vertex-scene-tree-toolbar": JSX.VertexSceneTreeToolbar;
        "vertex-scene-tree-toolbar-group": JSX.VertexSceneTreeToolbarGroup;
        "vertex-viewer": Omit<JSX.VertexViewer, keyof VertexViewerAttributes> & {
            cameraControls?: boolean;
            cameraType?: FrameCamera.FrameCameraType;
            clientId?: string;
            config?: string | Config;
            configEnv?: Environment;
            depthBuffers?: FrameType;
            deviceId?: string;
            enableTemporalRefinement?: boolean;
            experimentalRenderingOptions?: string;
            experimentalSkipVisibilityCheck?: boolean;
            featureMaps?: FrameType;
            keyboardControls?: boolean;
            noDefaultLights?: boolean;
            resizeDebounce?: number;
            rotateAroundTapPoint?: boolean;
            src?: string;
            token?: string;
        } & {
            "attr:cameraControls"?: boolean;
            "attr:cameraType"?: FrameCamera.FrameCameraType;
            "attr:clientId"?: string;
            "attr:config"?: string
            | Config;
            "attr:configEnv"?: Environment;
            "attr:depthBuffers"?: FrameType;
            "attr:deviceId"?: string;
            "attr:enableTemporalRefinement"?: boolean;
            "attr:experimentalRenderingOptions"?: string;
            "attr:experimentalSkipVisibilityCheck"?: boolean;
            "attr:featureMaps"?: FrameType;
            "attr:keyboardControls"?: boolean;
            "attr:noDefaultLights"?: boolean;
            "attr:resizeDebounce"?: number;
            "attr:rotateAroundTapPoint"?: boolean;
            "attr:src"?: string;
            "attr:token"?: string;
        } & {
            "prop:cameraControls"?: boolean;
            "prop:cameraType"?: FrameCamera.FrameCameraType;
            "prop:clientId"?: string;
            "prop:config"?: string
            | Config;
            "prop:configEnv"?: Environment;
            "prop:depthBuffers"?: FrameType;
            "prop:deviceId"?: string;
            "prop:enableTemporalRefinement"?: boolean;
            "prop:experimentalRenderingOptions"?: string;
            "prop:experimentalSkipVisibilityCheck"?: boolean;
            "prop:featureMaps"?: FrameType;
            "prop:keyboardControls"?: boolean;
            "prop:noDefaultLights"?: boolean;
            "prop:resizeDebounce"?: number;
            "prop:rotateAroundTapPoint"?: boolean;
            "prop:src"?: string;
            "prop:token"?: string;
        };
        "vertex-viewer-annotation-callout": Omit<
            JSX.VertexViewerAnnotationCallout,
            "iconSize",
        > & { iconSize?: ViewerIconSize } & { "attr:iconSize"?: ViewerIconSize } & {
            "prop:iconSize"?: ViewerIconSize;
        };
        "vertex-viewer-box-query-tool": Omit<
            JSX.VertexViewerBoxQueryTool,
            keyof VertexViewerBoxQueryToolAttributes,
        > & {
            mode?: VolumeIntersectionQueryMode;
            operationType?: VolumeIntersectionQueryType;
        } & {
            "attr:mode"?: VolumeIntersectionQueryMode;
            "attr:operationType"?: VolumeIntersectionQueryType;
        } & {
            "prop:mode"?: VolumeIntersectionQueryMode;
            "prop:operationType"?: VolumeIntersectionQueryType;
        };
        "vertex-viewer-button": JSX.VertexViewerButton;
        "vertex-viewer-default-toolbar": Omit<
            JSX.VertexViewerDefaultToolbar,
            keyof VertexViewerDefaultToolbarAttributes,
        > & {
            animationMs?: number;
            animationsDisabled?: boolean;
            direction?: ViewerToolbarGroupDirection;
            placement?: ViewerToolbarPlacement;
        } & {
            "attr:animationMs"?: number;
            "attr:animationsDisabled"?: boolean;
            "attr:direction"?: ViewerToolbarGroupDirection;
            "attr:placement"?: ViewerToolbarPlacement;
        } & {
            "prop:animationMs"?: number;
            "prop:animationsDisabled"?: boolean;
            "prop:direction"?: ViewerToolbarGroupDirection;
            "prop:placement"?: ViewerToolbarPlacement;
        };
        "vertex-viewer-dom-element": Omit<
            JSX.VertexViewerDomElement,
            keyof VertexViewerDomElementAttributes,
        > & {
            billboardOff?: boolean;
            detached?: boolean;
            detachedOff?: boolean;
            interactionsOff?: boolean;
            occluded?: boolean;
            occlusionOff?: boolean;
            positionJson?: string;
            quaternionJson?: string;
            rotationJson?: string;
            scaleJson?: string;
        } & {
            "attr:billboardOff"?: boolean;
            "attr:detached"?: boolean;
            "attr:detachedOff"?: boolean;
            "attr:interactionsOff"?: boolean;
            "attr:occluded"?: boolean;
            "attr:occlusionOff"?: boolean;
            "attr:positionJson"?: string;
            "attr:quaternionJson"?: string;
            "attr:rotationJson"?: string;
            "attr:scaleJson"?: string;
        } & {
            "prop:billboardOff"?: boolean;
            "prop:detached"?: boolean;
            "prop:detachedOff"?: boolean;
            "prop:interactionsOff"?: boolean;
            "prop:occluded"?: boolean;
            "prop:occlusionOff"?: boolean;
            "prop:positionJson"?: string;
            "prop:quaternionJson"?: string;
            "prop:rotationJson"?: string;
            "prop:scaleJson"?: string;
        };
        "vertex-viewer-dom-group": Omit<
            JSX.VertexViewerDomGroup,
            keyof VertexViewerDomGroupAttributes,
        > & {
            positionJson?: string;
            quaternionJson?: string;
            rotationJson?: string;
            scaleJson?: string;
        } & {
            "attr:positionJson"?: string;
            "attr:quaternionJson"?: string;
            "attr:rotationJson"?: string;
            "attr:scaleJson"?: string;
        } & {
            "prop:positionJson"?: string;
            "prop:quaternionJson"?: string;
            "prop:rotationJson"?: string;
            "prop:scaleJson"?: string;
        };
        "vertex-viewer-dom-renderer": Omit<
            JSX.VertexViewerDomRenderer,
            keyof VertexViewerDomRendererAttributes,
        > & {
            drawMode?: ViewerDomRendererDrawMode;
            propagateEventsToViewer?: boolean;
        } & {
            "attr:drawMode"?: ViewerDomRendererDrawMode;
            "attr:propagateEventsToViewer"?: boolean;
        } & {
            "prop:drawMode"?: ViewerDomRendererDrawMode;
            "prop:propagateEventsToViewer"?: boolean;
        };
        "vertex-viewer-hit-result-indicator": JSX.VertexViewerHitResultIndicator;
        "vertex-viewer-icon": Omit<
            JSX.VertexViewerIcon,
            keyof VertexViewerIconAttributes,
        > & { name?: ViewerIconName; size?: ViewerIconSize } & {
            "attr:name"?: ViewerIconName;
            "attr:size"?: ViewerIconSize;
        } & { "prop:name"?: ViewerIconName; "prop:size"?: ViewerIconSize };
        "vertex-viewer-layer": Omit<JSX.VertexViewerLayer, "stretchOff"> & {
            stretchOff?: boolean;
        } & { "attr:stretchOff"?: boolean } & { "prop:stretchOff"?: boolean };
        "vertex-viewer-markup": Omit<
            JSX.VertexViewerMarkup,
            keyof VertexViewerMarkupAttributes,
        > & {
            arrowTemplateId?: string;
            centeringBehavior?: MarkupCenteringBehavior;
            circleTemplateId?: string;
            disabled?: boolean;
            endLineAnchorStyle?: LineAnchorStyle;
            freeformTemplateId?: string;
            scale?: number;
            selectedMarkupId?: string;
            selectNew?: boolean;
            startLineAnchorStyle?: LineAnchorStyle;
            tool?: ViewerMarkupToolType;
        } & {
            "attr:arrowTemplateId"?: string;
            "attr:centeringBehavior"?: MarkupCenteringBehavior;
            "attr:circleTemplateId"?: string;
            "attr:disabled"?: boolean;
            "attr:endLineAnchorStyle"?: LineAnchorStyle;
            "attr:freeformTemplateId"?: string;
            "attr:scale"?: number;
            "attr:selectedMarkupId"?: string;
            "attr:selectNew"?: boolean;
            "attr:startLineAnchorStyle"?: LineAnchorStyle;
            "attr:tool"?: ViewerMarkupToolType;
        } & {
            "prop:arrowTemplateId"?: string;
            "prop:centeringBehavior"?: MarkupCenteringBehavior;
            "prop:circleTemplateId"?: string;
            "prop:disabled"?: boolean;
            "prop:endLineAnchorStyle"?: LineAnchorStyle;
            "prop:freeformTemplateId"?: string;
            "prop:scale"?: number;
            "prop:selectedMarkupId"?: string;
            "prop:selectNew"?: boolean;
            "prop:startLineAnchorStyle"?: LineAnchorStyle;
            "prop:tool"?: ViewerMarkupToolType;
        };
        "vertex-viewer-markup-arrow": Omit<
            JSX.VertexViewerMarkupArrow,
            keyof VertexViewerMarkupArrowAttributes,
        > & {
            centeringBehavior?: MarkupCenteringBehavior;
            endJson?: string;
            endLineAnchorStyle?: LineAnchorStyle;
            mode?: ViewerMarkupArrowMode;
            scale?: number;
            startJson?: string;
            startLineAnchorStyle?: LineAnchorStyle;
        } & {
            "attr:centeringBehavior"?: MarkupCenteringBehavior;
            "attr:endJson"?: string;
            "attr:endLineAnchorStyle"?: LineAnchorStyle;
            "attr:mode"?: ViewerMarkupArrowMode;
            "attr:scale"?: number;
            "attr:startJson"?: string;
            "attr:startLineAnchorStyle"?: LineAnchorStyle;
        } & {
            "prop:centeringBehavior"?: MarkupCenteringBehavior;
            "prop:endJson"?: string;
            "prop:endLineAnchorStyle"?: LineAnchorStyle;
            "prop:mode"?: ViewerMarkupArrowMode;
            "prop:scale"?: number;
            "prop:startJson"?: string;
            "prop:startLineAnchorStyle"?: LineAnchorStyle;
        };
        "vertex-viewer-markup-circle": Omit<
            JSX.VertexViewerMarkupCircle,
            keyof VertexViewerMarkupCircleAttributes,
        > & {
            boundsJson?: string;
            centeringBehavior?: MarkupCenteringBehavior;
            mode?: ViewerMarkupCircleMode;
            scale?: number;
        } & {
            "attr:boundsJson"?: string;
            "attr:centeringBehavior"?: MarkupCenteringBehavior;
            "attr:mode"?: ViewerMarkupCircleMode;
            "attr:scale"?: number;
        } & {
            "prop:boundsJson"?: string;
            "prop:centeringBehavior"?: MarkupCenteringBehavior;
            "prop:mode"?: ViewerMarkupCircleMode;
            "prop:scale"?: number;
        };
        "vertex-viewer-markup-freeform": Omit<
            JSX.VertexViewerMarkupFreeform,
            keyof VertexViewerMarkupFreeformAttributes,
        > & {
            boundsJson?: string;
            centeringBehavior?: MarkupCenteringBehavior;
            mode?: ViewerMarkupFreeformMode;
            pointsJson?: string;
            scale?: number;
        } & {
            "attr:boundsJson"?: string;
            "attr:centeringBehavior"?: MarkupCenteringBehavior;
            "attr:mode"?: ViewerMarkupFreeformMode;
            "attr:pointsJson"?: string;
            "attr:scale"?: number;
        } & {
            "prop:boundsJson"?: string;
            "prop:centeringBehavior"?: MarkupCenteringBehavior;
            "prop:mode"?: ViewerMarkupFreeformMode;
            "prop:pointsJson"?: string;
            "prop:scale"?: number;
        };
        "vertex-viewer-markup-tool": Omit<
            JSX.VertexViewerMarkupTool,
            keyof VertexViewerMarkupToolAttributes,
        > & {
            arrowTemplateId?: string;
            centeringBehavior?: MarkupCenteringBehavior;
            circleTemplateId?: string;
            disabled?: boolean;
            endLineAnchorStyle?: LineAnchorStyle;
            freeformTemplateId?: string;
            scale?: number;
            startLineAnchorStyle?: LineAnchorStyle;
            tool?: ViewerMarkupToolType;
        } & {
            "attr:arrowTemplateId"?: string;
            "attr:centeringBehavior"?: MarkupCenteringBehavior;
            "attr:circleTemplateId"?: string;
            "attr:disabled"?: boolean;
            "attr:endLineAnchorStyle"?: LineAnchorStyle;
            "attr:freeformTemplateId"?: string;
            "attr:scale"?: number;
            "attr:startLineAnchorStyle"?: LineAnchorStyle;
            "attr:tool"?: ViewerMarkupToolType;
        } & {
            "prop:arrowTemplateId"?: string;
            "prop:centeringBehavior"?: MarkupCenteringBehavior;
            "prop:circleTemplateId"?: string;
            "prop:disabled"?: boolean;
            "prop:endLineAnchorStyle"?: LineAnchorStyle;
            "prop:freeformTemplateId"?: string;
            "prop:scale"?: number;
            "prop:startLineAnchorStyle"?: LineAnchorStyle;
            "prop:tool"?: ViewerMarkupToolType;
        };
        "vertex-viewer-measurement-details": Omit<
            JSX.VertexViewerMeasurementDetails,
            keyof VertexViewerMeasurementDetailsAttributes,
        > & {
            angleUnits?: AngleUnitType;
            distanceUnits?: DistanceUnitType;
            fractionalDigits?: number;
        } & {
            "attr:angleUnits"?: AngleUnitType;
            "attr:distanceUnits"?: DistanceUnitType;
            "attr:fractionalDigits"?: number;
        } & {
            "prop:angleUnits"?: AngleUnitType;
            "prop:distanceUnits"?: DistanceUnitType;
            "prop:fractionalDigits"?: number;
        };
        "vertex-viewer-measurement-distance": Omit<
            JSX.VertexViewerMeasurementDistance,
            keyof VertexViewerMeasurementDistanceAttributes,
        > & {
            anchorLabelOffset?: number;
            distance?: number;
            endJson?: string;
            fractionalDigits?: number;
            interactingAnchor?: "none"
            | Anchor;
            invalid?: boolean;
            lineCapLength?: number;
            mode?: ViewerMeasurementDistanceMode;
            showAxisReferenceLines?: boolean;
            snapDistance?: number;
            startJson?: string;
            units?: DistanceUnitType;
        } & {
            "attr:anchorLabelOffset"?: number;
            "attr:distance"?: number;
            "attr:endJson"?: string;
            "attr:fractionalDigits"?: number;
            "attr:interactingAnchor"?: "none"
            | Anchor;
            "attr:invalid"?: boolean;
            "attr:lineCapLength"?: number;
            "attr:mode"?: ViewerMeasurementDistanceMode;
            "attr:showAxisReferenceLines"?: boolean;
            "attr:snapDistance"?: number;
            "attr:startJson"?: string;
            "attr:units"?: DistanceUnitType;
        } & {
            "prop:anchorLabelOffset"?: number;
            "prop:distance"?: number;
            "prop:endJson"?: string;
            "prop:fractionalDigits"?: number;
            "prop:interactingAnchor"?: "none"
            | Anchor;
            "prop:invalid"?: boolean;
            "prop:lineCapLength"?: number;
            "prop:mode"?: ViewerMeasurementDistanceMode;
            "prop:showAxisReferenceLines"?: boolean;
            "prop:snapDistance"?: number;
            "prop:startJson"?: string;
            "prop:units"?: DistanceUnitType;
        };
        "vertex-viewer-measurement-line": Omit<
            JSX.VertexViewerMeasurementLine,
            keyof VertexViewerMeasurementLineAttributes,
        > & { capLength?: number; pointerEvents?: string } & {
            "attr:capLength"?: number;
            "attr:pointerEvents"?: string;
        } & { "prop:capLength"?: number; "prop:pointerEvents"?: string };
        "vertex-viewer-measurement-overlays": JSX.VertexViewerMeasurementOverlays;
        "vertex-viewer-measurement-precise": Omit<
            JSX.VertexViewerMeasurementPrecise,
            keyof VertexViewerMeasurementPreciseAttributes,
        > & { config?: string
        | Config; configEnv?: Environment } & {
            "attr:config"?: string | Config;
            "attr:configEnv"?: Environment;
        } & { "prop:config"?: string
        | Config; "prop:configEnv"?: Environment };
        "vertex-viewer-pin-group": Omit<
            JSX.VertexViewerPinGroup,
            keyof VertexViewerPinGroupAttributes,
        > & { detached?: boolean; occluded?: boolean; selected?: boolean } & {
            "attr:detached"?: boolean;
            "attr:occluded"?: boolean;
            "attr:selected"?: boolean;
        } & {
            "prop:detached"?: boolean;
            "prop:occluded"?: boolean;
            "prop:selected"?: boolean;
        };
        "vertex-viewer-pin-label": Omit<JSX.VertexViewerPinLabel, "value"> & {
            value?: string;
        } & { "attr:value"?: string } & { "prop:value"?: string };
        "vertex-viewer-pin-label-line": JSX.VertexViewerPinLabelLine;
        "vertex-viewer-pin-tool": Omit<
            JSX.VertexViewerPinTool,
            keyof VertexViewerPinToolAttributes,
        > & {
            accentColor?: string
            | Color.Color;
            mode?: ViewerPinToolMode;
            primaryColor?: string | Color.Color;
            tool?: ViewerPinToolType;
        } & {
            "attr:accentColor"?: string
            | Color.Color;
            "attr:mode"?: ViewerPinToolMode;
            "attr:primaryColor"?: string | Color.Color;
            "attr:tool"?: ViewerPinToolType;
        } & {
            "prop:accentColor"?: string
            | Color.Color;
            "prop:mode"?: ViewerPinToolMode;
            "prop:primaryColor"?: string | Color.Color;
            "prop:tool"?: ViewerPinToolType;
        };
        "vertex-viewer-spinner": Omit<JSX.VertexViewerSpinner, "size"> & {
            size?: SpinnerSize;
        } & { "attr:size"?: SpinnerSize } & { "prop:size"?: SpinnerSize };
        "vertex-viewer-teleport-tool": Omit<
            JSX.VertexViewerTeleportTool,
            keyof VertexViewerTeleportToolAttributes,
        > & {
            animationMs?: number;
            animationsDisabled?: boolean;
            mode?: ViewerTeleportMode;
        } & {
            "attr:animationMs"?: number;
            "attr:animationsDisabled"?: boolean;
            "attr:mode"?: ViewerTeleportMode;
        } & {
            "prop:animationMs"?: number;
            "prop:animationsDisabled"?: boolean;
            "prop:mode"?: ViewerTeleportMode;
        };
        "vertex-viewer-toolbar": Omit<
            JSX.VertexViewerToolbar,
            keyof VertexViewerToolbarAttributes,
        > & {
            direction?: ViewerToolbarDirection;
            placement?: ViewerToolbarPlacement;
        } & {
            "attr:direction"?: ViewerToolbarDirection;
            "attr:placement"?: ViewerToolbarPlacement;
        } & {
            "prop:direction"?: ViewerToolbarDirection;
            "prop:placement"?: ViewerToolbarPlacement;
        };
        "vertex-viewer-toolbar-group": Omit<
            JSX.VertexViewerToolbarGroup,
            "direction",
        > & { direction?: ViewerToolbarGroupDirection } & {
            "attr:direction"?: ViewerToolbarGroupDirection;
        } & { "prop:direction"?: ViewerToolbarGroupDirection };
        "vertex-viewer-transform-widget": Omit<
            JSX.VertexViewerTransformWidget,
            keyof VertexViewerTransformWidgetAttributes,
        > & {
            angleUnit?: AngleUnitType;
            decimalPlaces?: number;
            distanceUnit?: DistanceUnitType;
            EXPERIMENTAL_undoKeybindings?: boolean;
            interactionThrottle?: number;
            rotationHandleScalar?: number;
            rotationSnapDegrees?: number;
            rotationSnapKey?: ModifierKey;
            showInputs?: boolean;
            translationHandleScalar?: number;
            xRotationDisabled?: boolean;
            xTranslationDisabled?: boolean;
            xyTranslationDisabled?: boolean;
            xzTranslationDisabled?: boolean;
            yRotationDisabled?: boolean;
            yTranslationDisabled?: boolean;
            yzTranslationDisabled?: boolean;
            zRotationDisabled?: boolean;
            zTranslationDisabled?: boolean;
        } & {
            "attr:angleUnit"?: AngleUnitType;
            "attr:decimalPlaces"?: number;
            "attr:distanceUnit"?: DistanceUnitType;
            "attr:EXPERIMENTAL_undoKeybindings"?: boolean;
            "attr:interactionThrottle"?: number;
            "attr:rotationHandleScalar"?: number;
            "attr:rotationSnapDegrees"?: number;
            "attr:rotationSnapKey"?: ModifierKey;
            "attr:showInputs"?: boolean;
            "attr:translationHandleScalar"?: number;
            "attr:xRotationDisabled"?: boolean;
            "attr:xTranslationDisabled"?: boolean;
            "attr:xyTranslationDisabled"?: boolean;
            "attr:xzTranslationDisabled"?: boolean;
            "attr:yRotationDisabled"?: boolean;
            "attr:yTranslationDisabled"?: boolean;
            "attr:yzTranslationDisabled"?: boolean;
            "attr:zRotationDisabled"?: boolean;
            "attr:zTranslationDisabled"?: boolean;
        } & {
            "prop:angleUnit"?: AngleUnitType;
            "prop:decimalPlaces"?: number;
            "prop:distanceUnit"?: DistanceUnitType;
            "prop:EXPERIMENTAL_undoKeybindings"?: boolean;
            "prop:interactionThrottle"?: number;
            "prop:rotationHandleScalar"?: number;
            "prop:rotationSnapDegrees"?: number;
            "prop:rotationSnapKey"?: ModifierKey;
            "prop:showInputs"?: boolean;
            "prop:translationHandleScalar"?: number;
            "prop:xRotationDisabled"?: boolean;
            "prop:xTranslationDisabled"?: boolean;
            "prop:xyTranslationDisabled"?: boolean;
            "prop:xzTranslationDisabled"?: boolean;
            "prop:yRotationDisabled"?: boolean;
            "prop:yTranslationDisabled"?: boolean;
            "prop:yzTranslationDisabled"?: boolean;
            "prop:zRotationDisabled"?: boolean;
            "prop:zTranslationDisabled"?: boolean;
        };
        "vertex-viewer-view-cube": Omit<
            JSX.VertexViewerViewCube,
            keyof VertexViewerViewCubeAttributes,
        > & {
            animationDuration?: number;
            standardViewsOff?: boolean;
            triadOff?: boolean;
            viewAll?: boolean;
            xNegativeLabel?: string;
            xPositiveLabel?: string;
            yNegativeLabel?: string;
            yPositiveLabel?: string;
            zNegativeLabel?: string;
            zPositiveLabel?: string;
        } & {
            "attr:animationDuration"?: number;
            "attr:standardViewsOff"?: boolean;
            "attr:triadOff"?: boolean;
            "attr:viewAll"?: boolean;
            "attr:xNegativeLabel"?: string;
            "attr:xPositiveLabel"?: string;
            "attr:yNegativeLabel"?: string;
            "attr:yPositiveLabel"?: string;
            "attr:zNegativeLabel"?: string;
            "attr:zPositiveLabel"?: string;
        } & {
            "prop:animationDuration"?: number;
            "prop:standardViewsOff"?: boolean;
            "prop:triadOff"?: boolean;
            "prop:viewAll"?: boolean;
            "prop:xNegativeLabel"?: string;
            "prop:xPositiveLabel"?: string;
            "prop:yNegativeLabel"?: string;
            "prop:yPositiveLabel"?: string;
            "prop:zNegativeLabel"?: string;
            "prop:zPositiveLabel"?: string;
        };
        "vertex-viewer-walk-mode-tool": Omit<
            JSX.VertexViewerWalkModeTool,
            keyof VertexViewerWalkModeToolAttributes,
        > & { enabled?: boolean; teleportMode?: ViewerTeleportMode } & {
            "attr:enabled"?: boolean;
            "attr:teleportMode"?: ViewerTeleportMode;
        } & { "prop:enabled"?: boolean; "prop:teleportMode"?: ViewerTeleportMode };
    }
    Index
    "vertex-scene-tree": Omit<JSX.VertexSceneTree, keyof VertexSceneTreeAttributes> & {
        config?: string | Config;
        configEnv?: Environment;
        metadataSearchExactMatch?: boolean;
        operationAnimationDuration?: number;
        overScanCount?: number;
        viewerSelector?: string;
    } & {
        "attr:config"?: string
        | Config;
        "attr:configEnv"?: Environment;
        "attr:metadataSearchExactMatch"?: boolean;
        "attr:operationAnimationDuration"?: number;
        "attr:overScanCount"?: number;
        "attr:viewerSelector"?: string;
    } & {
        "prop:config"?: string
        | Config;
        "prop:configEnv"?: Environment;
        "prop:metadataSearchExactMatch"?: boolean;
        "prop:operationAnimationDuration"?: number;
        "prop:overScanCount"?: number;
        "prop:viewerSelector"?: string;
    }
    "vertex-scene-tree-notification-banner": Omit<
        JSX.VertexSceneTreeNotificationBanner,
        keyof VertexSceneTreeNotificationBannerAttributes,
    > & { actionLabel?: string; message?: string } & {
        "attr:actionLabel"?: string;
        "attr:message"?: string;
    } & { "prop:actionLabel"?: string; "prop:message"?: string }
    "vertex-scene-tree-search": Omit<
        JSX.VertexSceneTreeSearch,
        keyof VertexSceneTreeSearchAttributes,
    > & {
        debounce?: number;
        disabled?: boolean;
        placeholder?: string;
        value?: string;
    } & {
        "attr:debounce"?: number;
        "attr:disabled"?: boolean;
        "attr:placeholder"?: string;
        "attr:value"?: string;
    } & {
        "prop:debounce"?: number;
        "prop:disabled"?: boolean;
        "prop:placeholder"?: string;
        "prop:value"?: string;
    }
    "vertex-scene-tree-table-cell": Omit<
        JSX.VertexSceneTreeTableCell,
        keyof VertexSceneTreeTableCellAttributes,
    > & {
        alwaysShowIcons?: boolean;
        endItemIndicator?: boolean;
        expandToggle?: boolean;
        hovered?: boolean;
        isolateButton?: boolean;
        isScrolling?: boolean;
        placeholder?: string;
        value?: string;
        visibilityToggle?: boolean;
    } & {
        "attr:alwaysShowIcons"?: boolean;
        "attr:endItemIndicator"?: boolean;
        "attr:expandToggle"?: boolean;
        "attr:hovered"?: boolean;
        "attr:isolateButton"?: boolean;
        "attr:isScrolling"?: boolean;
        "attr:placeholder"?: string;
        "attr:value"?: string;
        "attr:visibilityToggle"?: boolean;
    } & {
        "prop:alwaysShowIcons"?: boolean;
        "prop:endItemIndicator"?: boolean;
        "prop:expandToggle"?: boolean;
        "prop:hovered"?: boolean;
        "prop:isolateButton"?: boolean;
        "prop:isScrolling"?: boolean;
        "prop:placeholder"?: string;
        "prop:value"?: string;
        "prop:visibilityToggle"?: boolean;
    }
    "vertex-scene-tree-table-column": Omit<
        JSX.VertexSceneTreeTableColumn,
        keyof VertexSceneTreeTableColumnAttributes,
    > & { initialWidth?: number; maxWidth?: number; minWidth?: number } & {
        "attr:initialWidth"?: number;
        "attr:maxWidth"?: number;
        "attr:minWidth"?: number;
    } & {
        "prop:initialWidth"?: number;
        "prop:maxWidth"?: number;
        "prop:minWidth"?: number;
    }
    "vertex-scene-tree-table-header": JSX.VertexSceneTreeTableHeader
    "vertex-scene-tree-table-layout": Omit<
        JSX.VertexSceneTreeTableLayout,
        keyof VertexSceneTreeTableLayoutAttributes,
    > & {
        layoutHeight?: number;
        layoutOffset?: number;
        layoutWidth?: number;
        overScanCount?: number;
        rowHeight?: number;
        scrollOffset?: number;
        totalRows?: number;
        viewportEndIndex?: number;
        viewportStartIndex?: number;
    } & {
        "attr:layoutHeight"?: number;
        "attr:layoutOffset"?: number;
        "attr:layoutWidth"?: number;
        "attr:overScanCount"?: number;
        "attr:rowHeight"?: number;
        "attr:scrollOffset"?: number;
        "attr:totalRows"?: number;
        "attr:viewportEndIndex"?: number;
        "attr:viewportStartIndex"?: number;
    } & {
        "prop:layoutHeight"?: number;
        "prop:layoutOffset"?: number;
        "prop:layoutWidth"?: number;
        "prop:overScanCount"?: number;
        "prop:rowHeight"?: number;
        "prop:scrollOffset"?: number;
        "prop:totalRows"?: number;
        "prop:viewportEndIndex"?: number;
        "prop:viewportStartIndex"?: number;
    }
    "vertex-scene-tree-table-resize-divider": JSX.VertexSceneTreeTableResizeDivider
    "vertex-scene-tree-toolbar": JSX.VertexSceneTreeToolbar
    "vertex-scene-tree-toolbar-group": JSX.VertexSceneTreeToolbarGroup
    "vertex-viewer": Omit<JSX.VertexViewer, keyof VertexViewerAttributes> & {
        cameraControls?: boolean;
        cameraType?: FrameCamera.FrameCameraType;
        clientId?: string;
        config?: string | Config;
        configEnv?: Environment;
        depthBuffers?: FrameType;
        deviceId?: string;
        enableTemporalRefinement?: boolean;
        experimentalRenderingOptions?: string;
        experimentalSkipVisibilityCheck?: boolean;
        featureMaps?: FrameType;
        keyboardControls?: boolean;
        noDefaultLights?: boolean;
        resizeDebounce?: number;
        rotateAroundTapPoint?: boolean;
        src?: string;
        token?: string;
    } & {
        "attr:cameraControls"?: boolean;
        "attr:cameraType"?: FrameCamera.FrameCameraType;
        "attr:clientId"?: string;
        "attr:config"?: string
        | Config;
        "attr:configEnv"?: Environment;
        "attr:depthBuffers"?: FrameType;
        "attr:deviceId"?: string;
        "attr:enableTemporalRefinement"?: boolean;
        "attr:experimentalRenderingOptions"?: string;
        "attr:experimentalSkipVisibilityCheck"?: boolean;
        "attr:featureMaps"?: FrameType;
        "attr:keyboardControls"?: boolean;
        "attr:noDefaultLights"?: boolean;
        "attr:resizeDebounce"?: number;
        "attr:rotateAroundTapPoint"?: boolean;
        "attr:src"?: string;
        "attr:token"?: string;
    } & {
        "prop:cameraControls"?: boolean;
        "prop:cameraType"?: FrameCamera.FrameCameraType;
        "prop:clientId"?: string;
        "prop:config"?: string
        | Config;
        "prop:configEnv"?: Environment;
        "prop:depthBuffers"?: FrameType;
        "prop:deviceId"?: string;
        "prop:enableTemporalRefinement"?: boolean;
        "prop:experimentalRenderingOptions"?: string;
        "prop:experimentalSkipVisibilityCheck"?: boolean;
        "prop:featureMaps"?: FrameType;
        "prop:keyboardControls"?: boolean;
        "prop:noDefaultLights"?: boolean;
        "prop:resizeDebounce"?: number;
        "prop:rotateAroundTapPoint"?: boolean;
        "prop:src"?: string;
        "prop:token"?: string;
    }
    "vertex-viewer-annotation-callout": Omit<
        JSX.VertexViewerAnnotationCallout,
        "iconSize",
    > & { iconSize?: ViewerIconSize } & { "attr:iconSize"?: ViewerIconSize } & {
        "prop:iconSize"?: ViewerIconSize;
    }
    "vertex-viewer-box-query-tool": Omit<
        JSX.VertexViewerBoxQueryTool,
        keyof VertexViewerBoxQueryToolAttributes,
    > & {
        mode?: VolumeIntersectionQueryMode;
        operationType?: VolumeIntersectionQueryType;
    } & {
        "attr:mode"?: VolumeIntersectionQueryMode;
        "attr:operationType"?: VolumeIntersectionQueryType;
    } & {
        "prop:mode"?: VolumeIntersectionQueryMode;
        "prop:operationType"?: VolumeIntersectionQueryType;
    }
    "vertex-viewer-button": JSX.VertexViewerButton
    "vertex-viewer-default-toolbar": Omit<
        JSX.VertexViewerDefaultToolbar,
        keyof VertexViewerDefaultToolbarAttributes,
    > & {
        animationMs?: number;
        animationsDisabled?: boolean;
        direction?: ViewerToolbarGroupDirection;
        placement?: ViewerToolbarPlacement;
    } & {
        "attr:animationMs"?: number;
        "attr:animationsDisabled"?: boolean;
        "attr:direction"?: ViewerToolbarGroupDirection;
        "attr:placement"?: ViewerToolbarPlacement;
    } & {
        "prop:animationMs"?: number;
        "prop:animationsDisabled"?: boolean;
        "prop:direction"?: ViewerToolbarGroupDirection;
        "prop:placement"?: ViewerToolbarPlacement;
    }
    "vertex-viewer-dom-element": Omit<
        JSX.VertexViewerDomElement,
        keyof VertexViewerDomElementAttributes,
    > & {
        billboardOff?: boolean;
        detached?: boolean;
        detachedOff?: boolean;
        interactionsOff?: boolean;
        occluded?: boolean;
        occlusionOff?: boolean;
        positionJson?: string;
        quaternionJson?: string;
        rotationJson?: string;
        scaleJson?: string;
    } & {
        "attr:billboardOff"?: boolean;
        "attr:detached"?: boolean;
        "attr:detachedOff"?: boolean;
        "attr:interactionsOff"?: boolean;
        "attr:occluded"?: boolean;
        "attr:occlusionOff"?: boolean;
        "attr:positionJson"?: string;
        "attr:quaternionJson"?: string;
        "attr:rotationJson"?: string;
        "attr:scaleJson"?: string;
    } & {
        "prop:billboardOff"?: boolean;
        "prop:detached"?: boolean;
        "prop:detachedOff"?: boolean;
        "prop:interactionsOff"?: boolean;
        "prop:occluded"?: boolean;
        "prop:occlusionOff"?: boolean;
        "prop:positionJson"?: string;
        "prop:quaternionJson"?: string;
        "prop:rotationJson"?: string;
        "prop:scaleJson"?: string;
    }
    "vertex-viewer-dom-group": Omit<
        JSX.VertexViewerDomGroup,
        keyof VertexViewerDomGroupAttributes,
    > & {
        positionJson?: string;
        quaternionJson?: string;
        rotationJson?: string;
        scaleJson?: string;
    } & {
        "attr:positionJson"?: string;
        "attr:quaternionJson"?: string;
        "attr:rotationJson"?: string;
        "attr:scaleJson"?: string;
    } & {
        "prop:positionJson"?: string;
        "prop:quaternionJson"?: string;
        "prop:rotationJson"?: string;
        "prop:scaleJson"?: string;
    }
    "vertex-viewer-dom-renderer": Omit<
        JSX.VertexViewerDomRenderer,
        keyof VertexViewerDomRendererAttributes,
    > & {
        drawMode?: ViewerDomRendererDrawMode;
        propagateEventsToViewer?: boolean;
    } & {
        "attr:drawMode"?: ViewerDomRendererDrawMode;
        "attr:propagateEventsToViewer"?: boolean;
    } & {
        "prop:drawMode"?: ViewerDomRendererDrawMode;
        "prop:propagateEventsToViewer"?: boolean;
    }
    "vertex-viewer-hit-result-indicator": JSX.VertexViewerHitResultIndicator
    "vertex-viewer-icon": Omit<
        JSX.VertexViewerIcon,
        keyof VertexViewerIconAttributes,
    > & { name?: ViewerIconName; size?: ViewerIconSize } & {
        "attr:name"?: ViewerIconName;
        "attr:size"?: ViewerIconSize;
    } & { "prop:name"?: ViewerIconName; "prop:size"?: ViewerIconSize }
    "vertex-viewer-layer": Omit<JSX.VertexViewerLayer, "stretchOff"> & {
        stretchOff?: boolean;
    } & { "attr:stretchOff"?: boolean } & { "prop:stretchOff"?: boolean }
    "vertex-viewer-markup": Omit<
        JSX.VertexViewerMarkup,
        keyof VertexViewerMarkupAttributes,
    > & {
        arrowTemplateId?: string;
        centeringBehavior?: MarkupCenteringBehavior;
        circleTemplateId?: string;
        disabled?: boolean;
        endLineAnchorStyle?: LineAnchorStyle;
        freeformTemplateId?: string;
        scale?: number;
        selectedMarkupId?: string;
        selectNew?: boolean;
        startLineAnchorStyle?: LineAnchorStyle;
        tool?: ViewerMarkupToolType;
    } & {
        "attr:arrowTemplateId"?: string;
        "attr:centeringBehavior"?: MarkupCenteringBehavior;
        "attr:circleTemplateId"?: string;
        "attr:disabled"?: boolean;
        "attr:endLineAnchorStyle"?: LineAnchorStyle;
        "attr:freeformTemplateId"?: string;
        "attr:scale"?: number;
        "attr:selectedMarkupId"?: string;
        "attr:selectNew"?: boolean;
        "attr:startLineAnchorStyle"?: LineAnchorStyle;
        "attr:tool"?: ViewerMarkupToolType;
    } & {
        "prop:arrowTemplateId"?: string;
        "prop:centeringBehavior"?: MarkupCenteringBehavior;
        "prop:circleTemplateId"?: string;
        "prop:disabled"?: boolean;
        "prop:endLineAnchorStyle"?: LineAnchorStyle;
        "prop:freeformTemplateId"?: string;
        "prop:scale"?: number;
        "prop:selectedMarkupId"?: string;
        "prop:selectNew"?: boolean;
        "prop:startLineAnchorStyle"?: LineAnchorStyle;
        "prop:tool"?: ViewerMarkupToolType;
    }
    "vertex-viewer-markup-arrow": Omit<
        JSX.VertexViewerMarkupArrow,
        keyof VertexViewerMarkupArrowAttributes,
    > & {
        centeringBehavior?: MarkupCenteringBehavior;
        endJson?: string;
        endLineAnchorStyle?: LineAnchorStyle;
        mode?: ViewerMarkupArrowMode;
        scale?: number;
        startJson?: string;
        startLineAnchorStyle?: LineAnchorStyle;
    } & {
        "attr:centeringBehavior"?: MarkupCenteringBehavior;
        "attr:endJson"?: string;
        "attr:endLineAnchorStyle"?: LineAnchorStyle;
        "attr:mode"?: ViewerMarkupArrowMode;
        "attr:scale"?: number;
        "attr:startJson"?: string;
        "attr:startLineAnchorStyle"?: LineAnchorStyle;
    } & {
        "prop:centeringBehavior"?: MarkupCenteringBehavior;
        "prop:endJson"?: string;
        "prop:endLineAnchorStyle"?: LineAnchorStyle;
        "prop:mode"?: ViewerMarkupArrowMode;
        "prop:scale"?: number;
        "prop:startJson"?: string;
        "prop:startLineAnchorStyle"?: LineAnchorStyle;
    }
    "vertex-viewer-markup-circle": Omit<
        JSX.VertexViewerMarkupCircle,
        keyof VertexViewerMarkupCircleAttributes,
    > & {
        boundsJson?: string;
        centeringBehavior?: MarkupCenteringBehavior;
        mode?: ViewerMarkupCircleMode;
        scale?: number;
    } & {
        "attr:boundsJson"?: string;
        "attr:centeringBehavior"?: MarkupCenteringBehavior;
        "attr:mode"?: ViewerMarkupCircleMode;
        "attr:scale"?: number;
    } & {
        "prop:boundsJson"?: string;
        "prop:centeringBehavior"?: MarkupCenteringBehavior;
        "prop:mode"?: ViewerMarkupCircleMode;
        "prop:scale"?: number;
    }
    "vertex-viewer-markup-freeform": Omit<
        JSX.VertexViewerMarkupFreeform,
        keyof VertexViewerMarkupFreeformAttributes,
    > & {
        boundsJson?: string;
        centeringBehavior?: MarkupCenteringBehavior;
        mode?: ViewerMarkupFreeformMode;
        pointsJson?: string;
        scale?: number;
    } & {
        "attr:boundsJson"?: string;
        "attr:centeringBehavior"?: MarkupCenteringBehavior;
        "attr:mode"?: ViewerMarkupFreeformMode;
        "attr:pointsJson"?: string;
        "attr:scale"?: number;
    } & {
        "prop:boundsJson"?: string;
        "prop:centeringBehavior"?: MarkupCenteringBehavior;
        "prop:mode"?: ViewerMarkupFreeformMode;
        "prop:pointsJson"?: string;
        "prop:scale"?: number;
    }
    "vertex-viewer-markup-tool": Omit<
        JSX.VertexViewerMarkupTool,
        keyof VertexViewerMarkupToolAttributes,
    > & {
        arrowTemplateId?: string;
        centeringBehavior?: MarkupCenteringBehavior;
        circleTemplateId?: string;
        disabled?: boolean;
        endLineAnchorStyle?: LineAnchorStyle;
        freeformTemplateId?: string;
        scale?: number;
        startLineAnchorStyle?: LineAnchorStyle;
        tool?: ViewerMarkupToolType;
    } & {
        "attr:arrowTemplateId"?: string;
        "attr:centeringBehavior"?: MarkupCenteringBehavior;
        "attr:circleTemplateId"?: string;
        "attr:disabled"?: boolean;
        "attr:endLineAnchorStyle"?: LineAnchorStyle;
        "attr:freeformTemplateId"?: string;
        "attr:scale"?: number;
        "attr:startLineAnchorStyle"?: LineAnchorStyle;
        "attr:tool"?: ViewerMarkupToolType;
    } & {
        "prop:arrowTemplateId"?: string;
        "prop:centeringBehavior"?: MarkupCenteringBehavior;
        "prop:circleTemplateId"?: string;
        "prop:disabled"?: boolean;
        "prop:endLineAnchorStyle"?: LineAnchorStyle;
        "prop:freeformTemplateId"?: string;
        "prop:scale"?: number;
        "prop:startLineAnchorStyle"?: LineAnchorStyle;
        "prop:tool"?: ViewerMarkupToolType;
    }
    "vertex-viewer-measurement-details": Omit<
        JSX.VertexViewerMeasurementDetails,
        keyof VertexViewerMeasurementDetailsAttributes,
    > & {
        angleUnits?: AngleUnitType;
        distanceUnits?: DistanceUnitType;
        fractionalDigits?: number;
    } & {
        "attr:angleUnits"?: AngleUnitType;
        "attr:distanceUnits"?: DistanceUnitType;
        "attr:fractionalDigits"?: number;
    } & {
        "prop:angleUnits"?: AngleUnitType;
        "prop:distanceUnits"?: DistanceUnitType;
        "prop:fractionalDigits"?: number;
    }
    "vertex-viewer-measurement-distance": Omit<
        JSX.VertexViewerMeasurementDistance,
        keyof VertexViewerMeasurementDistanceAttributes,
    > & {
        anchorLabelOffset?: number;
        distance?: number;
        endJson?: string;
        fractionalDigits?: number;
        interactingAnchor?: "none"
        | Anchor;
        invalid?: boolean;
        lineCapLength?: number;
        mode?: ViewerMeasurementDistanceMode;
        showAxisReferenceLines?: boolean;
        snapDistance?: number;
        startJson?: string;
        units?: DistanceUnitType;
    } & {
        "attr:anchorLabelOffset"?: number;
        "attr:distance"?: number;
        "attr:endJson"?: string;
        "attr:fractionalDigits"?: number;
        "attr:interactingAnchor"?: "none"
        | Anchor;
        "attr:invalid"?: boolean;
        "attr:lineCapLength"?: number;
        "attr:mode"?: ViewerMeasurementDistanceMode;
        "attr:showAxisReferenceLines"?: boolean;
        "attr:snapDistance"?: number;
        "attr:startJson"?: string;
        "attr:units"?: DistanceUnitType;
    } & {
        "prop:anchorLabelOffset"?: number;
        "prop:distance"?: number;
        "prop:endJson"?: string;
        "prop:fractionalDigits"?: number;
        "prop:interactingAnchor"?: "none"
        | Anchor;
        "prop:invalid"?: boolean;
        "prop:lineCapLength"?: number;
        "prop:mode"?: ViewerMeasurementDistanceMode;
        "prop:showAxisReferenceLines"?: boolean;
        "prop:snapDistance"?: number;
        "prop:startJson"?: string;
        "prop:units"?: DistanceUnitType;
    }
    "vertex-viewer-measurement-line": Omit<
        JSX.VertexViewerMeasurementLine,
        keyof VertexViewerMeasurementLineAttributes,
    > & { capLength?: number; pointerEvents?: string } & {
        "attr:capLength"?: number;
        "attr:pointerEvents"?: string;
    } & { "prop:capLength"?: number; "prop:pointerEvents"?: string }
    "vertex-viewer-measurement-overlays": JSX.VertexViewerMeasurementOverlays
    "vertex-viewer-measurement-precise": Omit<
        JSX.VertexViewerMeasurementPrecise,
        keyof VertexViewerMeasurementPreciseAttributes,
    > & { config?: string
    | Config; configEnv?: Environment } & {
        "attr:config"?: string | Config;
        "attr:configEnv"?: Environment;
    } & { "prop:config"?: string
    | Config; "prop:configEnv"?: Environment }
    "vertex-viewer-pin-group": Omit<
        JSX.VertexViewerPinGroup,
        keyof VertexViewerPinGroupAttributes,
    > & { detached?: boolean; occluded?: boolean; selected?: boolean } & {
        "attr:detached"?: boolean;
        "attr:occluded"?: boolean;
        "attr:selected"?: boolean;
    } & {
        "prop:detached"?: boolean;
        "prop:occluded"?: boolean;
        "prop:selected"?: boolean;
    }
    "vertex-viewer-pin-label": Omit<JSX.VertexViewerPinLabel, "value"> & {
        value?: string;
    } & { "attr:value"?: string } & { "prop:value"?: string }
    "vertex-viewer-pin-label-line": JSX.VertexViewerPinLabelLine
    "vertex-viewer-pin-tool": Omit<
        JSX.VertexViewerPinTool,
        keyof VertexViewerPinToolAttributes,
    > & {
        accentColor?: string
        | Color.Color;
        mode?: ViewerPinToolMode;
        primaryColor?: string | Color.Color;
        tool?: ViewerPinToolType;
    } & {
        "attr:accentColor"?: string
        | Color.Color;
        "attr:mode"?: ViewerPinToolMode;
        "attr:primaryColor"?: string | Color.Color;
        "attr:tool"?: ViewerPinToolType;
    } & {
        "prop:accentColor"?: string
        | Color.Color;
        "prop:mode"?: ViewerPinToolMode;
        "prop:primaryColor"?: string | Color.Color;
        "prop:tool"?: ViewerPinToolType;
    }
    "vertex-viewer-spinner": Omit<JSX.VertexViewerSpinner, "size"> & {
        size?: SpinnerSize;
    } & { "attr:size"?: SpinnerSize } & { "prop:size"?: SpinnerSize }
    "vertex-viewer-teleport-tool": Omit<
        JSX.VertexViewerTeleportTool,
        keyof VertexViewerTeleportToolAttributes,
    > & {
        animationMs?: number;
        animationsDisabled?: boolean;
        mode?: ViewerTeleportMode;
    } & {
        "attr:animationMs"?: number;
        "attr:animationsDisabled"?: boolean;
        "attr:mode"?: ViewerTeleportMode;
    } & {
        "prop:animationMs"?: number;
        "prop:animationsDisabled"?: boolean;
        "prop:mode"?: ViewerTeleportMode;
    }
    "vertex-viewer-toolbar": Omit<
        JSX.VertexViewerToolbar,
        keyof VertexViewerToolbarAttributes,
    > & {
        direction?: ViewerToolbarDirection;
        placement?: ViewerToolbarPlacement;
    } & {
        "attr:direction"?: ViewerToolbarDirection;
        "attr:placement"?: ViewerToolbarPlacement;
    } & {
        "prop:direction"?: ViewerToolbarDirection;
        "prop:placement"?: ViewerToolbarPlacement;
    }
    "vertex-viewer-toolbar-group": Omit<JSX.VertexViewerToolbarGroup, "direction"> & {
        direction?: ViewerToolbarGroupDirection;
    } & { "attr:direction"?: ViewerToolbarGroupDirection } & {
        "prop:direction"?: ViewerToolbarGroupDirection;
    }
    "vertex-viewer-transform-widget": Omit<
        JSX.VertexViewerTransformWidget,
        keyof VertexViewerTransformWidgetAttributes,
    > & {
        angleUnit?: AngleUnitType;
        decimalPlaces?: number;
        distanceUnit?: DistanceUnitType;
        EXPERIMENTAL_undoKeybindings?: boolean;
        interactionThrottle?: number;
        rotationHandleScalar?: number;
        rotationSnapDegrees?: number;
        rotationSnapKey?: ModifierKey;
        showInputs?: boolean;
        translationHandleScalar?: number;
        xRotationDisabled?: boolean;
        xTranslationDisabled?: boolean;
        xyTranslationDisabled?: boolean;
        xzTranslationDisabled?: boolean;
        yRotationDisabled?: boolean;
        yTranslationDisabled?: boolean;
        yzTranslationDisabled?: boolean;
        zRotationDisabled?: boolean;
        zTranslationDisabled?: boolean;
    } & {
        "attr:angleUnit"?: AngleUnitType;
        "attr:decimalPlaces"?: number;
        "attr:distanceUnit"?: DistanceUnitType;
        "attr:EXPERIMENTAL_undoKeybindings"?: boolean;
        "attr:interactionThrottle"?: number;
        "attr:rotationHandleScalar"?: number;
        "attr:rotationSnapDegrees"?: number;
        "attr:rotationSnapKey"?: ModifierKey;
        "attr:showInputs"?: boolean;
        "attr:translationHandleScalar"?: number;
        "attr:xRotationDisabled"?: boolean;
        "attr:xTranslationDisabled"?: boolean;
        "attr:xyTranslationDisabled"?: boolean;
        "attr:xzTranslationDisabled"?: boolean;
        "attr:yRotationDisabled"?: boolean;
        "attr:yTranslationDisabled"?: boolean;
        "attr:yzTranslationDisabled"?: boolean;
        "attr:zRotationDisabled"?: boolean;
        "attr:zTranslationDisabled"?: boolean;
    } & {
        "prop:angleUnit"?: AngleUnitType;
        "prop:decimalPlaces"?: number;
        "prop:distanceUnit"?: DistanceUnitType;
        "prop:EXPERIMENTAL_undoKeybindings"?: boolean;
        "prop:interactionThrottle"?: number;
        "prop:rotationHandleScalar"?: number;
        "prop:rotationSnapDegrees"?: number;
        "prop:rotationSnapKey"?: ModifierKey;
        "prop:showInputs"?: boolean;
        "prop:translationHandleScalar"?: number;
        "prop:xRotationDisabled"?: boolean;
        "prop:xTranslationDisabled"?: boolean;
        "prop:xyTranslationDisabled"?: boolean;
        "prop:xzTranslationDisabled"?: boolean;
        "prop:yRotationDisabled"?: boolean;
        "prop:yTranslationDisabled"?: boolean;
        "prop:yzTranslationDisabled"?: boolean;
        "prop:zRotationDisabled"?: boolean;
        "prop:zTranslationDisabled"?: boolean;
    }
    "vertex-viewer-view-cube": Omit<
        JSX.VertexViewerViewCube,
        keyof VertexViewerViewCubeAttributes,
    > & {
        animationDuration?: number;
        standardViewsOff?: boolean;
        triadOff?: boolean;
        viewAll?: boolean;
        xNegativeLabel?: string;
        xPositiveLabel?: string;
        yNegativeLabel?: string;
        yPositiveLabel?: string;
        zNegativeLabel?: string;
        zPositiveLabel?: string;
    } & {
        "attr:animationDuration"?: number;
        "attr:standardViewsOff"?: boolean;
        "attr:triadOff"?: boolean;
        "attr:viewAll"?: boolean;
        "attr:xNegativeLabel"?: string;
        "attr:xPositiveLabel"?: string;
        "attr:yNegativeLabel"?: string;
        "attr:yPositiveLabel"?: string;
        "attr:zNegativeLabel"?: string;
        "attr:zPositiveLabel"?: string;
    } & {
        "prop:animationDuration"?: number;
        "prop:standardViewsOff"?: boolean;
        "prop:triadOff"?: boolean;
        "prop:viewAll"?: boolean;
        "prop:xNegativeLabel"?: string;
        "prop:xPositiveLabel"?: string;
        "prop:yNegativeLabel"?: string;
        "prop:yPositiveLabel"?: string;
        "prop:zNegativeLabel"?: string;
        "prop:zPositiveLabel"?: string;
    }
    "vertex-viewer-walk-mode-tool": Omit<
        JSX.VertexViewerWalkModeTool,
        keyof VertexViewerWalkModeToolAttributes,
    > & { enabled?: boolean; teleportMode?: ViewerTeleportMode } & {
        "attr:enabled"?: boolean;
        "attr:teleportMode"?: ViewerTeleportMode;
    } & { "prop:enabled"?: boolean; "prop:teleportMode"?: ViewerTeleportMode }