tdesign-mobile-vue
Version:
tdesign-mobile-vue
27 lines (26 loc) • 955 B
TypeScript
import { Ref, ShallowRef } from 'vue';
export type ElementOrRef = string | Element | null | undefined;
export interface UseElementRectOptions {
immediate?: boolean;
resizeObserver?: boolean;
}
export interface ElementRect {
top: number;
bottom: number;
left: number;
right: number;
width: number;
height: number;
}
declare function resolveElement(element: ElementOrRef): HTMLElement | null;
declare function getElementRect(element: HTMLElement): ElementRect;
export default function useElementRect(element: Ref<ElementOrRef> | ElementOrRef, options?: UseElementRectOptions): {
element: ShallowRef<HTMLElement | null>;
rect: Ref<ElementRect>;
updateElement: () => void;
};
export declare function useElementHeight(target: Ref<HTMLElement | undefined>, options?: UseElementRectOptions): {
height: Ref<() => number, () => number>;
calculateHeight: () => void;
};
export { resolveElement, getElementRect };