# Types: InboxView to InboxChatGlyphProps (/themes/sdk/reference/inbox/types-2)

```ts
import { … } from '@poltura/theme-sdk/inbox';
```

## `InboxView` [#inboxview]

What the chat shows right now.

<TypeTable type={{"available":{"description":"Whether the store offers chat and the theme shows it.","type":"boolean","required":true},"online":{"description":"Whether someone is available to answer now.","type":"boolean","required":true},"open":{"description":"Whether the panel is open.","type":"boolean","required":true},"preview":{"description":"Whether the chat runs on sample data, as in the customizer, so nothing is sent.","type":"boolean","required":true},"unread":{"description":"How many team messages the shopper has not seen.","type":"number","required":true},"connection":{"description":"Whether the chat is live, connecting, reconnecting or offline.","type":"InboxConnection","required":true},"typing":{"description":"Whether the other side is typing.","type":"boolean","required":true},"sending":{"description":"Whether a message is being sent.","type":"boolean","required":true},"messages":{"description":"The conversation in order, oldest first.","type":"InboxMessage[]","required":true},"pendingAttachments":{"description":"The files picked and not sent yet.","type":"InboxPendingAttachment[]","required":true},"appearance":{"description":"How the merchant set the chat up.","type":"InboxAppearance","required":true},"copy":{"description":"Every text the chat shows.","type":"InboxCopy","required":true},"knowledge":{"description":"The help search inside the chat.","type":"InboxKnowledge","required":true}}} />

## `InboxRootProps` [#inboxrootprops]

Props of [`InboxRoot`](/themes/sdk/reference/inbox/parts-1#inboxroot).

<TypeTable type={{"children":{"description":"The panel and the launcher, drawn inside the chat's frame.","type":"ReactNode","required":true},"className":{"description":"Classes added to the frame.","type":"string","required":false}}} />

## `InboxLauncherProps` [#inboxlauncherprops]

Props of [`InboxLauncher`](/themes/sdk/reference/inbox/parts-1#inboxlauncher).

<TypeTable type={{"children":{"description":"Replaces the chat glyph inside the button.","type":"ReactNode","required":false},"className":{"description":"Classes added to the button.","type":"string","required":false}}} />

## `InboxPanelProps` [#inboxpanelprops]

Props of [`InboxPanel`](/themes/sdk/reference/inbox/parts-1#inboxpanel).

<TypeTable type={{"children":{"description":"The header, the conversation and the composer.","type":"ReactNode","required":true},"className":{"description":"Classes added to the panel.","type":"string","required":false}}} />

## `InboxPanelHeaderProps` [#inboxpanelheaderprops]

Props of [`InboxPanelHeader`](/themes/sdk/reference/inbox/parts-1#inboxpanelheader).

<TypeTable type={{"title":{"description":"Replaces the panel heading; defaults to the merchant's chat title.","type":"string","required":false},"children":{"description":"Drawn in the header beside the title, such as extra buttons.","type":"ReactNode","required":false},"className":{"description":"Classes added to the header.","type":"string","required":false}}} />

## `InboxConversationProps` [#inboxconversationprops]

Props of [`InboxConversation`](/themes/sdk/reference/inbox/parts-1#inboxconversation).

<TypeTable type={{"renderMessage":{"description":"Draws one message in place of the default bubble.","type":"(message: InboxMessage) => ReactNode","required":false},"className":{"description":"Classes added to the conversation.","type":"string","required":false}}} />

## `InboxMessageListProps` [#inboxmessagelistprops]

Props of [`InboxMessageList`](/themes/sdk/reference/inbox/parts-1#inboxmessagelist).

<TypeTable type={{"renderMessage":{"description":"Draws one message in place of the default bubble.","type":"(message: InboxMessage) => ReactNode","required":false},"className":{"description":"Classes added to the list.","type":"string","required":false}}} />

## `InboxMessageBubbleProps` [#inboxmessagebubbleprops]

Props of [`InboxMessageBubble`](/themes/sdk/reference/inbox/parts-1#inboxmessagebubble).

<TypeTable type={{"message":{"description":"The message to draw.","type":"InboxMessage","required":true},"className":{"description":"Classes added to the bubble.","type":"string","required":false}}} />

## `InboxComposerProps` [#inboxcomposerprops]

Props of [`InboxComposer`](/themes/sdk/reference/inbox/parts-1#inboxcomposer).

<TypeTable type={{"placeholder":{"description":"Replaces the message field's placeholder; defaults to the merchant's wording.","type":"string","required":false},"className":{"description":"Classes added to the composer.","type":"string","required":false}}} />

## `InboxOfflineFormProps` [#inboxofflineformprops]

Props of [`InboxOfflineForm`](/themes/sdk/reference/inbox/parts-1#inboxofflineform).

<TypeTable type={{"className":{"description":"Classes added to the form.","type":"string","required":false}}} />

## `InboxStatusLineProps` [#inboxstatuslineprops]

Props of [`InboxStatusLine`](/themes/sdk/reference/inbox/parts-1#inboxstatusline).

<TypeTable type={{"className":{"description":"Classes added to the status line.","type":"string","required":false}}} />

## `InboxKnowledgeSearchProps` [#inboxknowledgesearchprops]

Props of [`InboxKnowledgeSearch`](/themes/sdk/reference/inbox/parts-1#inboxknowledgesearch).

<TypeTable type={{"placeholder":{"description":"Replaces the search field's placeholder; defaults to the merchant's wording.","type":"string","required":false},"className":{"description":"Classes added to the search.","type":"string","required":false}}} />

## `InboxKnowledgeSuggestionsProps` [#inboxknowledgesuggestionsprops]

Props of [`InboxKnowledgeSuggestions`](/themes/sdk/reference/inbox/parts-1#inboxknowledgesuggestions).

<TypeTable type={{"limit":{"description":"The most articles to suggest; defaults to the host's choice.","type":"number","required":false},"className":{"description":"Classes added to the suggestions.","type":"string","required":false}}} />

## `InboxKnowledgeArticleProps` [#inboxknowledgearticleprops]

Props of [`InboxKnowledgeArticle`](/themes/sdk/reference/inbox/parts-1#inboxknowledgearticle).

<TypeTable type={{"className":{"description":"Classes added to the article.","type":"string","required":false}}} />

## `InboxChatGlyphProps` [#inboxchatglyphprops]

Props of [`InboxChatGlyph`](/themes/sdk/reference/inbox/parts-2#inboxchatglyph).

<TypeTable type={{"size":{"description":"The glyph's width and height in pixels; defaults to 24.","type":"number","required":false},"className":{"description":"Classes added to the glyph.","type":"string","required":false}}} />
