# @askrjs/themes/dropdown-menu

> Published API exports for @askrjs/themes/dropdown-menu.

Source: [https://askrjs.com/docs/reference/api/themes/dropdown-menu](https://askrjs.com/docs/reference/api/themes/dropdown-menu)

Status: stable. Packages: @askrjs/themes/dropdown-menu.

**Published packages are authoritative.** Examples may lag behind a published contract. When guidance differs, verify the exports and TypeScript declarations in your installed package, then file an issue.

## Exports

This entrypoint publishes 8 exports from the declarations shipped by @askrjs/themes.

### `DropdownMenu`

```ts
Dropdown: (props: DropdownProps) => JSX.Element
```

Renders a part of `dropdown`.

### `DropdownMenuContent`

```ts
DropdownContent$1: { (props: DropdownContentProps): JSX.Element | null; (props: DropdownContentAsChildProps): JSX.Element | null; }
```

Dropdown/context-menu content wrapper around `@askrjs/ui`'s `DropdownContent`.
Non-`asChild` usage lazily evaluates `children` inside a body component so
they're only rendered once the dropdown is actually open.

### `DropdownMenuGroup`

```ts
DropdownGroup: (props: DropdownGroupProps | DropdownGroupAsChildProps) => import("@askrjs/askr/jsx-runtime").JSX.Element
```

Renders the `dropdown-group` part of `dropdown` with `role="group"`.

Supports polymorphic rendering via `asChild`.

### `DropdownMenuItem`

```ts
DropdownItem: { (props: DropdownItemProps): JSX.Element | null; (props: DropdownItemAsChildProps): JSX.Element | null; }
```

Renders a part of `dropdown`.

Supports polymorphic rendering via `asChild`.

### `DropdownMenuLabel`

```ts
DropdownLabel: (props: DropdownLabelProps | DropdownLabelAsChildProps) => import("@askrjs/askr/jsx-runtime").JSX.Element
```

Renders the `dropdown-label` part of `dropdown`.

Supports polymorphic rendering via `asChild`.

### `DropdownMenuPortal`

```ts
DropdownPortal: (props: DropdownPortalProps) => JSX.Element | null
```

Renders a part of `dropdown`.

### `DropdownMenuSeparator`

```ts
DropdownSeparator: (props: DropdownSeparatorProps | DropdownSeparatorAsChildProps) => import("@askrjs/askr/jsx-runtime").JSX.Element
```

Renders the `dropdown-separator` part of `dropdown` with `role="separator"`.

Supports polymorphic rendering via `asChild`.

### `DropdownMenuTrigger`

```ts
DropdownTrigger: { (props: DropdownTriggerProps): JSX.Element | null; (props: DropdownTriggerAsChildProps): JSX.Element | null; }
```

Renders the `dropdown-trigger` part of `dropdown`.

Supports polymorphic rendering via `asChild`.

## Documentation navigation

[Previous](https://askrjs.com/docs/reference/api/themes/direction/index.md) | [Next](https://askrjs.com/docs/reference/api/themes/empty/index.md)
