import { Button } from "./button.js";
import * as React$1 from "react";
import * as react_jsx_runtime55 from "react/jsx-runtime";
import useEmblaCarousel, { UseEmblaCarouselType } from "embla-carousel-react";

//#region src/react/ui/carousel.d.ts
type CarouselApi = UseEmblaCarouselType[1];
type UseCarouselParameters = Parameters<typeof useEmblaCarousel>;
type CarouselOptions = UseCarouselParameters[0];
type CarouselPlugin = UseCarouselParameters[1];
type CarouselProps = {
  opts?: CarouselOptions;
  plugins?: CarouselPlugin;
  orientation?: "horizontal" | "vertical";
  setApi?: (api: CarouselApi) => void;
};
/** Slideshow component for cycling through content with navigation controls */
declare function Carousel({
  orientation,
  opts,
  setApi,
  plugins,
  className,
  children,
  ...props
}: React$1.ComponentProps<"div"> & CarouselProps): react_jsx_runtime55.JSX.Element;
/** Container for carousel slides with horizontal or vertical scrolling */
declare function CarouselContent({
  className,
  ...props
}: React$1.ComponentProps<"div">): react_jsx_runtime55.JSX.Element;
/** Individual slide within the carousel */
declare function CarouselItem({
  className,
  ...props
}: React$1.ComponentProps<"div">): react_jsx_runtime55.JSX.Element;
/** Button to navigate to the previous carousel slide */
declare function CarouselPrevious({
  className,
  variant,
  size,
  ...props
}: React$1.ComponentProps<typeof Button>): react_jsx_runtime55.JSX.Element;
/** Button to navigate to the next carousel slide */
declare function CarouselNext({
  className,
  variant,
  size,
  ...props
}: React$1.ComponentProps<typeof Button>): react_jsx_runtime55.JSX.Element;
//#endregion
export { Carousel, type CarouselApi, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious };
//# sourceMappingURL=carousel.d.ts.map