Creating custom file widget and formatter in drupal 8

Hi I would like to create a file widget that can distinguish between different file extensions and a formatter that creates different color buttons for downloading those files.
I have extended FileItem to create a custom field type and that part works but i don’t know how to add a way (radio buttons or select boxes) to give the backend user a choice as to what type of file they are selecting. And from the front end i like to use that choice to render a different color button to say download file.
Could you please point me in the right direction? Tutorial? The examples module only deals with custom fieldtypes which are simple to build but i can’t relate it to file and the above scenario.

Many thanks

Drupal version: