import type { Ref } from "vue"; /** 滚动状态配置 */ export type ScrollStateOptions = { /** * 触发节流间隔(毫秒) * @default 100 */ throttleMs?: number; /** * 停止滚动后恢复为「未滚动」的延迟(毫秒) * @default 800 */ resumeDelay?: number; }; /** 一份独立的滚动状态 */ export type ScrollState = { /** 当前是否正在滚动 */ isScrolling: Ref; /** 供 onPageScroll 直接注册的处理函数,已内置节流 */ scrollHandler: () => void; }; /** * 创建一份独立的页面滚动状态 * * 用模块级共享 ref 取代 uni.$emit / uni.$on 事件总线: * 无监听者时更新 ref 零开销,也不存在事件泄漏、无需手动 off。 * @param options 配置项 */ export declare function createScrollState(options?: ScrollStateOptions): ScrollState; /** * 触发滚动状态更新,供页面 onPageScroll 调用,已内置节流 * @example onPageScroll(triggerScroll) */ export declare const triggerScroll: () => void; /** triggerScroll 的别名,语义上更贴近 onPageScroll 的入参 */ export declare const scrollHandler: () => void; /** * 读取共享的滚动状态 * @returns isScrolling 当前是否正在滚动 */ export declare function useScrollState(): { isScrolling: Ref; };