Content discriminated
union. The framework recognizes it via the generic content-level platform
contract: __platform: "whatsapp_business" lets
findUnsupportedPlatformContent warn-and-skip when a different platform
receives it.
Templates are the only message type Meta accepts outside the 24-hour
customer-service window (free-form sends fail with error 131047), so this
is the escape hatch for re-engaging stale conversations. v1 covers the
common case: a pre-approved template addressed by name + language, with
positional {{1}}..{{n}} body text parameters. Header/button components
can be added later without breaking this shape.