---
title: ContactItemPage
framework: ContactProvider
role: symbol
role_heading: Structure
platforms: [iOS 18.0+, iPadOS 18.0+]
path: contactprovider/contactitempage
---

# ContactItemPage

A fixed offset into enumerating all contact items.

## Declaration

```swift
struct ContactItemPage
```

## Overview

Overview You can break an enumeration of all contact items into multiple pages to reduce the memory constraints on the system. During the enumeration, the generationMarker must not change. Update the offset to reflect progress so you can resume the enumeration.

## Topics

### Creating a contact item page

- [init(generationMarker:offset:)](contactprovider/contactitempage/init(generationmarker:offset:).md)

### Supporting paging

- [generationMarker](contactprovider/contactitempage/generationmarker.md)
- [offset](contactprovider/contactitempage/offset.md)
- [initialPage](contactprovider/contactitempage/initialpage.md)

## Relationships

### Conforms To

- [Decodable](swift/decodable.md)
- [Encodable](swift/encodable.md)
- [Equatable](swift/equatable.md)

## See Also

### Ending enumeration

- [didFinishEnumeratingContent(upTo:)](contactprovider/contactitemcontentobserver/didfinishenumeratingcontent(upto:).md)
- [didFinishEnumeratingPage(upTo:)](contactprovider/contactitemcontentobserver/didfinishenumeratingpage(upto:).md)
- [didFinishEnumeratingContentWithError(_:)](contactprovider/contactitemcontentobserver/didfinishenumeratingcontentwitherror(_:).md)
