import '../../../chipper/js/initialize-globals.js';
import '../../../assert/js/assert.js';
import '../../../globals.js';
import InstanceRegistry from '../../../phet-core/js/documentation/InstanceRegistry.js';
import optionize from '../../../phet-core/js/optionize.js';
import { Path } from '../../../scenery/js/imports.js';
import PauseIconShape from '../PauseIconShape.js';
import sceneryPhet from '../sceneryPhet.js';
import SceneryPhetConstants from '../SceneryPhetConstants.js';
import SceneryPhetStrings from '../SceneryPhetStrings.js';
import PlayControlButton from './PlayControlButton.js';
export default class PlayPauseButton extends PlayControlButton {
    constructor(isPlayingProperty, providedOptions) {
        const options = optionize()({
            // PlayPauseButtonOptions
            radius: SceneryPhetConstants.PLAY_CONTROL_BUTTON_RADIUS,
            // PlayControlButtonOptions
            includeGlobalHotkey: true,
            endPlayingLabel: SceneryPhetStrings.a11y.playControlButton.pauseStringProperty
        }, providedOptions);
        // icon sized relative to the radius
        const pauseHeight = options.radius;
        const pauseWidth = options.radius * 0.6;
        const pausePath = new Path(new PauseIconShape(pauseWidth, pauseHeight), { fill: 'black' });
        super(isPlayingProperty, pausePath, options);
        // support for binder documentation, stripped out in builds and only runs when ?binder is specified
        assert && phet?.chipper?.queryParameters?.binder && InstanceRegistry.registerDataURL('scenery-phet', 'PlayPauseButton', this);
    }
}
sceneryPhet.register('PlayPauseButton', PlayPauseButton);
//# sourceMappingURL=PlayPauseButton.js.map