import { type SharedValue, type Define } from '@sigx/lynx'; export type ScrollViewProps = Define.Prop<'offsetX', SharedValue, false> & Define.Prop<'offsetY', SharedValue, false> & Define.Prop<'scroll-orientation', 'vertical' | 'horizontal', false> /** * Toggle native scroll responsiveness at runtime — set false to lock the * scroll-view (e.g. while a child `` is mid-drag, so Lynx's * native pan gesture doesn't steal the touch). Maps to Lynx's * `enable-scroll` attribute. */ & Define.Prop<'enable-scroll', boolean, false> & Define.Prop<'class', string, false> & Define.Prop<'style', Record, false> & Define.Slot<'default'>; /** * MT-thread `` wrapper that mirrors scroll position into a * `SharedValue`. Pair with `useAnimatedStyle` for parallax / fade / scale * effects driven by scroll, all running on MT with zero per-frame thread * crossings. * * The component is the API; the inline `'main thread'` worklet, the * `__FlushElementTree()` trigger, and the runtime registration are all * internal. Users just pass a `SharedValue` for the axis they care * about — same shape as ``. * * @example Parallax header * ```tsx * const scrollY = useSharedValue(0); * const headerRef = useMainThreadRef(null); * * useAnimatedStyle(headerRef, scrollY, 'translateY', { * inputRange: [0, 300], outputRange: [0, -150], extrapolate: 'clamp', * }); * * * * Body… * * ``` * * @example BG-reactive scroll readout * ```tsx * const scrollY = useSharedValue(0); * ... * Scrolled: {scrollY.value.toFixed(0)}px * ``` */ export declare const ScrollView: import("@sigx/runtime-core").ComponentFactory import("@sigx/runtime-core").JSXElement | import("@sigx/runtime-core").JSXElement[] | null) | undefined; }>; //# sourceMappingURL=ScrollView.d.ts.map