"use strict";
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const event = require("../../../constants/event.js");
const types = require("../../../utils/types.js");
const runtime = require("../../../utils/vue/props/runtime.js");
const icon = require("../../../utils/vue/icon.js");
const validator = require("../../../utils/vue/validator.js");
const index = require("../../../hooks/use-aria/index.js");
const shared_esmBundler = require("../../../../../@vue/shared/dist/shared.esm-bundler.js");
const switchProps = runtime.buildProps({
  modelValue: {
    type: [
      Boolean,
      String,
      Number
    ],
    default: false
  },
  disabled: {
    type: Boolean,
    default: void 0
  },
  loading: Boolean,
  size: {
    type: String,
    validator: validator.isValidComponentSize
  },
  width: {
    type: [String, Number],
    default: ""
  },
  inlinePrompt: Boolean,
  inactiveActionIcon: { type: icon.iconPropType },
  activeActionIcon: { type: icon.iconPropType },
  activeIcon: { type: icon.iconPropType },
  inactiveIcon: { type: icon.iconPropType },
  activeText: {
    type: String,
    default: ""
  },
  inactiveText: {
    type: String,
    default: ""
  },
  activeValue: {
    type: [
      Boolean,
      String,
      Number
    ],
    default: true
  },
  inactiveValue: {
    type: [
      Boolean,
      String,
      Number
    ],
    default: false
  },
  name: {
    type: String,
    default: ""
  },
  validateEvent: {
    type: Boolean,
    default: true
  },
  beforeChange: { type: runtime.definePropType(Function) },
  id: String,
  tabindex: { type: [String, Number] },
  ...index.useAriaProps(["ariaLabel"])
});
const switchEmits = {
  [event.UPDATE_MODEL_EVENT]: (val) => types.isBoolean(val) || shared_esmBundler.isString(val) || types.isNumber(val),
  [event.CHANGE_EVENT]: (val) => types.isBoolean(val) || shared_esmBundler.isString(val) || types.isNumber(val),
  [event.INPUT_EVENT]: (val) => types.isBoolean(val) || shared_esmBundler.isString(val) || types.isNumber(val)
};
exports.switchEmits = switchEmits;
exports.switchProps = switchProps;
