> Documentation index: https://www.gooddata.ai/docs/gooddata-ui/llms.txt lists every page of these docs as Markdown.

# walkLayout()

- Package: [@gooddata/sdk-backend-spi](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-backend-spi/index.md)
- Kind: function
- Stability: alpha
- Source: https://github.com/gooddata/gooddata-ui-sdk/blob/rel/11.64/libs/sdk-backend-spi/src/workspace/dashboards/utils.ts

> **Alpha API.** Initial API, highly likely to change outside SemVer. Don't build on it in production. See [API maturity](https://www.gooddata.ai/docs/gooddata-ui/latest/integrations/platform/api-maturity/index.md).
> 

Walk dashboard layout This is useful to collect widgets from the layout or perform transforms on the layout

**Signature:**

```typescript
export declare function walkLayout<TWidget extends IDashboardWidget>(layout: IDashboardLayout<TWidget>, input: {
    sectionCallback?: (section: IDashboardLayoutSection<TWidget>, sectionPath: LayoutPath) => void;
    itemCallback?: (item: IDashboardLayoutItem<TWidget>, widgetPath: LayoutPath) => void;
    widgetCallback?: (widget: TWidget, widgetPath: LayoutPath) => void;
}, path?: LayoutPath): void;
```

## Parameters

| Parameter | Type | Description |
| --- | --- | --- |
| layout | [IDashboardLayout](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-model/sdk-model.idashboardlayout/index.md)&lt;TWidget&gt; | dashboard layout |
| { sectionCallback, itemCallback, widgetCallback, } | (not declared) |  |
| input | { sectionCallback?: (section: [IDashboardLayoutSection](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-model/sdk-model.idashboardlayoutsection/index.md)&lt;TWidget&gt;, sectionPath: [LayoutPath](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-backend-spi/sdk-backend-spi.layoutpath/index.md)) =&gt; void; itemCallback?: (item: [IDashboardLayoutItem](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-model/sdk-model.idashboardlayoutitem/index.md)&lt;TWidget&gt;, widgetPath: [LayoutPath](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-backend-spi/sdk-backend-spi.layoutpath/index.md)) =&gt; void; widgetCallback?: (widget: TWidget, widgetPath: [LayoutPath](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-backend-spi/sdk-backend-spi.layoutpath/index.md)) =&gt; void; } |  |
| path | [LayoutPath](https://www.gooddata.ai/docs/gooddata-ui/latest/api-reference/sdk-backend-spi/sdk-backend-spi.layoutpath/index.md) | _(Optional)_ |

**Returns:**

void

void
