export default ButtonListener;
/**
 * @deprecated - please use FireListener for new code (set up for the `fire` callback to be easy, and has Properties
 * that can be checked for the other states or complicated cases)
 */
declare class ButtonListener extends DownUpListener {
    /**
     * Options for the ButtonListener:
     *
     * mouseButton: 0
     * fireOnDown: false // default is to fire on 'up' after 'down', but passing fireOnDown: true will fire on 'down' instead
     * up: null          // Called on an 'up' state change, as up( event, oldState )
     * over: null        // Called on an 'over' state change, as over( event, oldState )
     * down: null        // Called on an 'down' state change, as down( event, oldState )
     * out: null         // Called on an 'out' state change, as out( event, oldState )
     * fire: null        // Called on a state change to/from 'down' (depending on fireOnDown), as fire( event ). Called after the triggering up/over/down event.
     */
    constructor(options: any);
    buttonState: string;
    _overCount: number;
    _buttonOptions: any;
    /**
     * @public
     *
     * @param {SceneryEvent} event
     * @param {string} state
     */
    public setButtonState(event: SceneryEvent, state: string): void;
    /**
     * @public (scenery-internal)
     *
     * @param {SceneryEvent} event
     */
    public enter(event: SceneryEvent): void;
    /**
     * @public (scenery-internal)
     *
     * @param {SceneryEvent} event
     */
    public exit(event: SceneryEvent): void;
    /**
     * Called from "focus" events (part of the Scenery listener API). On focus the PDOMPointer is over the node
     * with the attached listener, so add to the over count.
     * @private
     *
     * @param {SceneryEvent} event
     */
    private focus;
    /**
     * Called from "blur" events (part of the Scenery listener API). On blur, the PDOMPointer leaves the node
     * with this listener so reduce the over count.
     * @private
     *
     * @param {SceneryEvent} event
     */
    private blur;
    /**
     * Called with "click" events (part of the Scenery listener API). Typically will be called from a keyboard
     * or assistive device.
     *
     * There are no `keyup` or `keydown` events when an assistive device is active. So we respond generally
     * to the single `click` event, which indicates a logical activation of this button.
     * TODO: This may change after https://github.com/phetsims/scenery/issues/1117 is done, at which point
     * `click` should likely be replaced by `keydown` and `keyup` listeners.
     * @private
     *
     * @param {SceneryEvent} event
     */
    private click;
}
declare namespace ButtonListener {
    let ButtonListenerIO: IOType<any, any, any>;
}
import { DownUpListener } from '../imports.js';
import IOType from '../../../tandem/js/types/IOType.js';
//# sourceMappingURL=ButtonListener.d.ts.map