• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// @lib: es2019,dom
2// @jsx: react
3
4// @Filename: index.tsx
5interface MiddlewareArray<T> extends Array<T> {}
6declare function configureStore(options: { middleware: MiddlewareArray<any> }): void;
7
8declare const defaultMiddleware: MiddlewareArray<any>;
9configureStore({
10  middleware: [...defaultMiddleware], // Should not error
11});
12
13declare namespace React {
14  type DetailedHTMLProps<E extends HTMLAttributes<T>, T> = E;
15  interface HTMLAttributes<T> {
16    children?: ReactNode;
17  }
18  type ReactNode = ReactChild | ReactFragment | boolean | null | undefined;
19  type ReactText = string | number;
20  type ReactChild = ReactText;
21  type ReactFragment = {} | ReactNodeArray;
22  interface ReactNodeArray extends Array<ReactNode> {}
23}
24declare namespace JSX {
25  interface IntrinsicElements {
26    ul: React.DetailedHTMLProps<React.HTMLAttributes<HTMLUListElement>, HTMLUListElement>;
27    li: React.DetailedHTMLProps<React.HTMLAttributes<HTMLLIElement>, HTMLLIElement>;
28  }
29}
30declare var React: any;
31
32const Component = () => {
33  const categories = ['Fruit', 'Vegetables'];
34
35  return (
36    <ul>
37      <li>All</li>
38      {categories.map((category) => (
39        <li key={category}>{category}</li> // Error about 'key' only
40      ))}
41    </ul>
42  );
43};
44