# UserSearchInterface

> Contract for filter models backing the User Switch panel's search form.

[API reference](/docs/api/index.md) › [Debug](/docs/extensions/debug/reference/index.md) › [models](/docs/extensions/debug/reference/models/index.md) › [search](/docs/extensions/debug/reference/models/search/index.md) › UserSearchInterface

| interface | `yii\debug\models\search\UserSearchInterface` |
| --- | --- |
| Source | [`src/models/search/UserSearchInterface.php`](https://github.com/yii2-extensions/debug/blob/main/src/models/search/UserSearchInterface.php#L15) |

Implemented by 1 type:

- [`UserSearch`](/docs/extensions/debug/reference/models/search/usersearch/index.md)

Contract for filter models backing the User Switch panel's search form.

Implementations expose a single [`search()`](/docs/extensions/debug/reference/models/search/usersearchinterface/index.md#method-search) method that returns a [`DataProviderInterface`](/docs/api/yii/data/dataproviderinterface/index.md) over the
candidate identities filtered by the submitted request parameters.

## Methods

| Method | Description | Defined by |
| --- | --- | --- |
| [`search()`](#method-search) abstract | Returns a data provider over the identity records, filtered by the submitted search parameters. | `UserSearchInterface` |

## Method details

### search() <span id="method-search"></span>

```php
abstract public function search(array<int|string, mixed> $params): yii\data\DataProviderInterface
```

Returns a data provider over the identity records, filtered by the submitted search parameters.

**Parameters**

| Parameter | Type | Description |
| --- | --- | --- |
| `$params` | `array<int\|string, mixed>` | Raw request parameters consumed by the implementing model. |

**Returns**

[`yii\data\DataProviderInterface`](/docs/api/yii/data/dataproviderinterface/index.md): Provider over the matching identity records.