It leaves out what JSON cannot carry, which a replay adds back in code:
chargingStops.icon.mapping with basedOn: 'custom', whose fn is a function.waypoints.icon.mapping and waypoints.label.title as a function — a MapLibre expression
title serializes.HTMLImageElement: chargingStops.icon.customIcons,
waypoints.icon.customIcons and each waypoint role's image — see SerializableCustomImage.
The part of a RoutingModuleConfig that survives JSON, for saving
getConfig()and replaying it withapplyConfig().