How about instead of creating new independent pieces of state and managing the dependence, you just define your rMin and rMax based on these (i.e. as "derived state")?
const [thresholdMin, setThresholdMin] = useState<number>()
const [thresholdMax, setThresholdMax] = useState<number>()
const rangeMin: Range[] = Array.from({length: thresholdMax-1}, (_, i) => ({
label: v.value.toString() + " " +data.settings.sensor_unit,
value: i + 1,
}
));
const rangeMax: Range[] = Array.from({length: 10-thresholdMin}, (, i) => ({
label: v.value.toString() + " " +data.settings.sensor_unit,
value: i + thresholdMin + 1,
}));
Now these will automatically stay updated whenever thresholdMin and thresholdMax change