import '../../../utils/index.mjs';
import PropTypes from '../../../utils/vue/vueTypes.mjs';
import { stringType } from '../../../utils/vue/propType.mjs';

const inputDefaultValue = Symbol("inputDefaultValue");
function commonInputProps() {
  return {
    addonBefore: PropTypes.any,
    addonAfter: PropTypes.any,
    prefix: PropTypes.any,
    suffix: PropTypes.any,
    clearIcon: PropTypes.any,
    affixWrapperClassName: String,
    groupClassName: String,
    wrapperClassName: String,
    inputClassName: String,
    allowClear: { type: Boolean, default: void 0 }
  };
}
function baseInputProps() {
  return {
    ...commonInputProps(),
    value: {
      type: [String, Number, Symbol],
      default: void 0
    },
    defaultValue: {
      type: [String, Number, Symbol],
      default: void 0
    },
    inputElement: PropTypes.any,
    prefixCls: String,
    disabled: { type: Boolean, default: void 0 },
    focused: { type: Boolean, default: void 0 },
    triggerFocus: Function,
    readonly: { type: Boolean, default: void 0 },
    handleReset: Function,
    hidden: { type: Boolean, default: void 0 }
  };
}
function inputProps() {
  return {
    ...baseInputProps(),
    "id": String,
    "placeholder": {
      type: [String, Number]
    },
    "autocomplete": String,
    "type": stringType(
      "text"
    ),
    "name": String,
    "size": { type: String },
    "autofocus": { type: Boolean, default: void 0 },
    "lazy": { type: Boolean, default: true },
    "maxlength": Number,
    "loading": { type: Boolean, default: void 0 },
    "bordered": { type: Boolean, default: void 0 },
    "showCount": { type: [Boolean, Object] },
    "htmlSize": Number,
    "onPressEnter": Function,
    "onKeydown": Function,
    "onKeyup": Function,
    "onFocus": Function,
    "onBlur": Function,
    "onChange": Function,
    "onInput": Function,
    "onUpdate:value": Function,
    "onCompositionstart": Function,
    "onCompositionend": Function,
    "valueModifiers": Object,
    "hidden": { type: Boolean, default: void 0 },
    "status": String
  };
}

export { baseInputProps, commonInputProps, inputDefaultValue, inputProps };
//# sourceMappingURL=inputProps.mjs.map
