UNPKG

@zag-js/numeric-range

Version:
32 lines (30 loc) 2.21 kB
declare function getMinValueAtIndex(index: number, values: number[], minValue: number): number; declare function getMaxValueAtIndex(index: number, values: number[], maxValue: number): number; declare function isValueAtMax(value: number, maxValue: number): boolean; declare function isValueAtMin(value: number, minValue: number): boolean; declare function isValueWithinRange(value: number, minValue: number, maxValue: number): boolean; declare function getRoundedValue(value: number, minValue: number, step: number): number; declare function clampValue(value: number, minValue: number, maxValue: number): number; declare function getValuePercent(value: number, minValue: number, maxValue: number): number; declare function getPercentValue(percent: number, minValue: number, maxValue: number, step: number): number; declare function roundToStepPrecision(value: number, step: number): number; declare function snapValueToStep(value: number, min: number | undefined, max: number | undefined, step: number): number; type RangeContext = { min: number; max: number; step: number; values: number[]; }; declare function getValueSetterAtIndex(index: number, ctx: RangeContext): (value: number) => number[]; declare function getNextStepValue(index: number, ctx: RangeContext): number[]; declare function getPreviousStepValue(index: number, ctx: RangeContext): number[]; declare function getClosestValueIndex(values: number[], targetValue: number): number; declare function getValueRanges(values: number[], minValue: number, maxValue: number, gap: number): { min: number; max: number; value: number; }[]; declare function getValueTransformer(valueA: number[], valueB: number[]): (value: number) => number; declare function toFixedNumber(value: number, digits?: number, base?: number): number; declare function mod(value: number, modulo: number): number; export { clampValue, getClosestValueIndex, getMaxValueAtIndex, getMinValueAtIndex, getNextStepValue, getPercentValue, getPreviousStepValue, getRoundedValue, getValuePercent, getValueRanges, getValueSetterAtIndex, getValueTransformer, isValueAtMax, isValueAtMin, isValueWithinRange, mod, roundToStepPrecision, snapValueToStep, toFixedNumber };