import { ScrollBehavior, EasingFunction } from './types';

export interface UseScrollSpyOptions {
    offset?: number;
    rootMargin?: string;
    threshold?: number;
    onChange?: (activeId: string | null) => void;
}
export declare const useScrollSpy: (targetIds: string[], options?: UseScrollSpyOptions) => string | null;
export interface UseSmoothScrollOptions {
    behavior?: ScrollBehavior;
    offset?: number;
    duration?: number;
    easing?: EasingFunction;
    onScrollStart?: (targetId: string) => void;
    onScrollEnd?: (targetId: string) => void;
}
export declare const useSmoothScroll: (options?: UseSmoothScrollOptions) => (targetId: string, customBehavior?: ScrollBehavior) => void;
export declare const useHashSync: (activeId: string | null, onChange?: (hash: string) => void) => void;
