import { Event } from './events';
import { IDisposable } from './lifecycle';
export declare function watchElementResize(element: HTMLElement, cb: (entry: ResizeObserverEntry) => void): IDisposable;
export declare const removeClasses: (element: HTMLElement, ...classes: string[]) => void;
export declare const addClasses: (element: HTMLElement, ...classes: string[]) => void;
export declare const toggleClass: (element: HTMLElement, className: string, isToggled: boolean) => void;
export declare function isAncestor(testChild: Node | null, testAncestor: Node | null): boolean;
export declare function getElementsByTagName(tag: string): HTMLElement[];
export interface IFocusTracker extends IDisposable {
    onDidFocus: Event<void>;
    onDidBlur: Event<void>;
    refreshState?(): void;
}
export declare function trackFocus(element: HTMLElement | Window): IFocusTracker;
