---
url: "https://vueda.dev/v3/reference/api/js/use/useFilter.md"
title: "use/useFilter"
---

# use/useFilter

## Overview

Builds and manages reactive filter form state, mapping model fields to their appropriate filter widgets and providing the filter context to child components.

## Methods

- [filterFieldEntries](/v3/reference/api/js/use/useFilter/functions/filterFieldEntries.md) - The form fields one filter renders: the filter itself, plus one boundary field per suffix when it is a range.
- [getMissingFilterInputSupport](/v3/reference/api/js/use/useFilter/functions/getMissingFilterInputSupport.md) - What the client lacks to render an editable input for a filter.
- [useFilter](/v3/reference/api/js/use/useFilter/functions/useFilter.md) - Resolves each filterable field's form component and widget from the already-resolved `filterables`/`filterableDetails` given via props, and provides the resulting state as the `FilterModelSymbol` context for descendant components (e.g.

## Types

### [FilterFieldEntry](/v3/reference/api/js/use/useFilter/types/FilterFieldEntry.md)

### [FilterInputOverrides](/v3/reference/api/js/use/useFilter/types/FilterInputOverrides.md)

### [UseFilterRawOverridableProps](/v3/reference/api/js/use/useFilter/types/UseFilterRawOverridableProps.md)

### [UseFilterStateRawState](/v3/reference/api/js/use/useFilter/types/UseFilterStateRawState.md)

### [UseFilterRawProps](/v3/reference/api/js/use/useFilter/types/UseFilterRawProps.md)

`UseFilterRawProps = UseFilterRawOverridableProps | ThemeRawProps`

### [UseFilterState](/v3/reference/api/js/use/useFilter/types/UseFilterState.md)

`UseFilterState = DeepReadonly`

## Source

`client/lib/use/useFilter.js:1`
