@payfit/unity-components
Version:
22 lines (21 loc) • 833 B
TypeScript
import { EmblaCarouselType } from 'embla-carousel';
import { KeyboardEvent, RefObject } from 'react';
export interface UseCarouselAccessibilityOptions {
api: EmblaCarouselType | undefined;
visibleSlideIndexes: ReadonlySet<number>;
focusedSlideIndex: number | null;
loop?: boolean;
goToSlide: (slideIndex: number) => void;
}
export interface UseCarouselAccessibilityReturn {
liveRegionRef: RefObject<HTMLDivElement>;
a11yIds: {
root: string;
track: string;
previousButton: string;
nextButton: string;
title: string;
};
onKeyDown: (e: KeyboardEvent<HTMLDivElement>) => void;
}
export declare function useCarouselAccessibility({ api, visibleSlideIndexes, focusedSlideIndex, loop, goToSlide, }: UseCarouselAccessibilityOptions): UseCarouselAccessibilityReturn;