# Types: MegaMenuProps to NavProductsProps (/themes/sdk/reference/navigation/types-2)

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

## `MegaMenuProps` [#megamenuprops]

Props of [`MegaMenu`](/themes/sdk/reference/navigation/defaults-3#megamenu).

<TypeTable type={{"label":{"description":"The button's text; defaults to the store's wording for all categories.","type":"string","required":false},"openOn":{"description":"Whether the panel opens on hover or on click; defaults to hover.","type":"'hover' | 'click'","required":false},"className":{"description":"Classes added to the menu.","type":"string","required":false}}} />

## `CategoryNavProps` [#categorynavprops]

Props of [`CategoryNav`](/themes/sdk/reference/navigation/defaults-4#categorynav).

<TypeTable type={{"openOn":{"description":"Whether a category's subcategories open on hover or on click; defaults to hover.","type":"'hover' | 'click'","required":false},"className":{"description":"Classes added to the bar.","type":"string","required":false}}} />

## `MenuColumnsClasses` [#menucolumnsclasses]

Class names for the pieces of [`MenuColumns`](/themes/sdk/reference/navigation/parts#menucolumns).

<TypeTable type={{"column":{"description":"Each column.","type":"string","required":false},"heading":{"description":"Each column's heading.","type":"string","required":false},"list":{"description":"Each column's list.","type":"string","required":false},"link":{"description":"Each link.","type":"string","required":false}}} />

## `MenuColumnsProps` [#menucolumnsprops]

Props of [`MenuColumns`](/themes/sdk/reference/navigation/parts#menucolumns).

<TypeTable type={{"columns":{"description":"The columns, in order.","type":"readonly MenuColumn[]","required":true},"className":{"description":"Classes added to the grid.","type":"string","required":false},"classes":{"description":"Classes added to the pieces.","type":"MenuColumnsClasses","required":false}}} />

## `BreadcrumbsProps` [#breadcrumbsprops]

Props of [`Breadcrumbs`](/themes/sdk/reference/navigation/parts#breadcrumbs).

<TypeTable type={{"items":{"description":"The steps from the top down; the last one without a link is the current page.","type":"readonly BreadcrumbItem[]","required":true},"separator":{"description":"The mark between the steps; defaults to a chevron.","type":"'chevron' | 'slash'","required":false},"className":{"description":"Classes added to the trail.","type":"string","required":false}}} />

## `NavProductsBy` [#navproductsby]

Which products a navigation panel shows.

```ts
type NavProductsBy = {
    readonly categoryId: string;
    readonly limit?: number;
} | {
    readonly handles: readonly string[];
}
```

## `NavProductsClasses` [#navproductsclasses]

Class names for the pieces of [`NavProducts`](/themes/sdk/reference/navigation/parts#navproducts).

<TypeTable type={{"root":{"description":"The panel.","type":"string","required":false},"heading":{"description":"The heading.","type":"string","required":false},"row":{"description":"Each product row.","type":"string","required":false},"thumbFrame":{"description":"The frame around a thumbnail; null draws the thumbnail bare.","type":"string | null","required":false},"thumb":{"description":"The thumbnail.","type":"string","required":false},"title":{"description":"Each product's title.","type":"string","required":false}}} />

## `NavProductsProps` [#navproductsprops]

Props of [`NavProducts`](/themes/sdk/reference/navigation/parts#navproducts).

<TypeTable type={{"by":{"description":"Which products to show.","type":"NavProductsBy","required":true},"heading":{"description":"A heading over the rows; none by default.","type":"string","required":false},"classes":{"description":"Classes added to the pieces.","type":"NavProductsClasses","required":false}}} />
