/**
 * ldesign v0.2.14
 * (c) 2022/11/2 16:16 built by swimly
 * @license MIT
 */

const DatePickerProps = {
  allowInput: Boolean,
  clearable: Boolean,
  disableDate: {
    type: [Object, Array, Function]
  },
  disabled: Boolean,
  enableTimePicker: Boolean,
  firstDayOfWeek: {
    type: Number,
    validator(val) {
      if (!val) return true;
      return [1, 2, 3, 4, 5, 6, 7].includes(val);
    }
  },
  format: {
    type: String,
    default: void 0
  },
  inputProps: {
    type: Object
  },
  mode: {
    type: String,
    default: "date",
    validator(val) {
      if (!val) return true;
      return ["year", "quarter", "month", "week", "date"].includes(val);
    }
  },
  placeholder: {
    type: [String, Array],
    default: void 0
  },
  popupProps: {
    type: Object
  },
  prefixIcon: {
    type: Function
  },
  presets: {
    type: Object
  },
  presetsPlacement: {
    type: String,
    default: "bottom",
    validator(val) {
      if (!val) return true;
      return ["left", "top", "right", "bottom"].includes(val);
    }
  },
  status: {
    type: String,
    validator(val) {
      if (!val) return true;
      return ["default", "success", "warning", "error"].includes(val);
    }
  },
  suffixIcon: {
    type: Function
  },
  timePickerProps: {
    type: Object
  },
  tips: {
    type: [String, Function]
  },
  value: {
    type: [String, Number, Array, Date],
    default: void 0
  },
  defaultValue: {
    type: [String, Number, Array, Date],
    default: ""
  },
  valueType: {
    type: String,
    validator(val) {
      if (!val) return true;
      return ["time-stamp", "Date", "YYYY", "YYYY-MM", "YYYY-MM-DD", "YYYY-MM-DD HH", "YYYY-MM-DD HH:mm", "YYYY-MM-DD HH:mm:ss", "YYYY-MM-DD HH:mm:ss:SSS"].includes(val);
    }
  },
  onBlur: Function,
  onChange: Function,
  onFocus: Function,
  onPick: Function
};
const DatePickerPanelProps = {
  onCellClick: Function,
  onChange: Function,
  onConfirm: Function,
  onMonthChange: Function,
  onPanelClick: Function,
  onPresetClick: Function,
  onTimeChange: Function,
  onYearChange: Function
};
const DateRangePickerPanelProps = {
  onCellClick: Function,
  onChange: Function,
  onConfirm: Function,
  onMonthChange: Function,
  onPanelClick: Function,
  onPresetClick: Function,
  onTimeChange: Function,
  onYearChange: Function
};
const DateRangePickerProps = {
  allowInput: Boolean,
  clearable: Boolean,
  disableDate: {
    type: [Object, Array, Function]
  },
  disabled: Boolean,
  enableTimePicker: Boolean,
  firstDayOfWeek: {
    type: Number,
    validator(val) {
      if (!val) return true;
      return [1, 2, 3, 4, 5, 6, 7].includes(val);
    }
  },
  format: {
    type: String,
    default: ""
  },
  mode: {
    type: String,
    default: "date",
    validator(val) {
      if (!val) return true;
      return ["year", "quarter", "month", "week", "date"].includes(val);
    }
  },
  panelPreselection: {
    type: Boolean,
    default: true
  },
  placeholder: {
    type: [String, Array]
  },
  popupProps: {
    type: Object
  },
  prefixIcon: {
    type: Function
  },
  presets: {
    type: Object
  },
  presetsPlacement: {
    type: String,
    default: "bottom",
    validator(val) {
      if (!val) return true;
      return ["left", "top", "right", "bottom"].includes(val);
    }
  },
  rangeInputProps: {
    type: Object
  },
  separator: {
    type: String,
    default: ""
  },
  status: {
    type: String,
    validator(val) {
      if (!val) return true;
      return ["default", "success", "warning", "error"].includes(val);
    }
  },
  suffixIcon: {
    type: Function
  },
  timePickerProps: {
    type: Object
  },
  tips: {
    type: [String, Function]
  },
  value: {
    type: Array,
    default: void 0
  },
  defaultValue: {
    type: Array,
    default: () => []
  },
  valueType: {
    type: String,
    validator(val) {
      if (!val) return true;
      return ["time-stamp", "Date", "YYYY", "YYYY-MM", "YYYY-MM-DD", "YYYY-MM-DD HH", "YYYY-MM-DD HH:mm", "YYYY-MM-DD HH:mm:ss", "YYYY-MM-DD HH:mm:ss:SSS"].includes(val);
    }
  },
  onBlur: Function,
  onChange: Function,
  onFocus: Function,
  onInput: Function,
  onPick: Function
};
var props = {
  DatePickerProps,
  DatePickerPanelProps,
  DateRangePickerPanelProps,
  DateRangePickerProps
};

export { DatePickerPanelProps, DatePickerProps, DateRangePickerPanelProps, DateRangePickerProps, props as default };
//# sourceMappingURL=props.js.map
