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 sceneryPhet from '../sceneryPhet.js';
import SceneryPhetConstants from '../SceneryPhetConstants.js';
import SceneryPhetStrings from '../SceneryPhetStrings.js';
import StopIconShape from '../StopIconShape.js';
import PlayControlButton from './PlayControlButton.js';
export default class PlayStopButton extends PlayControlButton {
    constructor(isPlayingProperty, providedOptions) {
        const options = optionize()({
            // PlayStopButtonOptions
            radius: SceneryPhetConstants.PLAY_CONTROL_BUTTON_RADIUS,
            endPlayingLabel: SceneryPhetStrings.a11y.playControlButton.stopStringProperty
        }, providedOptions);
        // icon is sized relative to radius
        const stopWidth = options.radius * 0.75;
        const stopPath = new Path(new StopIconShape(stopWidth), { fill: 'black' });
        super(isPlayingProperty, stopPath, 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', 'PlayStopButton', this);
    }
}
sceneryPhet.register('PlayStopButton', PlayStopButton);
//# sourceMappingURL=PlayStopButton.js.map