You can now set deprecated: true in a question type's definition to retire it gracefully. Existing questions of that type keep rendering, grading, regenerating and exporting exactly as before — but no new ones can be created, and orgs that haven't already enabled it can no longer discover or enable it.
It's the clean way to phase out a type you've replaced. Setting public: false looks like it would do the same, but it also stops other orgs from resolving the definitions of questions they already have, so those questions stop rendering. See publishing question types for the details.