# TerminalSeparatorType

Artifact: [androidx.paging:paging-common](https://developer.android.com/jetpack/androidx/releases/paging) [View Source](https://cs.android.com/search?q=file:androidx/paging/Separators.kt+class:androidx.paging.TerminalSeparatorType) Added in [3.0.0](https://developer.android.com/jetpack/androidx/releases/paging#3.0.0)

*** ** * ** ***

Common/AllAndroid/JVMNative/C/iOSJavaScript
- Cmn

  ```
  enum TerminalSeparatorType : Enum<TerminalSeparatorType>
  ```

|---|---|---|
| [kotlin.Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) |||
| ↳ | [kotlin.Enum](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-enum/index.html)\<[TerminalSeparatorType](https://developer.android.com/reference/kotlin/androidx/paging/TerminalSeparatorType)\> ||
|   | ↳ | [androidx.paging.TerminalSeparatorType](https://developer.android.com/reference/kotlin/androidx/paging/TerminalSeparatorType) |

*** ** * ** ***

Mode for configuring when terminal separators (header and footer) would be displayed by the `https://developer.android.com/reference/kotlin/androidx/paging/package-summary#(androidx.paging.PagingData).insertSeparators(androidx.paging.TerminalSeparatorType,kotlin.coroutines.SuspendFunction2)`, `https://developer.android.com/reference/kotlin/androidx/paging/package-summary#(androidx.paging.PagingData).insertHeaderItem(androidx.paging.TerminalSeparatorType,kotlin.Any)` or `https://developer.android.com/reference/kotlin/androidx/paging/package-summary#(androidx.paging.PagingData).insertFooterItem(androidx.paging.TerminalSeparatorType,kotlin.Any)` operators on `https://developer.android.com/reference/kotlin/androidx/paging/PagingData`.

## Summary

| ### Enum Values |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/paging/TerminalSeparatorType#FULLY_COMPLETE` | Show terminal separators (header and footer) when both `https://developer.android.com/reference/kotlin/androidx/paging/PagingSource` and `https://developer.android.com/reference/kotlin/androidx/paging/RemoteMediator` reaches the end of pagination. |
| `https://developer.android.com/reference/kotlin/androidx/paging/TerminalSeparatorType#SOURCE_COMPLETE` | Show terminal separators (header and footer) as soon as `https://developer.android.com/reference/kotlin/androidx/paging/PagingSource` reaches the end of pagination, regardless of `https://developer.android.com/reference/kotlin/androidx/paging/RemoteMediator`'s state. |

| ### Public functions |
|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/paging/TerminalSeparatorType` | `https://developer.android.com/reference/kotlin/androidx/paging/TerminalSeparatorType#valueOf(kotlin.String)(value: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` Returns the enum constant of this type with the specified name. | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://developer.android.com/reference/kotlin/androidx/paging/TerminalSeparatorType>` | `https://developer.android.com/reference/kotlin/androidx/paging/TerminalSeparatorType#values()()` Returns an array containing the constants of this enum type, in the order they're declared. | Cmn |

| ### Public properties |
|---|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.enums/-enum-entries/index.html<https://developer.android.com/reference/kotlin/androidx/paging/TerminalSeparatorType>` | `https://developer.android.com/reference/kotlin/androidx/paging/TerminalSeparatorType#entries()` Returns an immutable `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.enums/-enum-entries/index.html` list containing the constants of this enum type, in the order they're declared. | Cmn |

## Enum Values

### FULLY_COMPLETE

```
val TerminalSeparatorType.FULLY_COMPLETE: TerminalSeparatorType
```

Show terminal separators (header and footer) when both `https://developer.android.com/reference/kotlin/androidx/paging/PagingSource` and `https://developer.android.com/reference/kotlin/androidx/paging/RemoteMediator` reaches the end of pagination.

End of paginations occurs when `https://developer.android.com/reference/kotlin/androidx/paging/CombinedLoadStates` has set `https://developer.android.com/reference/kotlin/androidx/paging/LoadState#endOfPaginationReached()` to `true` for both `https://developer.android.com/reference/kotlin/androidx/paging/CombinedLoadStates#source()` and `https://developer.android.com/reference/kotlin/androidx/paging/CombinedLoadStates#mediator()` in the `https://developer.android.com/reference/kotlin/androidx/paging/LoadType#PREPEND` direction for the header and in the `https://developer.android.com/reference/kotlin/androidx/paging/LoadType#APPEND` direction for the footer.

In cases where `https://developer.android.com/reference/kotlin/androidx/paging/RemoteMediator` isn't used, only `https://developer.android.com/reference/kotlin/androidx/paging/CombinedLoadStates#source()` will be considered.

### SOURCE_COMPLETE

```
val TerminalSeparatorType.SOURCE_COMPLETE: TerminalSeparatorType
```

Show terminal separators (header and footer) as soon as `https://developer.android.com/reference/kotlin/androidx/paging/PagingSource` reaches the end of pagination, regardless of `https://developer.android.com/reference/kotlin/androidx/paging/RemoteMediator`'s state.

End of paginations occurs when `https://developer.android.com/reference/kotlin/androidx/paging/CombinedLoadStates` has set `https://developer.android.com/reference/kotlin/androidx/paging/LoadState#endOfPaginationReached()` to `true` for `https://developer.android.com/reference/kotlin/androidx/paging/CombinedLoadStates#source()` in the `https://developer.android.com/reference/kotlin/androidx/paging/LoadType#PREPEND` direction for the header and in the `https://developer.android.com/reference/kotlin/androidx/paging/LoadType#APPEND` direction for the footer.

## Public functions

### valueOf

Cmn Added in [3.0.0](https://developer.android.com/jetpack/androidx/releases/paging#3.0.0)

```
fun valueOf(value: String): TerminalSeparatorType
```

Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

| Throws |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-illegal-argument-exception/index.html` | if this enum type has no constant with the specified name |

### values

Cmn Added in [3.0.0](https://developer.android.com/jetpack/androidx/releases/paging#3.0.0)

```
fun values(): Array<TerminalSeparatorType>
```

Returns an array containing the constants of this enum type, in the order they're declared.

This method may be used to iterate over the constants.

The function returns a new instance of the array on every call. The array could be mutated, so working with it may also require defensive copying. Consider using `entries` property as a more efficient alternative returning an immutable list of enum entries.

## Public properties

### entries

Cmn

```
val entries: EnumEntries<TerminalSeparatorType>
```

Returns an immutable `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.enums/-enum-entries/index.html` list containing the constants of this enum type, in the order they're declared.