---
title: HistoryProviding
framework: swiftdata
role: symbol
role_heading: Protocol
path: swiftdata/historyproviding
---

# HistoryProviding

An interface that enables a custom data store to provide the history of changes for its persisted models.

## Declaration

```swift
protocol HistoryProviding
```

## Topics

### Processing history fetch requests

- [fetchHistory(_:)](swiftdata/historyproviding/fetchhistory(_:).md)

### Deleting history

- [deleteHistory(_:)](swiftdata/historyproviding/deletehistory(_:).md)

### Getting the history transaction type

- [HistoryType](swiftdata/historyproviding/historytype-swift.associatedtype.md)

### Type Properties

- [historyType](swiftdata/historyproviding/historytype-swift.type.property.md)

## Relationships

### Conforming Types

- [DefaultStore](swiftdata/defaultstore.md)

## See Also

### Model storage

- [Maintaining a local copy of server data](swiftdata/maintaining-a-local-copy-of-server-data.md)
- [DefaultStore](swiftdata/defaultstore.md)
- [DataStore](swiftdata/datastore.md)
- [DataStoreBatching](swiftdata/datastorebatching.md)
- [Building a document-based app using SwiftData](swiftui/building-a-document-based-app-using-swiftdata.md)
- [ModelDocument](swiftdata/modeldocument.md)
