> For the complete documentation index, see [llms.txt](https://robertos-organization-13.gitbook.io/geoflowlive/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://robertos-organization-13.gitbook.io/geoflowlive/basics/editor/images-and-media.md).

# Enums

Available enums

**GeoFlowLive** utilizes enumerations (enums) to provide a defined set of possible values for certain configuration options and status indicators. Using these enums ensures type safety and improves code readability. The following enums are available in the **GeoFlowLive** library:

### GeoFlowLiveLocationAccuracy Enum

The **`GeoFlowLiveIOSActivityType`** enum informs the iOS system about the type of activity the application is performing. This allows the system to optimize location updates for the specific use case.

| **Value**              | **Description**                                                                                                                         |
| ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| airborne               | The application is tracking location for an airborne activity (e.g., flying).                                                           |
| automotive\_navigation | The application is tracking location for automotive navigation.                                                                         |
| fitness                | The application is tracking location for fitness activities (e.g., running, cycling).                                                   |
| other                  | The application is tracking location for a purpose that doesn't fit any of the other activity types.                                    |
| other\_navigation      | The application is tracking location for navigation purposes, but not specifically automotive navigation (e.g., pedestrian navigation). |

### GeoFlowLiveLocationServiceStatus Enum

The **`GeoFlowLiveLocationServiceStatus`** enum indicates whether location services are currently enabled on the device.

| **Value** | **Description**                               |
| --------- | --------------------------------------------- |
| disabled  | Location services are disabled on the device. |
| enabled   | Location services are enabled on the device.  |

###

### GeoFlowLivePermission Enum

The **`GeoFlowLivePermission`** enum indicates the current permission status granted to the app for accessing location.

| **Value**             | **Description**                                                        |
| --------------------- | ---------------------------------------------------------------------- |
| always                | The app has been granted permission to access location at all times.   |
| while\_in\_use        | The app has permission to access location only while it is being used. |
| denied                | The user has denied the app permission to access location.             |
| denied\_forever       | The user has denied the app permission to access location permanently. |
| unable\_to\_determine | The app is unable to determine the location permission status.         |

{% hint style="info" %}
When implementing conditional logic based on location accuracy, activity type, or service status, **always** use the **`GeoFlowLiveLocationAccuracy`**, **`GeoFlowLiveIOSActivityType`**, **`GeoFlowLiveLocationServiceStatus`**, and **`GeoFlowLivePermission`** enums directly. Comparing against the enum values (e.g., `myLocationAccuracy == GeoFlowLiveLocationAccuracy.high`) prevents errors caused by typos or incorrect string comparisons, ensuring the robustness and maintainability of your FlutterFlow application.
{% endhint %}
