import type { SetupContext } from 'vue'; import type { CarouselItemContext } from './constants'; import type { CarouselEmits, CarouselProps } from './carousel'; export declare const useCarousel: (props: CarouselProps, emit: SetupContext['emit'], componentName: string) => { root: import("vue").Ref; activeIndex: import("vue").Ref; arrowDisplay: import("vue").ComputedRef; hasLabel: import("vue").ComputedRef; hover: import("vue").Ref; isCardType: import("vue").ComputedRef; isTransitioning: import("vue").Ref; items: import("vue").ShallowRef; isVertical: import("vue").ComputedRef; containerStyle: import("vue").ComputedRef<{ height: string; overflow?: undefined; } | { height: string; overflow: string; }>; isItemsTwoLength: import("vue").Ref; handleButtonEnter: (arrow: 'left' | 'right') => void; handleTransitionEnd: () => void; handleButtonLeave: () => void; handleIndicatorClick: (index: number) => void; handleMouseEnter: () => void; handleMouseLeave: () => void; setActiveItem: (index: number | string) => void; prev: () => void; next: () => void; PlaceholderItem: () => (import("element-plus/es/utils").VNodeChildAtom | { [name: string]: unknown; $stable?: boolean | undefined; })[] | null; isTwoLengthShow: (index: number) => boolean; throttledArrowClick: import("lodash").DebouncedFunc<(index: number) => void>; throttledIndicatorHover: import("lodash").DebouncedFunc<(index: number) => void>; };