Custom copyable/consumable types?

Are there any plans to allows protocols that allow custom copy or forwarding control? (I assume that forwarding is not really necessary, since we are not supposed to have a problem of "use after move" with consume).
If no - is this more technical reason, or "ideological" one? (hard to reason about, error prone, etc).

To be honest, I feel that recent features do cover a lot of ground, and for customizing copy/consume, where they are needed one could always define a protocol that allows that, and then implement something like customCopy and customMove functions, and adding these on language level wouldn't be necessary (may be custom copy constructor does offer some performance benefits) and even bad (harder to reason about, less safety, potential for abuse), but on the other hand these on language level could make C++ interop easier.