я никак не могу понять где граница, где передавать параметры, а где класть в состояние
Делай как удобнее. Если переменная состояния будет работать ТОЛЬКО в этом компоненте и нигде больше, то легче просто useState сделать, к примеру
Но можно и все через редакс писать, дело твое
Принцип работы будет один и тот же, при изменении переменной с помощью функции произойдет ререндер