export declare const ElementPositionState: { Idle: { kind: "Idle"; }; Tracked: (position: string) => { kind: "Tracked"; position: string; }; Moved: { kind: "Moved"; }; }; type ResolvedStates> = { [K in keyof T]: T[K] extends (...args: any[]) => infer R ? R : T[K]; }[keyof T]; export type ElementPositionState = ResolvedStates; export declare function computeVisualPosition(element: HTMLElement): string; export declare function detectMovement(target: HTMLElement, state: ResolvedStates, onMove: () => void): () => void; export {};