/** @packageDocumentation * @module LineWeight */ import "./WeightPickerButton.scss"; import * as React from "react"; import type { ColorDef } from "@itwin/core-common"; import type { CommonProps } from "@itwin/core-react"; /** Properties for the [[WeightPickerButton]] React component * @public */ export interface WeightPickerProps extends React.ButtonHTMLAttributes, CommonProps { /** active weight */ activeWeight: number; /** available weights */ weights: number[]; /** color specification */ colorDef?: ColorDef; /** function to run when user selects weight swatch */ onLineWeightPick?: ((weight: number) => void) | undefined; /** Disabled or not */ disabled?: boolean; /** Readonly or not */ readonly?: boolean; /** hide the weight label */ hideLabel?: boolean; /** Title to show at top of DropDown */ dropDownTitle?: string; } /** @internal */ interface WeightPickerState { showPopup: boolean; targetElement: HTMLDivElement | null; } /** WeightPickerButton component * @public */ export declare class WeightPickerButton extends React.PureComponent { private _target; private _weightsContainer; private _focusTarget; constructor(props: WeightPickerProps); setFocus(): void; static defaultProps: { weights: number[]; }; private _togglePopup; private _onPopupOpened; private _closePopup; private _handleWeightPicked; componentDidMount(): void; private buildIdForWeight; private moveFocusInPopup; private _handleKeyDown; private _setWeightContainer; private renderPopup; render(): React.JSX.Element; } export {}; //# sourceMappingURL=WeightPickerButton.d.ts.map