import dayjs from 'dayjs'; import { TdCalendarProps } from '../type'; export declare function useState(props: TdCalendarProps): { state: { realFirstDayOfWeek: number; curDate?: { clone: () => dayjs.Dayjs; isValid: () => boolean; year: { (): number; (value: number): dayjs.Dayjs; }; month: { (): number; (value: number): dayjs.Dayjs; }; date: { (): number; (value: number): dayjs.Dayjs; }; day: { (): number; (value: number): dayjs.Dayjs; }; hour: { (): number; (value: number): dayjs.Dayjs; }; minute: { (): number; (value: number): dayjs.Dayjs; }; second: { (): number; (value: number): dayjs.Dayjs; }; millisecond: { (): number; (value: number): dayjs.Dayjs; }; set: (unit: dayjs.UnitType, value: number) => dayjs.Dayjs; get: (unit: dayjs.UnitType) => number; add: { (value: number, unit?: dayjs.ManipulateType): dayjs.Dayjs; (value: number, unit: dayjs.QUnitType): dayjs.Dayjs; }; subtract: { (value: number, unit?: dayjs.ManipulateType): dayjs.Dayjs; (value: number, unit: dayjs.QUnitType): dayjs.Dayjs; }; startOf: { (unit: dayjs.OpUnitType): dayjs.Dayjs; (unit: dayjs.QUnitType | dayjs.OpUnitType): dayjs.Dayjs; }; endOf: { (unit: dayjs.OpUnitType): dayjs.Dayjs; (unit: dayjs.QUnitType | dayjs.OpUnitType): dayjs.Dayjs; }; format: (template?: string) => string; diff: (date?: dayjs.ConfigType, unit?: dayjs.QUnitType | dayjs.OpUnitType, float?: boolean) => number; valueOf: () => number; unix: () => number; daysInMonth: () => number; toDate: () => Date; toJSON: () => string; toISOString: () => string; toString: () => string; utcOffset: () => number; isBefore: { (date?: dayjs.ConfigType, unit?: dayjs.OpUnitType): boolean; (date?: dayjs.ConfigType, unit?: dayjs.QUnitType): boolean; }; isSame: { (date?: dayjs.ConfigType, unit?: dayjs.OpUnitType): boolean; (date?: dayjs.ConfigType, unit?: dayjs.QUnitType): boolean; }; isAfter: { (date?: dayjs.ConfigType, unit?: dayjs.OpUnitType): boolean; (date?: dayjs.ConfigType, unit?: dayjs.QUnitType): boolean; }; locale: { (): string; (preset: string | ILocale, object?: Partial): dayjs.Dayjs; }; isoWeeksInYear: () => number; isLeapYear: () => boolean; isBetween: (a: dayjs.ConfigType, b: dayjs.ConfigType, c?: dayjs.OpUnitType | null, d?: "()" | "[]" | "[)" | "(]") => boolean; week: { (): number; (value: number): dayjs.Dayjs; }; weekYear: () => number; localeData: () => dayjs.InstanceLocaleDataReturn; quarter: { (): number; (quarter: number): dayjs.Dayjs; }; }; curDateList?: { clone: () => dayjs.Dayjs; isValid: () => boolean; year: { (): number; (value: number): dayjs.Dayjs; }; month: { (): number; (value: number): dayjs.Dayjs; }; date: { (): number; (value: number): dayjs.Dayjs; }; day: { (): number; (value: number): dayjs.Dayjs; }; hour: { (): number; (value: number): dayjs.Dayjs; }; minute: { (): number; (value: number): dayjs.Dayjs; }; second: { (): number; (value: number): dayjs.Dayjs; }; millisecond: { (): number; (value: number): dayjs.Dayjs; }; set: (unit: dayjs.UnitType, value: number) => dayjs.Dayjs; get: (unit: dayjs.UnitType) => number; add: { (value: number, unit?: dayjs.ManipulateType): dayjs.Dayjs; (value: number, unit: dayjs.QUnitType): dayjs.Dayjs; }; subtract: { (value: number, unit?: dayjs.ManipulateType): dayjs.Dayjs; (value: number, unit: dayjs.QUnitType): dayjs.Dayjs; }; startOf: { (unit: dayjs.OpUnitType): dayjs.Dayjs; (unit: dayjs.QUnitType | dayjs.OpUnitType): dayjs.Dayjs; }; endOf: { (unit: dayjs.OpUnitType): dayjs.Dayjs; (unit: dayjs.QUnitType | dayjs.OpUnitType): dayjs.Dayjs; }; format: (template?: string) => string; diff: (date?: dayjs.ConfigType, unit?: dayjs.QUnitType | dayjs.OpUnitType, float?: boolean) => number; valueOf: () => number; unix: () => number; daysInMonth: () => number; toDate: () => Date; toJSON: () => string; toISOString: () => string; toString: () => string; utcOffset: () => number; isBefore: { (date?: dayjs.ConfigType, unit?: dayjs.OpUnitType): boolean; (date?: dayjs.ConfigType, unit?: dayjs.QUnitType): boolean; }; isSame: { (date?: dayjs.ConfigType, unit?: dayjs.OpUnitType): boolean; (date?: dayjs.ConfigType, unit?: dayjs.QUnitType): boolean; }; isAfter: { (date?: dayjs.ConfigType, unit?: dayjs.OpUnitType): boolean; (date?: dayjs.ConfigType, unit?: dayjs.QUnitType): boolean; }; locale: { (): string; (preset: string | ILocale, object?: Partial): dayjs.Dayjs; }; isoWeeksInYear: () => number; isLeapYear: () => boolean; isBetween: (a: dayjs.ConfigType, b: dayjs.ConfigType, c?: dayjs.OpUnitType | null, d?: "()" | "[]" | "[)" | "(]") => boolean; week: { (): number; (value: number): dayjs.Dayjs; }; weekYear: () => number; localeData: () => dayjs.InstanceLocaleDataReturn; quarter: { (): number; (quarter: number): dayjs.Dayjs; }; }[]; curSelectedYear: number | null; curSelectedMonth: number | null; curSelectedMode: string | null; isShowWeekend: boolean; controlSize: import("../..").SizeEnum; }; toToday: () => void; checkDayVisible: (day: number) => boolean; };