import Eventful from './core/Eventful'; 
 | 
import Displayable from './graphic/Displayable'; 
 | 
import { PainterBase } from './PainterBase'; 
 | 
import { HandlerProxyInterface } from './dom/HandlerProxy'; 
 | 
import { ZRRawEvent, ElementEventName } from './core/types'; 
 | 
import Storage from './Storage'; 
 | 
import Element from './Element'; 
 | 
declare class HoveredResult { 
 | 
    x: number; 
 | 
    y: number; 
 | 
    target: Displayable; 
 | 
    topTarget: Displayable; 
 | 
    constructor(x?: number, y?: number); 
 | 
} 
 | 
declare type HandlerName = 'click' | 'dblclick' | 'mousewheel' | 'mouseout' | 'mouseup' | 'mousedown' | 'mousemove' | 'contextmenu'; 
 | 
declare class Handler extends Eventful { 
 | 
    storage: Storage; 
 | 
    painter: PainterBase; 
 | 
    painterRoot: HTMLElement; 
 | 
    proxy: HandlerProxyInterface; 
 | 
    private _hovered; 
 | 
    private _gestureMgr; 
 | 
    private _draggingMgr; 
 | 
    private _pointerSize; 
 | 
    _downEl: Element; 
 | 
    _upEl: Element; 
 | 
    _downPoint: [number, number]; 
 | 
    constructor(storage: Storage, painter: PainterBase, proxy: HandlerProxyInterface, painterRoot: HTMLElement, pointerSize: number); 
 | 
    setHandlerProxy(proxy: HandlerProxyInterface): void; 
 | 
    mousemove(event: ZRRawEvent): void; 
 | 
    mouseout(event: ZRRawEvent): void; 
 | 
    resize(): void; 
 | 
    dispatch(eventName: HandlerName, eventArgs?: any): void; 
 | 
    dispose(): void; 
 | 
    setCursorStyle(cursorStyle: string): void; 
 | 
    dispatchToElement(targetInfo: { 
 | 
        target?: Element; 
 | 
        topTarget?: Element; 
 | 
    }, eventName: ElementEventName, event: ZRRawEvent): void; 
 | 
    findHover(x: number, y: number, exclude?: Displayable): HoveredResult; 
 | 
    processGesture(event: ZRRawEvent, stage?: 'start' | 'end' | 'change'): void; 
 | 
    click: (event: ZRRawEvent) => void; 
 | 
    mousedown: (event: ZRRawEvent) => void; 
 | 
    mouseup: (event: ZRRawEvent) => void; 
 | 
    mousewheel: (event: ZRRawEvent) => void; 
 | 
    dblclick: (event: ZRRawEvent) => void; 
 | 
    contextmenu: (event: ZRRawEvent) => void; 
 | 
} 
 | 
export default Handler; 
 |