import '../../../utils/index.mjs';
import PropTypes from '../../../utils/vue/vueTypes.mjs';
import { objectType, arrayType, functionType } from '../../../utils/vue/propType.mjs';

function props() {
  return {
    prefixCls: String,
    width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
    height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
    style: { type: Object, default: void 0 },
    class: String,
    rootClassName: String,
    rootStyle: objectType(),
    placement: {
      type: String
    },
    wrapperClassName: String,
    level: { type: [String, Array] },
    levelMove: {
      type: [Number, Function, Array]
    },
    duration: String,
    ease: String,
    showMask: { type: Boolean, default: void 0 },
    maskClosable: { type: Boolean, default: void 0 },
    maskStyle: { type: Object, default: void 0 },
    afterVisibleChange: Function,
    keyboard: { type: Boolean, default: void 0 },
    contentWrapperStyle: arrayType(),
    autofocus: { type: Boolean, default: void 0 },
    open: { type: Boolean, default: void 0 },
    // Motion
    motion: functionType(),
    maskMotion: objectType()
  };
}
function drawerProps() {
  return {
    ...props(),
    forceRender: { type: Boolean, default: void 0 },
    getContainer: PropTypes.oneOfType([
      PropTypes.string,
      PropTypes.func,
      PropTypes.object,
      PropTypes.looseBool
    ])
  };
}
function drawerChildProps() {
  return {
    ...props(),
    getContainer: Function,
    getOpenCount: Function,
    scrollLocker: PropTypes.any,
    inline: Boolean
  };
}

export { drawerChildProps, drawerProps };
//# sourceMappingURL=IDrawerPropTypes.mjs.map
