diff --git a/react-addons/react-addons-tests.ts b/react-addons/react-addons-tests.ts index c7b3ffdd7..4834d6e23 100644 --- a/react-addons/react-addons-tests.ts +++ b/react-addons/react-addons-tests.ts @@ -63,7 +63,7 @@ var PropTypesSpecification: React.Specification = { return null; } }, - render: (): React.Descriptor => { + render: (): React.ReactHTMLElement => { return null; } }; diff --git a/react-addons/react-addons.d.ts b/react-addons/react-addons.d.ts index 651ffe83a..d0787c88a 100644 --- a/react-addons/react-addons.d.ts +++ b/react-addons/react-addons.d.ts @@ -23,7 +23,7 @@ declare module React { }; export interface CloneWithProps

{ - (instance: Descriptor

, extraProps?: P): Descriptor

; + (instance: ReactComponentElement

, extraProps?: P): ReactComponentElement

; } export interface ReactLink { @@ -79,20 +79,22 @@ declare module React { export interface TestUtils { Simulate: Simulate; - renderIntoDocument(instance: Descriptor): Descriptor; + renderIntoDocument

(instance: ReactComponentElement

): ReactComponentElement

; + renderIntoDocument(instnace: ReactHTMLElement): ReactHTMLElement; + renderIntoDocument(instnace: ReactSVGElement): ReactSVGElement; mockComponent(componentClass: ReactComponentFactory, mockTagName?: string): TestUtils; - isDescriptorOfType(descriptor: Descriptor, componentClass: ReactComponentFactory): boolean; - isDOMComponent(instance: Descriptor): boolean; - isCompositeComponent(instance: Descriptor): boolean; - isCompositeComponentWithType(instance: Descriptor, componentClass: Function): boolean; - isTextComponent(instance: Descriptor): boolean; - findAllInRenderedTree(tree: Descriptor, test: Function): Descriptor[]; - scryRenderedDOMComponentsWithClass(tree: Descriptor, className: string): Descriptor[]; - findRenderedDOMComponentWithClass(tree: Descriptor, className: string): Descriptor; - scryRenderedDOMComponentsWithTag(tree: Descriptor, className: string): Descriptor[]; - findRenderedDOMComponentWithTag(tree: Descriptor, tagName: string): Descriptor; - scryFindRenderedComponentsWithTag(tree: Descriptor, componentClass: Function): Descriptor[]; - findRenderedComponentWithType(tree: Descriptor, componentClass: Function): Descriptor; + isDescriptorOfType(descriptor: ReactElement, componentClass: ReactComponentFactory): boolean; + isDOMComponent(instance: ReactElement): boolean; + isCompositeComponent(instance: ReactElement): boolean; + isCompositeComponentWithType(instance: ReactElement, componentClass: ReactComponentFactory): boolean; + isTextComponent(instance: ReactElement): boolean; + findAllInRenderedTree(tree: ReactElement, test: (component: ReactElement) => boolean): ReactElement[]; + scryRenderedDOMComponentsWithClass(tree: ReactElement, className: string): ReactElement[]; + findRenderedDOMComponentWithClass(tree: ReactElement, className: string): ReactElement; + scryRenderedDOMComponentsWithTag(tree: ReactElement, className: string): ReactElement[]; + findRenderedDOMComponentWithTag(tree: ReactElement, tagName: string): ReactElement; + scryFindRenderedComponentsWithTag(tree: ReactElement, componentClass: Function): ReactElement[]; + findRenderedComponentWithType(tree: ReactElement, componentClass: Function): ReactElement; } export interface SyntheticEventData { @@ -131,7 +133,7 @@ declare module React { export interface EventSimulator { (element: Element, eventData?: SyntheticEventData): void; - (descriptor: Descriptor, eventData?: SyntheticEventData): void; + (descriptor: ReactElement, eventData?: SyntheticEventData): void; } export interface Simulate { diff --git a/react/react-tests.ts b/react/react-tests.ts index dab902f02..f0267d907 100644 --- a/react/react-tests.ts +++ b/react/react-tests.ts @@ -63,7 +63,7 @@ var PropTypesSpecification: React.Specification = { return null; } }, - render: (): React.Descriptor => { + render: (): React.ReactHTMLElement => { return null; } }; diff --git a/react/react.d.ts b/react/react.d.ts index 407605944..1383a33f0 100644 --- a/react/react.d.ts +++ b/react/react.d.ts @@ -38,20 +38,19 @@ declare module React { export function initializeTouchEvents(shouldUseTouch: boolean): void; - export interface ReactFactory { - (properties: P, ...children: any[]): E; + + export interface ReactComponentFactory

{ + (properties: P, ...children: any[]): ReactComponentElement

; } - export interface ReactComponentFactory

extends ReactFactory> { + export interface ReactElementFactory

{ + (properties: P, ...children: any[]): ReactDOMElement

; } - export interface ReactElementFactory> extends ReactFactory { + export interface DomElement extends ReactElementFactory { } - export interface DomElement extends ReactElementFactory { - } - - export interface SvgElement extends ReactElementFactory { + export interface SvgElement extends ReactElementFactory { } export interface ReactClass

{ @@ -60,18 +59,17 @@ declare module React { export interface ReactComponent

{ props: P; - render(): ReactElement; + render(): ReactElement; } - export interface ReactElement { - type: any; - props: any; + export interface ReactElement { + type: T; + props: P; key: string; ref: string; } - export interface ReactDOMElement

extends ReactElement { - type: string; + export interface ReactDOMElement

extends ReactElement { props: P; } @@ -81,17 +79,10 @@ declare module React { export interface ReactSVGElement extends ReactDOMElement { } - export interface ReactComponentElement

extends ReactElement { - type: ReactClass

; + export interface ReactComponentElement

extends ReactElement, P> { props: P; } - export interface Descriptor

{ - props: P; - } - - - export interface Mixin { componentWillMount?(): void; componentDidMount?(): void; @@ -111,7 +102,7 @@ declare module React { propTypes?: ValidationMap

; getDefaultProps?(): P; getInitialState?(): S; - render(): Descriptor; + render(): ReactElement; } export interface DomReferencer {