export type { PauseStatusDetails as MarqueePauseStatusDetails, Side as MarqueeSide } from '@zag-js/marquee'
export { MarqueeContent, type MarqueeContentBaseProps, type MarqueeContentProps } from './marquee-content.tsx'
export { MarqueeContext, type MarqueeContextProps } from './marquee-context.tsx'
export { MarqueeEdge, type MarqueeEdgeBaseProps, type MarqueeEdgeProps } from './marquee-edge.tsx'
export { MarqueeItem, type MarqueeItemBaseProps, type MarqueeItemProps } from './marquee-item.tsx'
export { MarqueeRoot, type MarqueeRootBaseProps, type MarqueeRootProps } from './marquee-root.tsx'
export {
  MarqueeRootProvider,
  type MarqueeRootProviderBaseProps,
  type MarqueeRootProviderProps,
} from './marquee-root-provider.tsx'
export { MarqueeViewport, type MarqueeViewportBaseProps, type MarqueeViewportProps } from './marquee-viewport.tsx'
export { marqueeAnatomy } from './marquee.anatomy.ts'
export { useMarquee, type UseMarqueeProps, type UseMarqueeReturn } from './use-marquee.ts'
export { useMarqueeContext, type UseMarqueeContext } from './use-marquee-context.ts'

export * as Marquee from './marquee.ts'
