# Default Types

The SDK comes with many default types that you can use. 

| Type name    | Number   | Description |
| -------------- | -------- | ----------------------------------------------------------- |
| "message"      | 0        | A text message with one or multiple lines |
| "message_box"  | 1        | A text message with background customization. This type can be used to avoid line breaks creating new "message" types |
| "image"        | 2        | An image |
| "group_image"  | 3        | A group of one or more images |
| "video"        | 6        | A video preview |
| "space"        | 7        | A blank space. This types normally devide all between the other types and the other types can be moved to their position with a drag and drop action. |
| "large_space"  | 8        | A large blank space. This is normally used in the end of the document to add some padding and to catch the click of the user in document and move to the last editable type. |
| "add_button"   | 9        | A button with an add action. |
| "check_item"   | 10       | A message with a checkbox. |
| "title"        | 11       | The title of a document |
| "h1"           | 12       | H1 text |
| "h2"           | 13       | H2 text |
| "h3"           | 14       | H3 text |
| "h4"           | 15       | H4 text |
| "unordered_list_item" | 16     | A list item without order. Draws as a message with a dot of dash in the start of the text. |

Like explained in the previous section, each type needs to be mapped to a [StoryStepDrawer](https://javadoc.io/doc/com.github.leandroborgesferreira/storyteller/latest/com/github/leandroborgesferreira/storyteller/drawer/StoryStepDrawer.html). The next section explain each default drawer that is provided by the default types.