/** * Copyright IBM Corp. 2023, 2023 * * This source code is licensed under the Apache-2.0 license found in the * LICENSE file in the root directory of this source tree. */ import React, { ReactNode } from 'react'; export interface CarouselProps { /** * Provide the contents of the Carousel. */ children: ReactNode; /** * Provide an optional class to be applied to the containing node. */ className?: string; /** * Disables the ability of the Carousel to scroll * use a keyboard's left and right arrow keys. */ disableArrowScroll?: boolean; /** * Enables the edges of the component to have faded styling. * * Pass a single string (`$color`) to specify the same color for left and right. * * Or pass an object (`{ left: $color1, right: $color2 }`) to specify different colors. */ fadedEdgeColor?: string | { left: string; right: string; }; /** * An optional callback function that returns `true` * when the carousel has enough content to be scrollable, * and `false` when there is not enough content. */ onChangeIsScrollable?: (isScrollable: boolean) => void; /** * An optional callback function that returns the scroll position as * a value between 0 and 1. */ onScroll?: (scrollPercent: number) => void; /** * Additional props passed to the component. */ [key: string]: any; /** * enable scroll mode when only scroll functionality is required, more than one items will be visible at a time * when isScrollMode is false, component behaves like a carousal and on item will be active at a time * and other items will be hidden and inactive. */ isScrollMode?: boolean; /** *This overrides the default behavior of resetting scrollLeft to 0 on resize. */ disableResetOnResize?: boolean; } /** * The Carousel acts as a scaffold for other Onboarding content. * * This component is not intended for general use. * * Expected scrolling behavior. * 1. Scroll the maximum number of visible items at a time. * 2. The left-most item should always be left-aligned in the viewport. * * Exception. * 1. After scrolling to the last (right-most) item, * if some of its content remains hidden, * then nudge it to the right until it is right-aligned. * 2. From the right-aligned position, when scrolling left, * the left-most item should again be left-aligned. */ declare const Carousel: React.ForwardRefExoticComponent & React.RefAttributes>; export { Carousel }; //# sourceMappingURL=Carousel.d.ts.map