import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
import PropTypes from '../../_util/vue-types';

var props = function props() {
  return {
    prefixCls: PropTypes.string,
    width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
    height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
    style: PropTypes.style,
    class: PropTypes.string,
    placement: {
      type: String
    },
    wrapperClassName: PropTypes.string,
    level: {
      type: [String, Array]
    },
    levelMove: {
      type: [Number, Function, Array]
    },
    duration: PropTypes.string,
    ease: PropTypes.string,
    showMask: PropTypes.looseBool,
    maskClosable: PropTypes.looseBool,
    maskStyle: PropTypes.style,
    afterVisibleChange: PropTypes.func,
    keyboard: PropTypes.looseBool,
    contentWrapperStyle: PropTypes.style,
    autofocus: PropTypes.looseBool,
    open: PropTypes.looseBool
  };
};

var drawerProps = function drawerProps() {
  return _objectSpread(_objectSpread({}, props()), {}, {
    forceRender: PropTypes.looseBool,
    getContainer: PropTypes.oneOfType([PropTypes.string, PropTypes.func, PropTypes.object, PropTypes.looseBool])
  });
};

var drawerChildProps = function drawerChildProps() {
  return _objectSpread(_objectSpread({}, props()), {}, {
    getContainer: PropTypes.func,
    getOpenCount: PropTypes.func,
    scrollLocker: PropTypes.any,
    switchScrollingEffect: PropTypes.func
  });
};

export { drawerProps, drawerChildProps };