sparkl-ui
Version:
Modern and minimalist React UI library.
21 lines (20 loc) • 1.01 kB
TypeScript
import { MouseEvent, FocusEvent, MutableRefObject } from 'react';
export declare const getElementOffset: (el?: HTMLElement | null | undefined) => {
top: number;
left: number;
};
export interface ReactiveDomReact {
top: number;
left: number;
right: number;
width: number;
height: number;
elementTop: number;
}
export declare const isUnplacedRect: (rect?: ReactiveDomReact) => boolean;
export declare const getRefRect: (ref?: MutableRefObject<HTMLElement | null>, getContainer?: () => HTMLElement | null) => ReactiveDomReact;
export declare const getEventRect: (event?: MouseEvent<HTMLElement> | FocusEvent<HTMLElement>, getContainer?: () => HTMLElement | null) => ReactiveDomReact;
export declare const useRect: (initialState?: ReactiveDomReact | (() => ReactiveDomReact)) => {
rect: ReactiveDomReact;
setRect: (eventOrRef: MouseEvent<HTMLElement> | FocusEvent<HTMLElement> | MutableRefObject<HTMLElement | null>, getContainer?: () => HTMLElement | null) => void;
};