//[tvlib](../../index.md)/[org.mjdev.tvlib.ui.components.carousel](index.md)
# Package-level declarations
## Types
| Name | Summary |
|---|---|
| [CarouselDefaults](-carousel-defaults/index.md) | [androidJvm]
object [CarouselDefaults](-carousel-defaults/index.md) |
| [CarouselState](-carousel-state/index.md) | [androidJvm]
@[Stable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Stable.html)
class [CarouselState](-carousel-state/index.md)(initialActiveItemIndex: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) = 0) |
| [ModifierExt](-modifier-ext/index.md) | [androidJvm]
object [ModifierExt](-modifier-ext/index.md) |
## Functions
| Name | Summary |
|---|---|
| [AutoScrollSideEffect](-auto-scroll-side-effect.md) | [androidJvm]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
fun [AutoScrollSideEffect](-auto-scroll-side-effect.md)(autoScrollDurationMillis: [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html), itemCount: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html), carouselState: [CarouselState](-carousel-state/index.md), doAutoScroll: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), onAutoScrollChange: (isAutoScrollActive: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)? = null) |
| [BigCarousel](-big-carousel.md) | [androidJvm]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
fun [BigCarousel](-big-carousel.md)(modifier: [Modifier](https://developer.android.com/reference/kotlin/androidx/compose/ui/Modifier.html) = Modifier, items: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)<[Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?> = listOf(Unit, Unit, Unit), autoScrollDurationMillis: [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html) = 8000, carouselState: [CarouselState](-carousel-state/index.md) = remember(items) { CarouselState() }, onItemSelected: (movie: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?, fromUser: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)? = null, onItemClicked: (movie: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)? = null, onSwipeUp: (dragAmount: [Offset](https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Offset.html)) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)? = null, onSwipeDown: (dragAmount: [Offset](https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Offset.html)) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)? = null) |
| [Carousel](-carousel.md) | [androidJvm]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
fun [Carousel](-carousel.md)(modifier: [Modifier](https://developer.android.com/reference/kotlin/androidx/compose/ui/Modifier.html) = Modifier, itemCount: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) = 0, carouselState: [CarouselState](-carousel-state/index.md) = remember(itemCount) { CarouselState() }, autoScrollDurationMillis: [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html) = CarouselDefaults.TimeToDisplayItemMillis, contentTransformStartToEnd: [ContentTransform](https://developer.android.com/reference/kotlin/androidx/compose/animation/ContentTransform.html) = CarouselDefaults.contentTransform, contentTransformEndToStart: [ContentTransform](https://developer.android.com/reference/kotlin/androidx/compose/animation/ContentTransform.html) = CarouselDefaults.contentTransform, carouselIndicator: @[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)[BoxScope](https://developer.android.com/reference/kotlin/androidx/compose/foundation/layout/BoxScope.html).() -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) = { CarouselDefaults.IndicatorRow( itemCount = itemCount, activeItemIndex = carouselState.activeItemIndex, modifier = Modifier .align(Alignment.BottomEnd) .padding(16.dp), ) }, isAutoScrollActive: [MutableState](https://developer.android.com/reference/kotlin/androidx/compose/runtime/MutableState.html)<[Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)> = remember(itemCount) { mutableStateOf(false) }, focusState: [MutableState](https://developer.android.com/reference/kotlin/androidx/compose/runtime/MutableState.html)<[FocusState](https://developer.android.com/reference/kotlin/androidx/compose/ui/focus/FocusState.html)> = remember(itemCount) { mutableStateOf(FocusHelper(false)) }, content: @[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)[AnimatedContentScope](https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentScope.html).(index: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) = {}) |
| [CarouselCard](-carousel-card.md) | [androidJvm]
@[Composable](https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable.html)
fun [CarouselCard](-carousel-card.md)(item: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)? = null, modifier: [Modifier](https://developer.android.com/reference/kotlin/androidx/compose/ui/Modifier.html) = Modifier, contentScale: [ContentScale](https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ContentScale.html) = ContentScale.Crop, scale: [CardScale](https://developer.android.com/reference/kotlin/androidx/tv/material3/CardScale.html) = CardScale.None, focused: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) = isEditMode(), focusState: [MutableState](https://developer.android.com/reference/kotlin/androidx/compose/runtime/MutableState.html)<[FocusState](https://developer.android.com/reference/kotlin/androidx/compose/ui/focus/FocusState.html)> = rememberFocusState( item, FocusHelper(focused) ), titlePadding: [PaddingValues](https://developer.android.com/reference/kotlin/androidx/compose/foundation/layout/PaddingValues.html) = PaddingValues(8.dp, 12.dp, 8.dp, 12.dp), onFocus: (item: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?, fromUser: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)? = null, onClick: (item: [Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)?) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)? = null) |