"Code should be written for the next developer." I agree with this sentence :)
But I still think you are too harsh with deconstruction, maybe for you it easier and clearer but not for everyone :) and maybe you were exposed to really bad usage of it.
I personally prefer deconstruct in React components to exactly know what is being used and not try to guess through searching for "props.XXX" everywhere.
Here is example i made: https://github.com/stolenng/react-hooks-examples/blob/master/src/components/deconstruction.jsx and i would chose to go with it everyday.
I'm trying to think about the context you are talking about(30-40 vars ??), but it could occur that losing context because of bad variable names and too big components might be the reason, if you keep components slim and code readable deconstruction can play really nice ! :)