@types/react-dom 16.9.0 → 16.9.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
react-dom/README.md CHANGED
@@ -8,7 +8,7 @@ This package contains type definitions for React (react-dom) (http://facebook.gi
8
8
  Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-dom
9
9
 
10
10
  Additional Details
11
- * Last updated: Mon, 19 Aug 2019 20:08:04 GMT
11
+ * Last updated: Wed, 06 Nov 2019 16:25:05 GMT
12
12
  * Dependencies: @types/react
13
13
  * Global values: ReactDOM, ReactDOMNodeStream, ReactDOMServer
14
14
 
@@ -0,0 +1,102 @@
1
+ /**
2
+ * These are types for things that are present in the `experimental` builds of React but not yet
3
+ * on a stable build.
4
+ *
5
+ * Once they are promoted to stable they can just be moved to the main index file.
6
+ *
7
+ * To load the types declared here in an actual project, there are three ways. The easiest one,
8
+ * if your `tsconfig.json` already has a `"types"` array in the `"compilerOptions"` section,
9
+ * is to add `"react-dom/experimental"` to the `"types"` array.
10
+ *
11
+ * Alternatively, a specific import syntax can to be used from a typescript file.
12
+ * This module does not exist in reality, which is why the {} is important:
13
+ *
14
+ * ```ts
15
+ * import {} from 'react-dom/experimental'
16
+ * ```
17
+ *
18
+ * It is also possible to include it through a triple-slash reference:
19
+ *
20
+ * ```ts
21
+ * /// <reference types="react-dom/experimental" />
22
+ * ```
23
+ *
24
+ * Either the import or the reference only needs to appear once, anywhere in the project.
25
+ */
26
+
27
+ // See https://github.com/facebook/react/blob/master/packages/react-dom/src/client/ReactDOM.js to see how the exports are declared,
28
+ // and https://github.com/facebook/react/blob/master/packages/shared/ReactFeatureFlags.js to verify which APIs are
29
+ // flagged experimental or not. Experimental APIs will be tagged with `__EXPERIMENTAL__`.
30
+
31
+ import React = require('react');
32
+ import ReactDOM = require('.');
33
+
34
+ export {};
35
+
36
+ declare module '.' {
37
+ // enableSuspenseServerRenderer feature
38
+ interface HydrationOptions {
39
+ onHydrated?(suspenseInstance: Comment): void;
40
+ onDeleted?(suspenseInstance: Comment): void;
41
+ }
42
+
43
+ // exposeConcurrentModeAPIs features
44
+
45
+ interface RootOptions {
46
+ hydrate?: boolean;
47
+ hydrationOptions?: HydrationOptions;
48
+ }
49
+
50
+ interface Root {
51
+ render(children: React.ReactChild | React.ReactNodeArray, callback?: () => void): void;
52
+ unmount(callback?: () => void): void;
53
+ }
54
+
55
+ /**
56
+ * Replaces `ReactDOM.render` when the `.render` method is called and enables Blocking Mode.
57
+ *
58
+ * Opting into Concurrent Mode introduces semantic changes to how React works.
59
+ * This means that you can’t use Concurrent Mode in just a few components.
60
+ * Because of this, some apps may not be able to migrate directly to Concurrent Mode.
61
+ * Blocking Mode only contains a small subset of Concurrent Mode features and is intended
62
+ * as an intermediary migration step for apps that are unable to migrate directly.
63
+ *
64
+ * @see https://reactjs.org/docs/concurrent-mode-adoption.html#migration-step-blocking-mode
65
+ * @see https://reactjs.org/docs/concurrent-mode-reference.html#createblockingroot
66
+ */
67
+ function createBlockingRoot(
68
+ container: Element | Document | DocumentFragment | Comment,
69
+ options?: RootOptions,
70
+ ): Root;
71
+
72
+ /**
73
+ * Replaces `ReactDOM.render` when the `.render` method is called and enables Concurrent Mode.
74
+ *
75
+ * @see https://reactjs.org/docs/concurrent-mode-reference.html#createroot
76
+ */
77
+ function createRoot(container: Element | Document | DocumentFragment | Comment, options?: RootOptions): Root;
78
+
79
+ function unstable_discreteUpdates<R>(callback: () => R): R;
80
+
81
+ function unstable_discreteUpdates<R, A1>(callback: (a1: A1) => R, a1: A1): R;
82
+
83
+ function unstable_discreteUpdates<R, A1, A2>(callback: (a1: A1, a2: A2) => R, a1: A1, a2: A2): R;
84
+
85
+ function unstable_discreteUpdates<R, A1, A2, A3>(
86
+ callback: (a1: A1, a2: A2, a3: A3) => R,
87
+ a1: A1,
88
+ a2: A2,
89
+ a3: A3,
90
+ ): R;
91
+
92
+ function unstable_flushDiscreteUpdates(): void;
93
+
94
+ function unstable_flushControlled(callback: () => void): void;
95
+
96
+ // enableSelectiveHydration feature
97
+
98
+ /**
99
+ * @see https://github.com/facebook/react/commit/3a2b5f148d450c69aab67f055fc441d294c23518
100
+ */
101
+ function unstable_scheduleHydration(target: Element | Document | DocumentFragment | Comment): void;
102
+ }
react-dom/index.d.ts CHANGED
@@ -9,6 +9,10 @@
9
9
  // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
10
10
  // TypeScript Version: 2.8
11
11
 
12
+ // NOTE: Users of the `experimental` builds of React should add a reference
13
+ // to 'react-dom/experimental' in their project. See experimental.d.ts's top comment
14
+ // for reference and documentation on how exactly to do it.
15
+
12
16
  export as namespace ReactDOM;
13
17
 
14
18
  import {
react-dom/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@types/react-dom",
3
- "version": "16.9.0",
3
+ "version": "16.9.4",
4
4
  "description": "TypeScript definitions for React (react-dom)",
5
5
  "license": "MIT",
6
6
  "contributors": [
@@ -43,6 +43,6 @@
43
43
  "dependencies": {
44
44
  "@types/react": "*"
45
45
  },
46
- "typesPublisherContentHash": "8dc4144e29251b4891bfa48d4945ccd931a8621fda922cb295595ea47a972501",
46
+ "typesPublisherContentHash": "3869812629e1187cb9fb43c30ddd1e1b1d9e6659cb2ac79d9d53533f6cce23ae",
47
47
  "typeScriptVersion": "2.8"
48
48
  }
@@ -14,7 +14,7 @@ import { ReactElement } from 'react';
14
14
  * and send the markup down on the initial request for faster page loads and to allow search
15
15
  * engines to crawl your pages for SEO purposes.
16
16
  *
17
- * If you call `ReactDOM.render()` on a node that already has this server-rendered markup,
17
+ * If you call `ReactDOM.hydrate()` on a node that already has this server-rendered markup,
18
18
  * React will preserve it and only attach event handlers, allowing you
19
19
  * to have a very performant first-load experience.
20
20
  */
@@ -67,10 +67,6 @@ export interface ShallowRenderer {
67
67
  * After `shallowRenderer.render()` has been called, returns shallowly rendered output.
68
68
  */
69
69
  getRenderOutput<E extends ReactElement>(): E;
70
- /**
71
- * After `shallowRenderer.render()` has been called, returns shallowly rendered output.
72
- */
73
- getRenderOutput(): ReactElement;
74
70
  /**
75
71
  * Similar to `ReactDOM.render` but it doesn't require DOM and only renders a single level deep.
76
72
  */