Since WordPress version 4.7 Post-Type-Templates are enabled in the WordPress core.
That means that you can create multiple templates for the single post-type view as for pages.
For this you just need to edit the single post/type template, and add something like this to the top of the file:
/*
Template Name: Custom Type Template
Template Post Type: post, product, custom-type
*/
On the line Template Post Type
you just add your custom post type slug.
So this template will be available on the post
, product
and custom-type
post type.
I already answered this here.
Read more about post-type-templates of WP 4.7 here.