---
title: "TimePickerState"
description: "A state object that can be hoisted to observe the time picker state. It holds the current values
and allows for directly setting those values."
type: "interface"
---

<div class='type'>Interface</div>


<a id='references'></a>

<div class='sourceset sourceset-common'>Common</div>



```kotlin
interface TimePickerState
```


A state object that can be hoisted to observe the time picker state. It holds the current values
and allows for directly setting those values.


## Properties

<div class='sourceset sourceset-common'>Common</div>


```kotlin
@get:IntRange(from = 0, to = 59) @setparam:IntRange(from = 0, to = 59) var minute: Int
```


The currently selected minute (0-59).



<div class='sourceset sourceset-common'>Common</div>


```kotlin
@get:IntRange(from = 0, to = 23) @setparam:IntRange(from = 0, to = 23) var hour: Int
```


The currently selected hour (0-23).



<div class='sourceset sourceset-common'>Common</div>


```kotlin
@get:IntRange(from = 0)
var hourInput: Int
```


The input for the hour. UI should be bound to this value. The default implementation
validates the new value and updates `hour` if it's valid.



<div class='sourceset sourceset-common'>Common</div>


```kotlin
@get:IntRange(from = 0)
var minuteInput: Int
```


The raw input for the minute. UI should be bound to this value. The default implementation
validates the new value and updates `minute` if it's valid.



<div class='sourceset sourceset-common'>Common</div>


```kotlin
var is24hour: Boolean
```


Indicates whether the time picker uses 24-hour format (`true`) or 12-hour format with AM/PM
(`false`).



<div class='sourceset sourceset-common'>Common</div>


```kotlin
var selection: TimePickerSelectionMode
```


Specifies whether the hour or minute component is being actively selected by the user.




