import { EventDispatcher } from "../event/EventDispatcher"; import { Rect } from "../math/Rect"; import { Vec2 } from "../math/Vec2"; import { FlipType } from "../ui/FieldTypes"; import { GObject } from "../ui/GObject"; import { IStage } from "./IStage"; export declare class UIElement extends HTMLDivElement { $owner: GObject; protected _alpha: number; protected _touchable: boolean; protected _touchDisabled?: boolean; protected _visible: boolean; protected _grayed: boolean; protected _opaque: boolean; protected _pos: Vec2; protected _contentRect: Rect; protected _scale: Vec2; protected _rot: number; protected _pivot: Vec2; protected _clipping?: boolean; protected _parent: UIElement; protected _children: Array; protected _flipX?: boolean; protected _flipY?: boolean; protected _cursor: string; protected _notFocusable?: boolean; protected _tabStop?: boolean; protected _tabStopChildren?: boolean; private _timerID; constructor(); get name(): string; set name(value: string); get x(): number; set x(value: number); get y(): number; set y(value: number); setPosition(x: number, y: number): void; get width(): number; set width(value: number); get height(): number; set height(value: number); setSize(wv: number, hv: number): void; protected onSizeChanged(): void; get pivotX(): number; set pivotX(value: number); get pivotY(): number; set pivotY(value: number); setPivot(xv: number, yv: number): void; get flip(): FlipType; set flip(value: FlipType); get cursor(): string; set cursor(value: string); private updateTransform; protected updateFilters(): void; get scaleX(): number; set scaleX(value: number); get scaleY(): number; set scaleY(value: number); setScale(xv: number, yv: number): void; get rotation(): number; set rotation(value: number); get parent(): UIElement; get alpha(): number; set alpha(value: number); get touchable(): boolean; set touchable(value: boolean); get opaque(): boolean; set opaque(value: boolean); protected updateTouchableFlag(): void; setNotInteractable(): void; get visible(): boolean; set visible(value: boolean); get grayed(): boolean; set grayed(value: boolean); get focusable(): boolean; set focusable(value: boolean); get focused(): boolean; get tabStop(): boolean; set tabStop(value: boolean); get tabStopChildren(): boolean; set tabStopChildren(value: boolean); get onStage(): boolean; get stage(): IStage; globalToLocal(x: number, y: number, result?: Vec2): Vec2; localToGlobal(x: number, y: number, result?: Vec2): Vec2; addChild(child: UIElement): void; addChildAt(child: UIElement, index: number): void; removeChild(child: T): T; removeChildAt(index: number): void; setChildIndex(child: UIElement, index: number): void; getIndex(child: UIElement): number; get numChildren(): number; isAncestorOf(child: UIElement): boolean; get clipping(): boolean; set clipping(value: boolean); init(): void; dispose(): void; traverseChildren(callback: (obj: UIElement) => void): void; traverseAncestors(callback: (obj: UIElement) => void): void; broadcastEvent(type: string, data?: any): void; bubbleEvent(initiator: HTMLElement, type: string, data?: any, addChain?: Array): void; }