@visactor/vtable
Version:
canvas table width high performance
48 lines (47 loc) • 1.63 kB
TypeScript
import type { AnyFunction, EventListenerId } from '../ts-types';
import type { EventTarget as CustomEventTarget } from './EventTarget';
type EventHandlerTarget = EventTarget | CustomEventTarget;
type Listener = AnyFunction;
export type ResizeObserverCallBack = ({ width, height, windowSizeNotChange }: {
width: number;
height: number;
windowSizeNotChange: boolean;
}) => void;
export declare class ResizeObserver {
resizeTime: number;
element: HTMLElement;
cb: ResizeObserverCallBack;
observer?: MutationObserver;
lastSize: {
width: number;
height: number;
};
callBackDebounce: () => void;
constructor(element: HTMLElement, cb: ResizeObserverCallBack, resizeTime?: number);
mutationResize: () => void;
disConnect(): void;
callBack: () => void;
setSize(size: {
width: number;
height: number;
}): void;
private onResize;
private checkSize;
getSize(): {
width: number;
height: number;
};
}
export declare class EventHandler {
resizeTime?: number;
private listeners;
private reseizeListeners;
on(target: HTMLElement | Window | EventHandlerTarget, type: string, listener: Listener, ...options: any[]): EventListenerId;
once(target: EventHandlerTarget, type: string, listener: Listener, ...options: (boolean | AddEventListenerOptions)[]): EventListenerId;
off(id: EventListenerId | null | undefined): void;
fire(target: EventTarget, type: string, ...args: any[]): void;
hasListener(target: EventTarget, type: string): boolean;
clear(): void;
release(): void;
}
export {};