---
title: IntentModes
framework: appintents
role: symbol
role_heading: Structure
path: appintents/intentmodes
---

# IntentModes

A set of options you use to configure the runtime behavior of an app intent.

## Declaration

```swift
struct IntentModes
```

## Overview

Overview This structure defines the mode values you can assign to the supportedModes property of your app intent. Intent modes indicate whether your app needs to run in the foreground or background when performing the app intent’s action. For example, the foreground mode requires your app intent code to run in a foreground process. At runtime, an app intent’s systemContext property also contains information about whether the process is currently running in the foreground or background. Use that information to make additional decisions about how to perform the action. For more information, see the IntentModes.Current type.

## Topics

### Structures

- [IntentModes.Current](appintents/intentmodes/current.md)
- [IntentModes.ForegroundMode](appintents/intentmodes/foregroundmode.md)

### Type Properties

- [background](appintents/intentmodes/background.md)
- [foreground](appintents/intentmodes/foreground.md)

### Type Methods

- [foreground(_:)](appintents/intentmodes/foreground(_:).md)

## Relationships

### Conforms To

- [Equatable](swift/equatable.md)
- [ExpressibleByArrayLiteral](swift/expressiblebyarrayliteral.md)
- [Hashable](swift/hashable.md)
- [OptionSet](swift/optionset.md)
- [RawRepresentable](swift/rawrepresentable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)
- [SetAlgebra](swift/setalgebra.md)

## See Also

### Intent-related data

- [IntentSystemContext](appintents/intentsystemcontext.md)
- [IntentDescription](appintents/intentdescription.md)
- [IntentDialog](appintents/intentdialog.md)
- [IntentDeprecation](appintents/intentdeprecation.md)
- [IntentProjection](appintents/intentprojection.md)
