import { MaybeAccessor } from '@solidjs-use/shared'; import { Signal, Accessor, Setter } from 'solid-js'; interface UseCycleListOptions { /** * The initial value of the state. * A Accessor can be provided to reuse. */ initialValue?: MaybeAccessor | Signal; /** * The default index when */ fallbackIndex?: number; /** * Custom function to get the index of the current value. */ getIndexOf?: (value: T, list: T[]) => number; } /** * Cycle through a list of items. * * @see https://solidjs-use.github.io/solidjs-use/core/useCycleList */ declare function useCycleList(list: MaybeAccessor, options?: UseCycleListOptions): UseCycleListReturn; interface UseCycleListReturn { state: Accessor; setState: Setter; index: Accessor; setIndex: (i: number) => T; next: (n?: number) => T; prev: (n?: number) => T; } export { UseCycleListOptions, UseCycleListReturn, useCycleList };