Someone else has mentioned that HVIF supports level-of-detail hinting.
This is renderer-dependent (as it's a relatively new feature), but SVG alsp supports altering the vector by scale via CSS media-queries. Oversimplified example:
<svg viewBox="0 0 48 48" xmlns="http://www.w3.org/2000/svg">
<style>@media (max-width: 24px) { .detail { display: none; } }</style>
<path d="basic icon here" />
<path class="detail" d="extra icon details here" />
</svg>