mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-05-30 18:43:21 +08:00
* Support Partial<> on setState now that TS 2.1 is out * Update readme to reflect setState being typed correctly * Switch setState to Pick * Restore cloneELement portion of readme * Use Pick<> | S for setState due to cast issue * state and props should be readonly * Fix nit + document why we * Add typescript compiler header * Update to properly order headers * Update readme to reflect 2.1.5 fixing stPick * Update readme now that 2.1.5 is out * All that depend on react now require 2.1 * Fix definition that fails due to readonly state
67 lines
1.9 KiB
TypeScript
67 lines
1.9 KiB
TypeScript
// Type definitions for React Daterange Picker v1.1.0
|
|
// Project: https://github.com/onefinestay/react-daterange-picker
|
|
// Definitions by: UNCOVER TRUTH Inc. <https://github.com/uncovertruth/>
|
|
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
|
// TypeScript Version: 2.1
|
|
|
|
import * as React from "react";
|
|
import * as moment from "moment-range";
|
|
|
|
export default class DateRangePicker extends React.Component<Props, {}> {}
|
|
export as namespace ReactDateRangePicker;
|
|
|
|
interface Props extends React.Props<{}> {
|
|
bemBlock?: string;
|
|
bemNamespace?: string;
|
|
dateStates?: DateState[];
|
|
defaultState?: string;
|
|
disableNavigation?: boolean;
|
|
// Use Number Literal Types after TypeScript 2.0 GA released.
|
|
firstOfWeek?: number; // React.PropTypes.oneOf([0, 1, 2, 3, 4, 5, 6])
|
|
helpMessage?: string;
|
|
initialFromValue?: boolean;
|
|
initialDate?: Date;
|
|
initialMonth?: number;
|
|
initialYear?: number;
|
|
initialRange?: {};
|
|
maximumDate?: Date;
|
|
minimumDate?: Date;
|
|
numberOfCalendars?: number;
|
|
onHighlightDate?(date: Date): void;
|
|
onHighlightRange?(date: Date): void;
|
|
onSelect?(value: Props): void;
|
|
onSelectStart?(value: moment.Moment): void;
|
|
paginationArrowComponent?: PaginationArrow;
|
|
selectedLabel?: string;
|
|
selectionType?: 'single' |'range';
|
|
singleDateRange?: boolean;
|
|
showLegend?: boolean;
|
|
stateDefinitions?: StateDefinitions;
|
|
value?: moment.Moment | moment.Range;
|
|
}
|
|
|
|
interface DateState {
|
|
state: string;
|
|
range: moment.Range;
|
|
}
|
|
|
|
interface StateDefinitions {
|
|
[key: string]: StateDefinition;
|
|
}
|
|
|
|
interface StateDefinition {
|
|
color: string;
|
|
label: string;
|
|
selectable?: boolean;
|
|
}
|
|
|
|
interface PaginationArrowProps extends React.Props<{}> {
|
|
disabled?: boolean;
|
|
onTrigger?(): void;
|
|
direction?: 'next' | 'previous';
|
|
}
|
|
|
|
declare class PaginationArrow extends React.Component<PaginationArrowProps, {}> {
|
|
}
|
|
|