import { StickyEvent } from './StickyEvent.js';
import type { FocusType } from '../core/FocusType.js';
/**
 * A sticky event that is fired right before a {@link Widget} gains a specific
 * {@link FocusType | focus}. Not capturable by user listeners. If not captured
 * by the widget, the widget will not gain the focus.
 *
 * Always check the focus type to avoid weird behaviour.
 */
export declare class FocusEvent extends StickyEvent {
    static readonly type = "focus";
    readonly type: typeof FocusEvent.type;
    readonly userCapturable: false;
    /** The gained focus type */
    readonly focusType: FocusType;
    constructor(focusType: FocusType);
}
