change player skin in real time?

Hi guys, I’m currently working on a platform game where I want my character to be able to change his appearance (his skin), but do it without having to create another player object with another animator with other animations. I clarify that I know that sprites can be replaced by LateUpdate, but my animator has conditions in animation and I would be doing an animator using code, basically.
What I want is to be able to replace the sprites keeping the same animator, the same conditions.
Is there a tool or a way to do this? Thanks.

PS: my player only uses sprite sheets.

Finally I found the solution, what you have to use for this is an AnimatorOverride Controllers. What this allows is to replace clips from a base animator with new clips from new Players.
I got it in this tutorial: Animation Override Controllers Explained - 2D Game Development in Unity 5.6 - YouTube

https://docs.unity3d.com/Manual/AnimatorOverrideController.html?_ga=2.218037590.1538545850.1584729300-1593394034.1576329386