---
title: XCUIElementTypeQueryProvider
framework: xcuiautomation
role: symbol
role_heading: Protocol
path: xcuiautomation/xcuielementtypequeryprovider
---

# XCUIElementTypeQueryProvider

A type that provides ready-made queries for locating descendant UI elements.

## Declaration

```swift
@MainActor protocol XCUIElementTypeQueryProvider
```

## Overview

Overview Accessing the properties to get queries for descendant elements on an instance of a conforming class (such as an XCUIElement or XCUIElementQuery instance) is equivalent to calling descendants(matching:) for the corresponding element type.

## Topics

### Finding the first matching element

- [firstMatch](xcuiautomation/xcuielementtypequeryprovider/firstmatch.md)

### Querying descendant elements

- [activityIndicators](xcuiautomation/xcuielementtypequeryprovider/activityindicators.md)
- [alerts](xcuiautomation/xcuielementtypequeryprovider/alerts.md)
- [browsers](xcuiautomation/xcuielementtypequeryprovider/browsers.md)
- [buttons](xcuiautomation/xcuielementtypequeryprovider/buttons.md)
- [cells](xcuiautomation/xcuielementtypequeryprovider/cells.md)
- [checkBoxes](xcuiautomation/xcuielementtypequeryprovider/checkboxes.md)
- [collectionViews](xcuiautomation/xcuielementtypequeryprovider/collectionviews.md)
- [colorWells](xcuiautomation/xcuielementtypequeryprovider/colorwells.md)
- [comboBoxes](xcuiautomation/xcuielementtypequeryprovider/comboboxes.md)
- [datePickers](xcuiautomation/xcuielementtypequeryprovider/datepickers.md)
- [decrementArrows](xcuiautomation/xcuielementtypequeryprovider/decrementarrows.md)
- [dialogs](xcuiautomation/xcuielementtypequeryprovider/dialogs.md)
- [disclosureTriangles](xcuiautomation/xcuielementtypequeryprovider/disclosuretriangles.md)
- [disclosedChildRows](xcuiautomation/xcuielementtypequeryprovider/disclosedchildrows.md)
- [dockItems](xcuiautomation/xcuielementtypequeryprovider/dockitems.md)
- [drawers](xcuiautomation/xcuielementtypequeryprovider/drawers.md)
- [grids](xcuiautomation/xcuielementtypequeryprovider/grids.md)
- [groups](xcuiautomation/xcuielementtypequeryprovider/groups.md)
- [handles](xcuiautomation/xcuielementtypequeryprovider/handles.md)
- [helpTags](xcuiautomation/xcuielementtypequeryprovider/helptags.md)
- [icons](xcuiautomation/xcuielementtypequeryprovider/icons.md)
- [images](xcuiautomation/xcuielementtypequeryprovider/images.md)
- [incrementArrows](xcuiautomation/xcuielementtypequeryprovider/incrementarrows.md)
- [keyboards](xcuiautomation/xcuielementtypequeryprovider/keyboards.md)
- [keys](xcuiautomation/xcuielementtypequeryprovider/keys.md)
- [layoutAreas](xcuiautomation/xcuielementtypequeryprovider/layoutareas.md)
- [layoutItems](xcuiautomation/xcuielementtypequeryprovider/layoutitems.md)
- [levelIndicators](xcuiautomation/xcuielementtypequeryprovider/levelindicators.md)
- [links](xcuiautomation/xcuielementtypequeryprovider/links.md)
- [maps](xcuiautomation/xcuielementtypequeryprovider/maps.md)
- [mattes](xcuiautomation/xcuielementtypequeryprovider/mattes.md)
- [menuBarItems](xcuiautomation/xcuielementtypequeryprovider/menubaritems.md)
- [menuBars](xcuiautomation/xcuielementtypequeryprovider/menubars.md)
- [menuButtons](xcuiautomation/xcuielementtypequeryprovider/menubuttons.md)
- [menuItems](xcuiautomation/xcuielementtypequeryprovider/menuitems.md)
- [menus](xcuiautomation/xcuielementtypequeryprovider/menus.md)
- [navigationBars](xcuiautomation/xcuielementtypequeryprovider/navigationbars.md)
- [otherElements](xcuiautomation/xcuielementtypequeryprovider/otherelements.md)
- [outlineRows](xcuiautomation/xcuielementtypequeryprovider/outlinerows.md)
- [outlines](xcuiautomation/xcuielementtypequeryprovider/outlines.md)
- [pageIndicators](xcuiautomation/xcuielementtypequeryprovider/pageindicators.md)
- [pickerWheels](xcuiautomation/xcuielementtypequeryprovider/pickerwheels.md)
- [pickers](xcuiautomation/xcuielementtypequeryprovider/pickers.md)
- [popUpButtons](xcuiautomation/xcuielementtypequeryprovider/popupbuttons.md)
- [popovers](xcuiautomation/xcuielementtypequeryprovider/popovers.md)
- [progressIndicators](xcuiautomation/xcuielementtypequeryprovider/progressindicators.md)
- [radioButtons](xcuiautomation/xcuielementtypequeryprovider/radiobuttons.md)
- [radioGroups](xcuiautomation/xcuielementtypequeryprovider/radiogroups.md)
- [ratingIndicators](xcuiautomation/xcuielementtypequeryprovider/ratingindicators.md)
- [relevanceIndicators](xcuiautomation/xcuielementtypequeryprovider/relevanceindicators.md)
- [rulerMarkers](xcuiautomation/xcuielementtypequeryprovider/rulermarkers.md)
- [rulers](xcuiautomation/xcuielementtypequeryprovider/rulers.md)
- [scrollBars](xcuiautomation/xcuielementtypequeryprovider/scrollbars.md)
- [scrollViews](xcuiautomation/xcuielementtypequeryprovider/scrollviews.md)
- [searchFields](xcuiautomation/xcuielementtypequeryprovider/searchfields.md)
- [secureTextFields](xcuiautomation/xcuielementtypequeryprovider/securetextfields.md)
- [segmentedControls](xcuiautomation/xcuielementtypequeryprovider/segmentedcontrols.md)
- [sheets](xcuiautomation/xcuielementtypequeryprovider/sheets.md)
- [sliders](xcuiautomation/xcuielementtypequeryprovider/sliders.md)
- [splitGroups](xcuiautomation/xcuielementtypequeryprovider/splitgroups.md)
- [splitters](xcuiautomation/xcuielementtypequeryprovider/splitters.md)
- [staticTexts](xcuiautomation/xcuielementtypequeryprovider/statictexts.md)
- [statusBars](xcuiautomation/xcuielementtypequeryprovider/statusbars.md)
- [statusItems](xcuiautomation/xcuielementtypequeryprovider/statusitems.md)
- [steppers](xcuiautomation/xcuielementtypequeryprovider/steppers.md)
- [switches](xcuiautomation/xcuielementtypequeryprovider/switches.md)
- [tabBars](xcuiautomation/xcuielementtypequeryprovider/tabbars.md)
- [tabGroups](xcuiautomation/xcuielementtypequeryprovider/tabgroups.md)
- [tableColumns](xcuiautomation/xcuielementtypequeryprovider/tablecolumns.md)
- [tableRows](xcuiautomation/xcuielementtypequeryprovider/tablerows.md)
- [tables](xcuiautomation/xcuielementtypequeryprovider/tables.md)
- [tabs](xcuiautomation/xcuielementtypequeryprovider/tabs.md)
- [textFields](xcuiautomation/xcuielementtypequeryprovider/textfields.md)
- [textViews](xcuiautomation/xcuielementtypequeryprovider/textviews.md)
- [timelines](xcuiautomation/xcuielementtypequeryprovider/timelines.md)
- [toggles](xcuiautomation/xcuielementtypequeryprovider/toggles.md)
- [toolbarButtons](xcuiautomation/xcuielementtypequeryprovider/toolbarbuttons.md)
- [toolbars](xcuiautomation/xcuielementtypequeryprovider/toolbars.md)
- [touchBars](xcuiautomation/xcuielementtypequeryprovider/touchbars.md)
- [valueIndicators](xcuiautomation/xcuielementtypequeryprovider/valueindicators.md)
- [webViews](xcuiautomation/xcuielementtypequeryprovider/webviews.md)
- [windows](xcuiautomation/xcuielementtypequeryprovider/windows.md)

## Relationships

### Conforming Types

- [XCUIApplication](xcuiautomation/xcuiapplication.md)
- [XCUIElement](xcuiautomation/xcuielement.md)
- [XCUIElementQuery](xcuiautomation/xcuielementquery.md)
- [XCUISiriService](xcuiautomation/xcuisiriservice.md)

## See Also

### UI element queries

- [XCUIElementQuery](xcuiautomation/xcuielementquery.md)
