this is false.
GMS is always two parts, one in app, and one in system.
Signal additionally uses other proprietary Google libs in addition to GMS:
They could technically instead use the client part of microG to make it truly FOSS, which would still interact with the proprietary system part on regular systems. Such was done by one of the German Covid apps years ago iirc.