Add `Args` for type-safe internal serialization