> ## Documentation Index
> Fetch the complete documentation index at: https://botmesh.afaya.com.co/llms.txt
> Use this file to discover all available pages before exploring further.

# OutboundContent

> Type alias exported by @botmesh/core.

```ts theme={null}
type OutboundContent = 
  | {
  kind: "text";
  text: string;
}
  | {
  kind: "image";
  media: MediaSource;
  caption?: string;
  viewOnce?: boolean;
}
  | {
  kind: "video";
  media: MediaSource;
  caption?: string;
  gifPlayback?: boolean;
  ptv?: boolean;
  viewOnce?: boolean;
}
  | {
  kind: "audio";
  media: MediaSource;
}
  | {
  kind: "voice";
  media: MediaSource;
}
  | {
  kind: "document";
  media: MediaSource;
  filename?: string;
  caption?: string;
  mimetype?: string;
}
  | {
  kind: "sticker";
  media: MediaSource;
  pack?: string;
  author?: string;
}
  | {
  kind: "location";
  lat: number;
  lng: number;
  name?: string;
  address?: string;
}
  | {
  kind: "contact";
  phone: string;
  displayName?: string;
}
  | {
  kind: "poll";
  question: string;
  options: string[];
  multiSelect?: boolean;
}
  | {
  kind: "reaction";
  emoji: string;
  target: MessageRef;
}
  | {
  kind: "buttons";
  text: string;
  buttons: Button[];
  footer?: string;
}
  | {
  kind: "list";
  text: string;
  buttonText: string;
  sections: ListSection[];
  footer?: string;
}
  | {
  kind: "card";
  title: string;
  body?: string;
  imageUrl?: string;
  buttons?: Button[];
}
  | {
  kind: "template";
  name: string;
  language: string;
  components?: unknown;
}
  | {
  kind: "native";
  provider: string;
  payload: unknown;
}
  | FormContent;
```

Defined in: [core/provider.ts:498](https://github.com/andresayac/botmesh/blob/main/packages/core/src/core/provider.ts#L498)

Tagged union of transport-neutral content. Each provider maps a kind to its
native primitive, and MUST reject a kind it cannot honor with
`UnsupportedContentError` (or degrade explicitly, as Baileys maps `buttons`
to numbered text). The `template` and `native` kinds are the escape hatches
for transport-specific features (Cloud API templates, Discord components,
Telegram inline keyboards) without polluting the neutral kinds.

## Union Members

### Type Literal

```ts theme={null}
{
  kind: "text";
  text: string;
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "image";
  media: MediaSource;
  caption?: string;
  viewOnce?: boolean;
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "video";
  media: MediaSource;
  caption?: string;
  gifPlayback?: boolean;
  ptv?: boolean;
  viewOnce?: boolean;
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "audio";
  media: MediaSource;
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "voice";
  media: MediaSource;
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "document";
  media: MediaSource;
  filename?: string;
  caption?: string;
  mimetype?: string;
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "sticker";
  media: MediaSource;
  pack?: string;
  author?: string;
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "location";
  lat: number;
  lng: number;
  name?: string;
  address?: string;
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "contact";
  phone: string;
  displayName?: string;
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "poll";
  question: string;
  options: string[];
  multiSelect?: boolean;
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "reaction";
  emoji: string;
  target: MessageRef;
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "buttons";
  text: string;
  buttons: Button[];
  footer?: string;
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "list";
  text: string;
  buttonText: string;
  sections: ListSection[];
  footer?: string;
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "card";
  title: string;
  body?: string;
  imageUrl?: string;
  buttons?: Button[];
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "template";
  name: string;
  language: string;
  components?: unknown;
}
```

***

### Type Literal

```ts theme={null}
{
  kind: "native";
  provider: string;
  payload: unknown;
}
```

***

[`FormContent`](https://botmesh.afaya.com.co/api/core/interfaces/FormContent)

A native form (only sent to providers with `capabilities.forms === 'native'`).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.