import { ComponentClass } from 'react'
import { CommonEventFunction } from '@tarojs/components/types/common'

import CtsComponent from './base'

export interface CtsDateRecordProps extends CtsComponent { 
  /**
   * 模式，recordwork：记工，checkwork：考勤，checking：打卡考勤
   * @description 可选择的值 'recordwork', 'checkwork', 'checking'
   * @type {('recordwork'|'checkwork'|'checking')}
   * @default 'recordwork'
   */
  mode: 'recordwork' | 'checkwork' | 'checking'
  /**
   * 月份选择
   */
  checkMonth: string
  /**
   * 日期选择
   */
  checkDate?: string
  /**
   * 返回的日期数组信息
   */
  data: any[]
  /**
   * 月份选择事件
   */
  onMonthChange: CommonEventFunction
  /**
   * 日期选择事件
   */
  onDateChange?: CommonEventFunction
}

export interface CtsDateRecordState { 
  /**
   * 月份选择
   */
  checkMonth: string
  /**
   * 日期选择
   */
  checkDate: string
  /**
   * 日期数组，status状态：1：超出范围，2：正常出勤，3：休息，4：缺勤
   */
  dateArr: any[]
  /**
   * 是否是当前月
   */
  isCurrentMonth: boolean
}

declare const CtsDateRecord: ComponentClass<CtsDateRecordProps>

export default CtsDateRecord