From 70779548d5352f88f1a96b4512ca5e8d37aba71b Mon Sep 17 00:00:00 2001 From: Vincent Siao Date: Tue, 24 Feb 2015 17:18:58 -0800 Subject: [PATCH] Remove Context generics from React 0.13 defs --- react/future/react-0.13.0-tests.ts | 18 +-- react/future/react-0.13.0.d.ts | 66 +++++----- react/future/react-addons-0.13.0-tests.ts | 18 +-- react/future/react-addons-0.13.0.d.ts | 128 +++++++++---------- react/future/react-addons-global-0.13.0.d.ts | 62 ++++----- react/future/react-global-0.13.0.d.ts | 66 +++++----- 6 files changed, 179 insertions(+), 179 deletions(-) diff --git a/react/future/react-0.13.0-tests.ts b/react/future/react-0.13.0-tests.ts index dd0052ee39..b323561196 100644 --- a/react/future/react-0.13.0-tests.ts +++ b/react/future/react-0.13.0-tests.ts @@ -23,7 +23,7 @@ interface ChildContext { someOtherValue: string; } -interface MyComponent extends React.Component { +interface MyComponent extends React.Component { reset(): void; } @@ -42,8 +42,8 @@ var INPUT_REF: string = "input"; // Top-Level API // -------------------------------------------------------------------------- -var ClassicComponent: React.ClassicComponentClass = - React.createClass({ +var ClassicComponent: React.ClassicComponentClass = + React.createClass({ getDefaultProps: () => { return { hello: undefined, @@ -70,7 +70,7 @@ var ClassicComponent: React.ClassicComponentClass = } }); -class ModernComponent extends React.Component +class ModernComponent extends React.Component implements React.ChildContextProvider { constructor(props: Props, context: Context) { @@ -145,9 +145,9 @@ var domElement: React.ReactHTMLElement = React.createElement("div"); // React.render -var component: React.Component = +var component: React.Component = React.render(element, container); -var classicComponent: React.ClassicComponent = +var classicComponent: React.ClassicComponent = React.render(classicElement, container); var domComponent: React.DOMComponent = React.render(domElement, container); @@ -234,7 +234,7 @@ React.DOM.input(htmlAttr); // React.PropTypes // -------------------------------------------------------------------------- -var PropTypesSpecification: React.ComponentSpec = { +var PropTypesSpecification: React.ComponentSpec = { propTypes: { optionalArray: React.PropTypes.array, optionalBool: React.PropTypes.bool, @@ -275,7 +275,7 @@ var PropTypesSpecification: React.ComponentSpec = { // ContextTypes // -------------------------------------------------------------------------- -var ContextTypesSpecification: React.ComponentSpec = { +var ContextTypesSpecification: React.ComponentSpec = { contextTypes: { optionalArray: React.PropTypes.array, optionalBool: React.PropTypes.bool, @@ -329,7 +329,7 @@ var onlyChild = React.Children.only([null, [[["Hallo"], true]], false]); interface TimerState { secondsElapsed: number; } -class Timer extends React.Component<{}, TimerState, {}> { +class Timer extends React.Component<{}, TimerState> { static state = { secondsElapsed: 0 } diff --git a/react/future/react-0.13.0.d.ts b/react/future/react-0.13.0.d.ts index 842623bc8f..fd4b27e98d 100644 --- a/react/future/react-0.13.0.d.ts +++ b/react/future/react-0.13.0.d.ts @@ -16,10 +16,10 @@ declare module "react" { } interface ReactElement

- extends ReactElementBase, P> {} + extends ReactElementBase, P> {} interface ReactClassicElement

- extends ReactElementBase | string, P> {} + extends ReactElementBase | string, P> {} interface ReactDOMElement

// subtype of ReactClassicElement extends ReactElementBase {} @@ -62,26 +62,26 @@ declare module "react" { // Top Level API // ---------------------------------------------------------------------- - function createClass( - spec: ComponentSpec): ClassicComponentClass; + function createClass( + spec: ComponentSpec): ClassicComponentClass; function createFactory

( type: string): DOMFactory

; function createFactory

( - type: ClassicComponentClass | string): ClassicFactory

; + type: ClassicComponentClass | string): ClassicFactory

