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; 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; 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; })[] | null; isTwoLengthShow: (index: number) => boolean; ItemsSorter: import("vue").DefineComponent<{}, () => import("vue").VNode | null, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly>, {}>; throttledArrowClick: import("lodash").DebouncedFunc<(index: number) => void>; throttledIndicatorHover: import("lodash").DebouncedFunc<(index: number) => void>; };