---
title: ProgressKind
framework: foundation
role: symbol
role_heading: Structure
path: foundation/progresskind
---

# ProgressKind

An object that represents the kind of progress.

## Declaration

```swift
struct ProgressKind
```

## Discussion

Discussion When tracking file operations with the progress kind set to file, provide a value for the fileOperationKindKey in the user info dictionary. To specify the kind of file operation, provide one of the following values: copying decompressingAfterDownloading downloading uploading receiving

## Topics

### Creating Kinds of Progress

- [init(_:)](foundation/progresskind/init(_:).md)
- [init(rawValue:)](foundation/progresskind/init(rawvalue:).md)

### Recognizing Kinds of Progress

- [file](foundation/progresskind/file.md)

## Relationships

### Conforms To

- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [RawRepresentable](swift/rawrepresentable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Inspecting Progress Information

- [kind](foundation/progress/kind.md)
- [estimatedTimeRemaining](foundation/progress/estimatedtimeremaining.md)
- [throughput](foundation/progress/throughput.md)
- [setUserInfoObject(_:forKey:)](foundation/progress/setuserinfoobject(_:forkey:).md)
- [userInfo](foundation/progress/userinfo.md)
- [ProgressUserInfoKey](foundation/progressuserinfokey.md)
