import "intersection-observer";
import type { BasicTarget } from "../utils/domTarget";
import { type ComputedRef, type Ref } from "vue";
type UseInViewportTargetType = BasicTarget<Element> | BasicTarget<Element>[];
type CallbackType = (entry: IntersectionObserverEntry) => void;
export interface UseInViewportOptions {
    rootMargin?: string;
    threshold?: number | number[];
    root?: BasicTarget<Element>;
    callback?: CallbackType;
}
export declare function useInViewport(target: Ref<UseInViewportTargetType> | UseInViewportTargetType, options?: UseInViewportOptions | Ref<UseInViewportOptions> | ComputedRef<UseInViewportOptions>): readonly [Ref<boolean, boolean>, Ref<number, number>];
export {};
