The SP.ListTemplateType enumeration has the following List Definitions. Once can use the required template to create a list instance.

SP.ListTemplateType.GenericList

SP.ListTemplateType.DocumentLibrary

SP.ListTemplateType.Survey

SP.ListTemplateType.Announcements

SP.ListTemplateType.Contacts

SP.ListTemplateType.Events

SP.ListTemplateType.Tasks

SP.ListTemplateType.DiscussionBoard

SP.ListTemplateType.PictureLibrary

SP.ListTemplateType.DataSources

SP.ListTemplateType.XmlForm

SP.ListTemplateType.NoCodeWorkflows

SP.ListTemplateType.WorkflowProcess

SP.ListTemplateType.WebPageLibrary

SP.ListTemplateType.CustomGrid

SP.ListTemplateType.WorkflowHistory

SP.ListTemplateType.GanttTasks

SP.ListTemplateType.IssuesTracking

How to create a List Instance using Custom List Definitions

As the SP.ListTemplateType enumeration doesn't include the custom list definitions, we cannot use it when we want to create a list using custom list definitions. Instead, we have to fetch the custom list definitions details from the SharePoint Web and use that information for creating the list instance. Below is the code.