; function createFactory

( - type: ComponentClass): Factory

; + type: ComponentClass): Factory

; function createElement

( type: string, props?: P, ...children: ReactNode[]): ReactDOMElement

; function createElement

( - type: ClassicComponentClass | string, + type: ClassicComponentClass | string, props?: P, ...children: ReactNode[]): ReactClassicElement

; function createElement

( - type: ComponentClass, + type: ComponentClass, props?: P, ...children: ReactNode[]): ReactElement

; @@ -92,11 +92,11 @@ declare module "react" { function render( element: ReactClassicElement

, container: Element, - callback?: () => any): ClassicComponent; + callback?: () => any): ClassicComponent; function render( element: ReactElement

, container: Element, - callback?: () => any): Component; + callback?: () => any): Component; function unmountComponentAtNode(container: Element): boolean; function renderToString(element: ReactElementBase): string; @@ -105,9 +105,9 @@ declare module "react" { function initializeTouchEvents(shouldUseTouch: boolean): void; function findDOMNode( - componentOrElement: Component | Element): TElement; + componentOrElement: Component | Element): TElement; function findDOMNode( - componentOrElement: Component | Element): Element; + componentOrElement: Component | Element): Element; var DOM: ReactDOM; var PropTypes: ReactPropTypes; @@ -118,19 +118,19 @@ declare module "react" { // ---------------------------------------------------------------------- // Base component for plain JS classes - class Component implements ComponentLifecycle { - constructor(props: P, context: C); + class Component implements ComponentLifecycle { + constructor(props: P, context: any); setState(state: S, callback?: () => any): void; forceUpdate(): void; props: P; state: S; - context: C; + context: any; refs: { - [key: string]: Component + [key: string]: Component }; } - interface ClassicComponent extends Component { + interface ClassicComponent extends Component { replaceState(nextState: S, callback?: () => any): void; getDOMNode(): TElement; getDOMNode(): Element; @@ -140,7 +140,7 @@ declare module "react" { replaceProps(nextProps: P, callback?: () => any): void; } - interface DOMComponent

extends ClassicComponent { + interface DOMComponent

extends ClassicComponent { tagName: string; } @@ -155,19 +155,19 @@ declare module "react" { // Class Interfaces // ---------------------------------------------------------------------- - interface ComponentClassBase { + interface ComponentClassBase

{ propTypes?: ValidationMap

; - contextTypes?: ValidationMap; - childContextTypes?: ValidationMap<{}>; + contextTypes?: ValidationMap; + childContextTypes?: ValidationMap; } - interface ComponentClass extends ComponentClassBase { - new(props?: P, context?: C): Component; + interface ComponentClass extends ComponentClassBase

{ + new(props?: P, context?: any): Component; defaultProps?: P; } - interface ClassicComponentClass extends ComponentClassBase { - new(props?: P, context?: C): ClassicComponent; + interface ClassicComponentClass extends ComponentClassBase

{ + new(props?: P, context?: any): ClassicComponent; getDefaultProps?(): P; displayName?: string; } @@ -176,18 +176,18 @@ declare module "react" { // Component Specs and Lifecycle // ---------------------------------------------------------------------- - interface ComponentLifecycle { + interface ComponentLifecycle { componentWillMount?(): void; componentDidMount?(): void; - componentWillReceiveProps?(nextProps: P, nextContext: C): void; - shouldComponentUpdate?(nextProps: P, nextState: S, nextContext: C): boolean; - componentWillUpdate?(nextProps: P, nextState: S, nextContext: C): void; - componentDidUpdate?(prevProps: P, prevState: S, prevContext: C): void; + componentWillReceiveProps?(nextProps: P, nextContext: any): void; + shouldComponentUpdate?(nextProps: P, nextState: S, nextContext: any): boolean; + componentWillUpdate?(nextProps: P, nextState: S, nextContext: any): void; + componentDidUpdate?(prevProps: P, prevState: S, prevContext: any): void; componentWillUnmount?(): void; } - interface Mixin extends ComponentLifecycle { - mixins?: Mixin; + interface Mixin extends ComponentLifecycle { + mixins?: Mixin; statics?: { [key: string]: any; }; @@ -201,7 +201,7 @@ declare module "react" { getDefaultProps?(): P; } - interface ComponentSpec extends Mixin { + interface ComponentSpec extends Mixin { render(): ReactElementBase; } diff --git a/react/future/react-addons-0.13.0-tests.ts b/react/future/react-addons-0.13.0-tests.ts index a1be24add9..d76097cd67 100644 --- a/react/future/react-addons-0.13.0-tests.ts +++ b/react/future/react-addons-0.13.0-tests.ts @@ -21,7 +21,7 @@ interface ChildContext { someOtherValue: string; } -interface MyComponent extends React.Component { +interface MyComponent extends React.Component { reset(): void; } @@ -40,8 +40,8 @@ var INPUT_REF: string = "input"; // Top-Level API // -------------------------------------------------------------------------- -var ClassicComponent: React.ClassicComponentClass = - React.createClass({ +var ClassicComponent: React.ClassicComponentClass = + React.createClass({ getDefaultProps: () => { return { hello: undefined, @@ -68,7 +68,7 @@ var ClassicComponent: React.ClassicComponentClass = } }); -class ModernComponent extends React.Component +class ModernComponent extends React.Component implements React.ChildContextProvider { constructor(props: Props, context: Context) { @@ -143,9 +143,9 @@ var domElement: React.ReactHTMLElement = React.createElement("div"); // React.render -var component: React.Component = +var component: React.Component = React.render(element, container); -var classicComponent: React.ClassicComponent = +var classicComponent: React.ClassicComponent = React.render(classicElement, container); var domComponent: React.DOMComponent = React.render(domElement, container); @@ -232,7 +232,7 @@ React.DOM.input(htmlAttr); // React.PropTypes // -------------------------------------------------------------------------- -var PropTypesSpecification: React.ComponentSpec = { +var PropTypesSpecification: React.ComponentSpec = { propTypes: { optionalArray: React.PropTypes.array, optionalBool: React.PropTypes.bool, @@ -273,7 +273,7 @@ var PropTypesSpecification: React.ComponentSpec = { // ContextTypes // -------------------------------------------------------------------------- -var ContextTypesSpecification: React.ComponentSpec = { +var ContextTypesSpecification: React.ComponentSpec = { contextTypes: { optionalArray: React.PropTypes.array, optionalBool: React.PropTypes.bool, @@ -327,7 +327,7 @@ var onlyChild = React.Children.only([null, [[["Hallo"], true]], false]); interface TimerState { secondsElapsed: number; } -class Timer extends React.Component<{}, TimerState, {}> { +class Timer extends React.Component<{}, TimerState> { static state = { secondsElapsed: 0 } diff --git a/react/future/react-addons-0.13.0.d.ts b/react/future/react-addons-0.13.0.d.ts index dd06aa1e92..bb4af1d1ef 100644 --- a/react/future/react-addons-0.13.0.d.ts +++ b/react/future/react-addons-0.13.0.d.ts @@ -16,10 +16,10 @@ declare module "react/addons" { } interface ReactElement

- extends ReactElementBase, P> {} + extends ReactElementBase, P> {} interface ReactClassicElement

- extends ReactElementBase | string, P> {} + extends ReactElementBase | string, P> {} interface ReactDOMElement

// subtype of ReactClassicElement extends ReactElementBase {} @@ -62,26 +62,26 @@ declare module "react/addons" { // Top Level API // ---------------------------------------------------------------------- - function createClass( - spec: ComponentSpec): ClassicComponentClass; + function createClass( + spec: ComponentSpec): ClassicComponentClass; function createFactory

( type: string): DOMFactory

; function createFactory

( - type: ClassicComponentClass | string): ClassicFactory

; + type: ClassicComponentClass | string): ClassicFactory

; function createFactory

( - type: ComponentClass): Factory

; + type: ComponentClass): Factory

; function createElement

( type: string, props?: P, ...children: ReactNode[]): ReactDOMElement

; function createElement

( - type: ClassicComponentClass | string, + type: ClassicComponentClass | string, props?: P, ...children: ReactNode[]): ReactClassicElement

; function createElement

( - type: ComponentClass, + type: ComponentClass, props?: P, ...children: ReactNode[]): ReactElement

; @@ -92,11 +92,11 @@ declare module "react/addons" { function render( element: ReactClassicElement

, container: Element, - callback?: () => any): ClassicComponent; + callback?: () => any): ClassicComponent; function render( element: ReactElement

, container: Element, - callback?: () => any): Component; + callback?: () => any): Component; function unmountComponentAtNode(container: Element): boolean; function renderToString(element: ReactElementBase): string; @@ -105,9 +105,9 @@ declare module "react/addons" { function initializeTouchEvents(shouldUseTouch: boolean): void; function findDOMNode( - componentOrElement: Component | Element): TElement; + componentOrElement: Component | Element): TElement; function findDOMNode( - componentOrElement: Component | Element): Element; + componentOrElement: Component | Element): Element; var DOM: ReactDOM; var PropTypes: ReactPropTypes; @@ -118,19 +118,19 @@ declare module "react/addons" { // ---------------------------------------------------------------------- // Base component for plain JS classes - class Component implements ComponentLifecycle { - constructor(props: P, context: C); + class Component implements ComponentLifecycle { + constructor(props: P, context: any); setState(state: S, callback?: () => any): void; forceUpdate(): void; props: P; state: S; - context: C; + context: any; refs: { - [key: string]: Component + [key: string]: Component }; } - interface ClassicComponent extends Component { + interface ClassicComponent extends Component { replaceState(nextState: S, callback?: () => any): void; getDOMNode(): TElement; getDOMNode(): Element; @@ -140,7 +140,7 @@ declare module "react/addons" { replaceProps(nextProps: P, callback?: () => any): void; } - interface DOMComponent

extends ClassicComponent { + interface DOMComponent

extends ClassicComponent { tagName: string; } @@ -155,19 +155,19 @@ declare module "react/addons" { // Class Interfaces // ---------------------------------------------------------------------- - interface ComponentClassBase { + interface ComponentClassBase

{ propTypes?: ValidationMap

; - contextTypes?: ValidationMap; - childContextTypes?: ValidationMap<{}>; + contextTypes?: ValidationMap; + childContextTypes?: ValidationMap; } - interface ComponentClass extends ComponentClassBase { - new(props?: P, context?: C): Component; + interface ComponentClass extends ComponentClassBase

{ + new(props?: P, context?: any): Component; defaultProps?: P; } - interface ClassicComponentClass extends ComponentClassBase { - new(props?: P, context?: C): ClassicComponent; + interface ClassicComponentClass extends ComponentClassBase

{ + new(props?: P, context?: any): ClassicComponent; getDefaultProps?(): P; displayName?: string; } @@ -176,18 +176,18 @@ declare module "react/addons" { // Component Specs and Lifecycle // ---------------------------------------------------------------------- - interface ComponentLifecycle { + interface ComponentLifecycle { componentWillMount?(): void; componentDidMount?(): void; - componentWillReceiveProps?(nextProps: P, nextContext: C): void; - shouldComponentUpdate?(nextProps: P, nextState: S, nextContext: C): boolean; - componentWillUpdate?(nextProps: P, nextState: S, nextContext: C): void; - componentDidUpdate?(prevProps: P, prevState: S, prevContext: C): void; + componentWillReceiveProps?(nextProps: P, nextContext: any): void; + shouldComponentUpdate?(nextProps: P, nextState: S, nextContext: any): boolean; + componentWillUpdate?(nextProps: P, nextState: S, nextContext: any): void; + componentDidUpdate?(prevProps: P, prevState: S, prevContext: any): void; componentWillUnmount?(): void; } - interface Mixin extends ComponentLifecycle { - mixins?: Mixin; + interface Mixin extends ComponentLifecycle { + mixins?: Mixin; statics?: { [key: string]: any; }; @@ -201,7 +201,7 @@ declare module "react/addons" { getDefaultProps?(): P; } - interface ComponentSpec extends Mixin { + interface ComponentSpec extends Mixin { render(): ReactElementBase; } @@ -748,7 +748,7 @@ declare module "react/addons" { // React.addons (Transitions) // ---------------------------------------------------------------------- - type ReactType = ComponentClass | string; + type ReactType = ComponentClass | string; interface TransitionGroupProps { component?: ReactType; @@ -763,9 +763,9 @@ declare module "react/addons" { } type CSSTransitionGroup = - ComponentClass; + ComponentClass; type TransitionGroup = - ComponentClass; + ComponentClass; // // React.addons (Mixins) @@ -776,11 +776,11 @@ declare module "react/addons" { requestChange(newValue: T): void; } - interface LinkedStateMixin extends Mixin { + interface LinkedStateMixin extends Mixin { linkState(key: string): ReactLink; } - interface PureRenderMixin extends Mixin { + interface PureRenderMixin extends Mixin { } // @@ -846,50 +846,50 @@ declare module "react/addons" { interface ReactTestUtils { Simulate: Simulate; - renderIntoDocument

(element: ReactElement

): Component; - renderIntoDocument>(element: ReactElement): C; + renderIntoDocument

(element: ReactElement

): Component; + renderIntoDocument>(element: ReactElement): C; mockComponent(mocked: MockedComponentClass, mockTagName?: string): ReactTestUtils; isElementOfType(element: ReactElement, type: ReactType): boolean; - isTextComponent(instance: Component): boolean; - isDOMComponent(instance: Component): boolean; - isCompositeComponent(instance: Component): boolean; + isTextComponent(instance: Component): boolean; + isDOMComponent(instance: Component): boolean; + isCompositeComponent(instance: Component): boolean; isCompositeComponentWithType( - instance: Component, - type: ComponentClass): boolean; + instance: Component, + type: ComponentClass): boolean; findAllInRenderedTree( - tree: Component, - fn: (i: Component) => boolean): Component; + tree: Component, + fn: (i: Component) => boolean): Component; scryRenderedDOMComponentsWithClass( - tree: Component, + tree: Component, className: string): DOMComponent[]; findRenderedDOMComponentWithClass( - tree: Component, + tree: Component, className: string): DOMComponent; scryRenderedDOMComponentsWithTag( - tree: Component, + tree: Component, tagName: string): DOMComponent[]; findRenderedDOMComponentWithTag( - tree: Component, + tree: Component, tagName: string): DOMComponent; - scryRenderedComponentsWithType( - tree: Component, - type: ComponentClass): Component[]; - scryRenderedComponentsWithType>( - tree: Component, - type: ComponentClass): C[]; + scryRenderedComponentsWithType( + tree: Component, + type: ComponentClass): Component[]; + scryRenderedComponentsWithType>( + tree: Component, + type: ComponentClass): C[]; - findRenderedComponentWithType( - tree: Component, - type: ComponentClass): Component; - findRenderedComponentWithType>( - tree: Component, - type: ComponentClass): C; + findRenderedComponentWithType( + tree: Component, + type: ComponentClass): Component; + findRenderedComponentWithType>( + tree: Component, + type: ComponentClass): C; } interface SyntheticEventData { @@ -928,7 +928,7 @@ declare module "react/addons" { interface EventSimulator { (element: Element, eventData?: SyntheticEventData): void; - (descriptor: Component, eventData?: SyntheticEventData): void; + (component: Component, eventData?: SyntheticEventData): void; } interface Simulate { diff --git a/react/future/react-addons-global-0.13.0.d.ts b/react/future/react-addons-global-0.13.0.d.ts index 733ba54a50..d11a4ae03a 100644 --- a/react/future/react-addons-global-0.13.0.d.ts +++ b/react/future/react-addons-global-0.13.0.d.ts @@ -37,7 +37,7 @@ declare module React { // React.addons (Transitions) // ---------------------------------------------------------------------- - type ReactType = ComponentClass | string; + type ReactType = ComponentClass | string; interface TransitionGroupProps { component?: ReactType; @@ -52,9 +52,9 @@ declare module React { } type CSSTransitionGroup = - ComponentClass; + ComponentClass; type TransitionGroup = - ComponentClass; + ComponentClass; // // React.addons (Mixins) @@ -65,11 +65,11 @@ declare module React { requestChange(newValue: T): void; } - interface LinkedStateMixin extends Mixin { + interface LinkedStateMixin extends Mixin { linkState(key: string): ReactLink; } - interface PureRenderMixin extends Mixin { + interface PureRenderMixin extends Mixin { } // @@ -135,50 +135,50 @@ declare module React { interface ReactTestUtils { Simulate: Simulate; - renderIntoDocument

(element: ReactElement

): Component; - renderIntoDocument>(element: ReactElement): C; + renderIntoDocument

(element: ReactElement

): Component; + renderIntoDocument>(element: ReactElement): C; mockComponent(mocked: MockedComponentClass, mockTagName?: string): ReactTestUtils; isElementOfType(element: ReactElement, type: ReactType): boolean; - isTextComponent(instance: Component): boolean; - isDOMComponent(instance: Component): boolean; - isCompositeComponent(instance: Component): boolean; + isTextComponent(instance: Component): boolean; + isDOMComponent(instance: Component): boolean; + isCompositeComponent(instance: Component): boolean; isCompositeComponentWithType( - instance: Component, - type: ComponentClass): boolean; + instance: Component, + type: ComponentClass): boolean; findAllInRenderedTree( - tree: Component, - fn: (i: Component) => boolean): Component; + tree: Component, + fn: (i: Component) => boolean): Component; scryRenderedDOMComponentsWithClass( - tree: Component, + tree: Component, className: string): DOMComponent[]; findRenderedDOMComponentWithClass( - tree: Component, + tree: Component, className: string): DOMComponent; scryRenderedDOMComponentsWithTag( - tree: Component, + tree: Component, tagName: string): DOMComponent[]; findRenderedDOMComponentWithTag( - tree: Component, + tree: Component, tagName: string): DOMComponent; - scryRenderedComponentsWithType( - tree: Component, - type: ComponentClass): Component[]; - scryRenderedComponentsWithType>( - tree: Component, - type: ComponentClass): C[]; + scryRenderedComponentsWithType( + tree: Component, + type: ComponentClass): Component[]; + scryRenderedComponentsWithType>( + tree: Component, + type: ComponentClass): C[]; - findRenderedComponentWithType( - tree: Component, - type: ComponentClass): Component; - findRenderedComponentWithType>( - tree: Component, - type: ComponentClass): C; + findRenderedComponentWithType( + tree: Component, + type: ComponentClass): Component; + findRenderedComponentWithType>( + tree: Component, + type: ComponentClass): C; } interface SyntheticEventData { @@ -217,7 +217,7 @@ declare module React { interface EventSimulator { (element: Element, eventData?: SyntheticEventData): void; - (descriptor: Component, eventData?: SyntheticEventData): void; + (component: Component, eventData?: SyntheticEventData): void; } interface Simulate { diff --git a/react/future/react-global-0.13.0.d.ts b/react/future/react-global-0.13.0.d.ts index 996d09d3a2..60675aec9e 100644 --- a/react/future/react-global-0.13.0.d.ts +++ b/react/future/react-global-0.13.0.d.ts @@ -16,10 +16,10 @@ declare module React { } interface ReactElement

- extends ReactElementBase, P> {} + extends ReactElementBase, P> {} interface ReactClassicElement

- extends ReactElementBase | string, P> {} + extends ReactElementBase | string, P> {} interface ReactDOMElement

// subtype of ReactClassicElement extends ReactElementBase {} @@ -62,26 +62,26 @@ declare module React { // Top Level API // ---------------------------------------------------------------------- - function createClass( - spec: ComponentSpec): ClassicComponentClass; + function createClass( + spec: ComponentSpec): ClassicComponentClass; function createFactory

( type: string): DOMFactory

; function createFactory

( - type: ClassicComponentClass | string): ClassicFactory

; + type: ClassicComponentClass | string): ClassicFactory

; function createFactory

( - type: ComponentClass): Factory

; + type: ComponentClass): Factory

; function createElement

( type: string, props?: P, ...children: ReactNode[]): ReactDOMElement

; function createElement

( - type: ClassicComponentClass | string, + type: ClassicComponentClass | string, props?: P, ...children: ReactNode[]): ReactClassicElement

; function createElement

( - type: ComponentClass, + type: ComponentClass, props?: P, ...children: ReactNode[]): ReactElement

; @@ -92,11 +92,11 @@ declare module React { function render( element: ReactClassicElement

, container: Element, - callback?: () => any): ClassicComponent; + callback?: () => any): ClassicComponent; function render( element: ReactElement

, container: Element, - callback?: () => any): Component; + callback?: () => any): Component; function unmountComponentAtNode(container: Element): boolean; function renderToString(element: ReactElementBase): string; @@ -105,9 +105,9 @@ declare module React { function initializeTouchEvents(shouldUseTouch: boolean): void; function findDOMNode( - componentOrElement: Component | Element): TElement; + componentOrElement: Component | Element): TElement; function findDOMNode( - componentOrElement: Component | Element): Element; + componentOrElement: Component | Element): Element; var DOM: ReactDOM; var PropTypes: ReactPropTypes; @@ -118,19 +118,19 @@ declare module React { // ---------------------------------------------------------------------- // Base component for plain JS classes - class Component implements ComponentLifecycle { - constructor(props: P, context: C); + class Component implements ComponentLifecycle { + constructor(props: P, context: any); setState(state: S, callback?: () => any): void; forceUpdate(): void; props: P; state: S; - context: C; + context: any; refs: { - [key: string]: Component + [key: string]: Component }; } - interface ClassicComponent extends Component { + interface ClassicComponent extends Component { replaceState(nextState: S, callback?: () => any): void; getDOMNode(): TElement; getDOMNode(): Element; @@ -140,7 +140,7 @@ declare module React { replaceProps(nextProps: P, callback?: () => any): void; } - interface DOMComponent

extends ClassicComponent { + interface DOMComponent

extends ClassicComponent { tagName: string; } @@ -155,19 +155,19 @@ declare module React { // Class Interfaces // ---------------------------------------------------------------------- - interface ComponentClassBase { + interface ComponentClassBase

{ propTypes?: ValidationMap

; - contextTypes?: ValidationMap; - childContextTypes?: ValidationMap<{}>; + contextTypes?: ValidationMap; + childContextTypes?: ValidationMap; } - interface ComponentClass extends ComponentClassBase { - new(props?: P, context?: C): Component; + interface ComponentClass extends ComponentClassBase

{ + new(props?: P, context?: any): Component; defaultProps?: P; } - interface ClassicComponentClass extends ComponentClassBase { - new(props?: P, context?: C): ClassicComponent; + interface ClassicComponentClass extends ComponentClassBase

{ + new(props?: P, context?: any): ClassicComponent; getDefaultProps?(): P; displayName?: string; } @@ -176,18 +176,18 @@ declare module React { // Component Specs and Lifecycle // ---------------------------------------------------------------------- - interface ComponentLifecycle { + interface ComponentLifecycle { componentWillMount?(): void; componentDidMount?(): void; - componentWillReceiveProps?(nextProps: P, nextContext: C): void; - shouldComponentUpdate?(nextProps: P, nextState: S, nextContext: C): boolean; - componentWillUpdate?(nextProps: P, nextState: S, nextContext: C): void; - componentDidUpdate?(prevProps: P, prevState: S, prevContext: C): void; + componentWillReceiveProps?(nextProps: P, nextContext: any): void; + shouldComponentUpdate?(nextProps: P, nextState: S, nextContext: any): boolean; + componentWillUpdate?(nextProps: P, nextState: S, nextContext: any): void; + componentDidUpdate?(prevProps: P, prevState: S, prevContext: any): void; componentWillUnmount?(): void; } - interface Mixin extends ComponentLifecycle { - mixins?: Mixin; + interface Mixin extends ComponentLifecycle { + mixins?: Mixin; statics?: { [key: string]: any; }; @@ -201,7 +201,7 @@ declare module React { getDefaultProps?(): P; } - interface ComponentSpec extends Mixin { + interface ComponentSpec extends Mixin { render(): ReactElementBase; }