import { FocusType } from '../core/FocusType.js';
import { Widget } from '../widgets/Widget.js';
import { TargetableTricklingEvent } from './TargetableTricklingEvent.js';
/**
 * A leave {@link TricklingEvent}. Dispatched when a pointer is no longer over
 * a specific widget (other libraries may call this an unhover event).
 *
 * If a pointer event never visits a widget, even when the event is in the
 * bounds of the widget, then the widget will never get a leave event dispatched
 * to it. This is done by tracking the list of widgets that get visited by a
 * pointer event every time a pointer event is dispatched. This is done
 * automatically by the {@link Widget} and {@link Root} classes.
 *
 * Has a focus type of {@link FocusType.Pointer} and needs focus.
 *
 * @category Event
 */
export declare class LeaveEvent extends TargetableTricklingEvent {
    static readonly type = "leave";
    readonly type: typeof LeaveEvent.type;
    readonly focusType: FocusType.Pointer;
    readonly needsFocus: true;
    readonly userCapturable: false;
    constructor(target?: Widget | null);
    cloneWithTarget(target: Widget | null): LeaveEvent;
}
