import * as AlloyEvents from '../../api/events/AlloyEvents';
import * as SystemEvents from '../../api/events/SystemEvents';
import * as DomModification from '../../dom/DomModification';
import * as Behaviour from '../common/Behaviour';
import * as DisableApis from './DisableApis';
const exhibit = (base, disableConfig) => DomModification.nu({
    // Do not add the attribute yet, because it will depend on the node name
    // if we use "aria-disabled" or just "disabled"
    classes: disableConfig.disabled() ? disableConfig.disableClass.toArray() : []
});
const events = (disableConfig, disableState) => AlloyEvents.derive([
    AlloyEvents.abort(SystemEvents.execute(), (component, _simulatedEvent) => DisableApis.isDisabled(component, disableConfig)),
    Behaviour.loadEvent(disableConfig, disableState, DisableApis.onLoad)
]);
export { exhibit, events };
//# sourceMappingURL=ActiveDisable.js.map