How do I make a Page Template available to my Custom Post Types?

This is a WordPress function added in 4.7 to allow you to use your Page Templates for Custom Post Types

From WordPress version 4.7 you can now assign custom page templates to other post types along with page.

To achieve this in addition to the Template Name file header, the post types supported by a template can be specified using Template Post Type: as following.

Template Name: Full-width page layout
Template Post Type: post, page, product

More Information: