1 |
|
2 | import * as React from 'react';
|
3 | import { Models } from './date/DataTypes';
|
4 | import PropsType from './DatePickerProps';
|
5 | export interface StateType {
|
6 | months: Models.MonthData[];
|
7 | }
|
8 | export default abstract class DatePicker extends React.PureComponent<PropsType, StateType> {
|
9 | static defaultProps: PropsType;
|
10 | visibleMonth: Models.MonthData[];
|
11 | abstract genMonthComponent: (data: Models.MonthData) => React.ReactNode;
|
12 | constructor(props: PropsType);
|
13 | shouldComponentUpdate(nextProps: PropsType, nextState: StateType, nextContext: any): boolean;
|
14 | componentWillReceiveProps(nextProps: PropsType): void;
|
15 | componentWillMount(): void;
|
16 | getMonthDate(date?: Date, addMonth?: number): {
|
17 | firstDate: Date;
|
18 | lastDate: Date;
|
19 | };
|
20 | canLoadPrev(): boolean;
|
21 | canLoadNext(): boolean;
|
22 | getDateWithoutTime: (date?: Date | undefined) => number;
|
23 | genWeekData: (firstDate: Date) => Models.CellData[][];
|
24 | genMonthData(date?: Date, addMonth?: number): Models.MonthData;
|
25 | inDate(date: number, tick: number): boolean;
|
26 | selectDateRange: (startDate: Date, endDate?: Date | undefined, clear?: boolean) => void;
|
27 | computeVisible: (clientHeight: number, scrollTop: number) => boolean;
|
28 | createOnScroll: () => (data: {
|
29 | full: number;
|
30 | client: number;
|
31 | top: number;
|
32 | }) => void;
|
33 | onCellClick: (day: Models.CellData) => void;
|
34 | }
|