Modules have the ability to provide new content types, and all content types (except for the html content type) must have a module that handles them.
If you wish your module to provide one or more content types then you can do so by adding this information to your module's description.yaml file.
When an administrator enables your module (and hence enables your content type) a Layout is automatically created via duplication so that they can start creating content straight away.
You can use the default_template_name property to set the name of this layout.
Administrators have the option of automatically populating the content summary whilst using a WYSIWYG Editor.
This ability can be enabled on a per-content-type basis in the content type settings, however you may set the initial value using the enable_summary_auto_update property.
content_types: