import * as solid_js from 'solid-js'; import { Accessor, JSX, ValidComponent } from 'solid-js'; import { ElementOf, PolymorphicProps } from './polymorphic/index.js'; interface MeterDataSet { } interface MeterContextValue { dataset: Accessor; value: Accessor; valuePercent: Accessor; valueLabel: Accessor; meterFillWidth: Accessor; labelId: Accessor; generateId: (part: string) => string; registerLabelId: (id: string) => () => void; } declare function useMeterContext(): MeterContextValue; interface MeterFillOptions { } interface MeterFillCommonProps { style?: JSX.CSSProperties | string; } interface MeterFillRenderProps extends MeterFillCommonProps, MeterDataSet { } type MeterFillProps = MeterFillOptions & Partial>>; /** * The component that visually represents the meter value. * Used to visually show the fill of `Meter.Track`. */ declare function MeterFill(props: PolymorphicProps>): JSX.Element; interface MeterLabelOptions { } interface MeterLabelCommonProps { id: string; } interface MeterLabelRenderProps extends MeterLabelCommonProps, MeterDataSet { } type MeterLabelProps = MeterLabelOptions & Partial>>; /** * An accessible label that gives the user information on the meter. */ declare function MeterLabel(props: PolymorphicProps>): solid_js.JSX.Element; interface GetValueLabelParams { value: number; min: number; max: number; } interface MeterRootOptions { /** * The meter value. * @default 0 */ value?: number; /** * The minimum meter value. * @default 0 */ minValue?: number; /** * The maximum meter value. * @default 100 */ maxValue?: number; /** * A function to get the accessible label text representing the current value in a human-readable format. * If not provided, the value label will be read as a percentage of the max value. */ getValueLabel?: (params: GetValueLabelParams) => string; } interface MeterRootCommonProps { id: string; role: string; "aria-valuenow": number | undefined; "aria-valuemin": number; "aria-valuemax": number; "aria-valuetext": string | undefined; "aria-labelledby": string | undefined; } interface MeterRootRenderProps extends MeterRootCommonProps, MeterDataSet { } type MeterRootProps = MeterRootOptions & Partial>>; /** * Meter displays numeric value that varies within a defined range. */ declare function MeterRoot(props: PolymorphicProps>): solid_js.JSX.Element; interface MeterTrackOptions { } interface MeterTrackCommonProps { } interface MeterTrackRenderProps extends MeterTrackCommonProps, MeterDataSet { } type MeterTrackProps = MeterTrackOptions & Partial>>; /** * The component that visually represents the meter track. * Act as a container for `Meter.Fill`. */ declare function MeterTrack(props: PolymorphicProps>): solid_js.JSX.Element; interface MeterValueLabelOptions { } interface MeterValueLabelCommonProps { } interface MeterValueLabelRenderProps extends MeterValueLabelCommonProps, MeterDataSet { children: JSX.Element; } type MeterValueLabelProps = MeterValueLabelOptions & Partial>>; /** * The accessible label text representing the current value in a human-readable format. */ declare function MeterValueLabel(props: PolymorphicProps>): JSX.Element; export { MeterDataSet as A, MeterRoot as M, MeterFill as a, MeterLabel as b, MeterTrack as c, MeterValueLabel as d, MeterFillOptions as e, MeterFillCommonProps as f, MeterFillRenderProps as g, MeterFillProps as h, MeterLabelOptions as i, MeterLabelCommonProps as j, MeterLabelRenderProps as k, MeterLabelProps as l, MeterRootOptions as m, MeterRootCommonProps as n, MeterRootRenderProps as o, MeterRootProps as p, MeterTrackOptions as q, MeterTrackCommonProps as r, MeterTrackRenderProps as s, MeterTrackProps as t, MeterValueLabelOptions as u, MeterValueLabelCommonProps as v, MeterValueLabelRenderProps as w, MeterValueLabelProps as x, useMeterContext as y, MeterContextValue as z };