---
title: "browser(_:nextTypeSelectMatchFromRow:toRow:inColumn:for:)"
framework: appkit
role: symbol
role_heading: Instance Method
path: "appkit/nsbrowserdelegate/browser(_:nexttypeselectmatchfromrow:torow:incolumn:for:)"
---

# browser(_:nextTypeSelectMatchFromRow:toRow:inColumn:for:)

Sent to the delegate to customize a browser’s keyboard-based selection (type select) behavior.

## Declaration

```swift
@MainActor optional func browser(_ browser: NSBrowser, nextTypeSelectMatchFromRow startRow: Int, toRow endRow: Int, inColumn column: Int, for searchString: String?) -> Int
```

## Parameters

- `browser`: The browser.
- `startRow`: The beginning of the row set to search.
- `endRow`: The end of the row set to search. This value can be less than startRowIndex when the search wraps around to the beginning.
- `column`: The column containing the rows being searched.
- `searchString`: The keyboard-based selection string. It is nil when no keyboard-based selection has begun.

## Return Value

Return Value The index of the first row that matches searchString between startRowIndex and endRowIndex - 1, or -1 if there is no match.

## See Also

### Managing Selection Behavior

- [browser(_:shouldTypeSelectFor:withCurrentSearch:)](appkit/nsbrowserdelegate/browser(_:shouldtypeselectfor:withcurrentsearch:).md)
- [browser(_:typeSelectStringForRow:inColumn:)](appkit/nsbrowserdelegate/browser(_:typeselectstringforrow:incolumn:).md)
