# Kanban API

> Auto-generated API reference for `Kanban` from @vuetify/v0 (Vuetify0).
> Source of truth: https://0.vuetifyjs.com/api/kanban

## Related

- https://0.vuetifyjs.com/components/data/kanban
- https://0.vuetifyjs.com/composables/data/create-kanban
- https://0.vuetifyjs.com/composables/data/create-sortable
- https://0.vuetifyjs.com/composables/system/use-drag-drop

## Kanban.Root

### Props

| Name | Type | Default | Required | Description |
|---|---|---|---|---|
| `disabled` | `boolean \| undefined` | `false` | no | Disable every move on the board |
| `orientation` | `KanbanOrientation \| undefined` | `"horizontal"` | no | Axis the columns flow along (default: 'horizontal') |
| `label` | `string \| undefined` | — | no | Accessible name for the board |
| `namespace` | `string \| undefined` | `"v0:kanban"` | no | Namespace for context provision |

### Events

| Name | Type | Description |
|---|---|---|
| `move` | `[payload: KanbanMovePayload]` | — |

### Slots

| Name | Type | Description |
|---|---|---|
| `default` | `KanbanRootSlotProps` | — |

## Kanban.Column

### Props

| Name | Type | Default | Required | Description |
|---|---|---|---|---|
| `id` | `any` | `useId()` | no | Column id, used in `move` payloads. Auto-generated when omitted. |
| `value` | `unknown` | — | no | The column's own data |
| `label` | `string \| undefined` | — | no | Accessible name; also used in announcements |
| `disabled` | `boolean \| undefined` | `false` | no | Block moves into, out of, and within this column |
| `accept` | `((value: T, from: ID, index: number) => boolean) \| undefined` | — | no | Veto incoming cross-column moves. Synchronous; return false to reject. Same-column reorders bypass it. |
| `namespace` | `string \| undefined` | `"v0:kanban"` | no | Namespace for context injection from Kanban.Root |
| `modelValue` | `T[] \| undefined` | `[]` | no | — |

### Events

| Name | Type | Description |
|---|---|---|
| `update:model-value` | `[value: T[]]` | — |

### Slots

| Name | Type | Description |
|---|---|---|
| `default` | `KanbanColumnSlotProps<T>` | — |

## Kanban.Instructions

### Props

| Name | Type | Default | Required | Description |
|---|---|---|---|---|
| `id` | `string \| undefined` | `useId()` | no | Element id. Auto-generated when omitted. |
| `namespace` | `string \| undefined` | `"v0:kanban"` | no | Namespace for context injection from Kanban.Root |

### Slots

| Name | Type | Description |
|---|---|---|
| `default` | `KanbanInstructionsSlotProps` | — |

## Kanban.Item

### Props

| Name | Type | Default | Required | Description |
|---|---|---|---|---|
| `value` | `T` | — | yes | The item's value — must be an entry of the parent Column's v-model |
| `label` | `string \| undefined` | — | no | Accessible name used in move announcements |
| `disabled` | `boolean \| undefined` | `false` | no | Prevent this item from being moved |
| `namespace` | `string \| undefined` | `"v0:kanban"` | no | Namespace for context injection from Kanban.Root |

### Slots

| Name | Type | Description |
|---|---|---|
| `default` | `KanbanItemSlotProps` | — |

## Kanban.List

### Props

| Name | Type | Default | Required | Description |
|---|---|---|---|---|
| `namespace` | `string \| undefined` | `"v0:kanban"` | no | Namespace for context injection from Kanban.Root |

### Slots

| Name | Type | Description |
|---|---|---|
| `default` | `KanbanListSlotProps` | — |

## Kanban.LiveRegion

### Props

| Name | Type | Default | Required | Description |
|---|---|---|---|---|
| `namespace` | `string \| undefined` | `"v0:kanban"` | no | Namespace for context injection from Kanban.Root |

### Slots

| Name | Type | Description |
|---|---|---|
| `default` | `KanbanLiveRegionSlotProps` | — |
