uiik
Version:
A UI interactions kit includes draggable, splittable, rotatable, selectable, etc.
16 lines (15 loc) • 943 B
TypeScript
import { CollisionData, CollisionDetectorOptions } from "./types";
export declare class CollisionDetector {
#private;
targetsData: Array<CollisionData>;
el: Element;
elData: CollisionData;
opts: Record<string, any>;
constructor(el: string | HTMLElement, targets: (() => Array<HTMLElement>) | string | HTMLElement | Array<HTMLElement> | NodeList | HTMLCollection, opts?: CollisionDetectorOptions);
update(): void;
getOverlaps(): Array<HTMLElement>;
getOverlaps(x1: number, y1: number, x2: number, y2: number): Array<HTMLElement>;
getInclusions(): Array<HTMLElement>;
getInclusions(x1: number, y1: number, x2: number, y2: number): Array<HTMLElement>;
}
export declare function newCollisionDetector(el: string | HTMLElement, targets: (() => Array<HTMLElement>) | string | HTMLElement | Array<HTMLElement> | NodeList | HTMLCollection, opts?: CollisionDetectorOptions): CollisionDetector;