I think this library maps the different representations into a single representation. The business logic, metrics, logging etc. will use the single representation instead of being tightly coupled to the transport medium
Example from the docs where the "PAYMENT_DECLINED" state is mapped from protocol specific responses:
PAYMENT_DECLINED
|
+-- HTTP 422
+-- gRPC FAILED_PRECONDITION
|
--> logs/metrics keep PAYMENT_DECLINED