export interface ThumbJellyHost { /** Whether the jelly runs at all — off under `prefers-reduced-motion` and on the flat path. */ isEnabled: () => boolean; } /** * The slider thumb's jelly — the Radio button-group indicator's motion, mapped * onto a slider's events. * * The indicator deforms from two sources: how fast it travels, and how hard it * lands (an overshoot reversal, a slam into the group's end). A slider thumb * travels exactly as far as the pointer, so its position is never sprung; what * is sprung is the uniform scale — up to `heldScale` on grab, back to 1 on * release, on the indicator's own spring — while the stretch reads the pointer * velocity and the landings come from direction reversals, the track ends and * a fast release. Every frame goes through `jellyScale`, shared with the * indicator, and every number is `JELLY`'s. */ export declare function useThumbJelly(host: ThumbJellyHost): { scaleX: import('vue').Ref; scaleY: import('vue').Ref; active: import('vue').Ref; press: () => void; move: (velocity: number, atEnd: boolean) => void; release: () => void; stop: () => void; };