'use client'; import type * as React from 'react'; export type SnapAlign = 'start' | 'center' | 'end' | 'none'; export interface ScrollerContextValue { containerRef: React.RefObject; orientation: 'horizontal' | 'vertical'; } export interface ScrollerProps extends React.HTMLAttributes { children: React.ReactNode; /** Scroll direction */ orientation?: 'horizontal' | 'vertical'; /** Snap scroll to items */ snap?: boolean; /** Snap alignment */ snapAlign?: SnapAlign; /** Show scroll indicators (shadows/arrows) */ showIndicators?: boolean; /** Hide scrollbar visually */ hideScrollbar?: boolean; } export interface ScrollerItemProps extends React.HTMLAttributes { children: React.ReactNode; /** Snap alignment for this item (overrides parent) */ snapAlign?: SnapAlign; } export interface ScrollerIndicatorProps { direction: 'prev' | 'next'; onClick: () => void; disabled?: boolean; className?: string; }