diff --git a/types/react-list/index.d.ts b/types/react-list/index.d.ts index 9760419fff..30371fc35b 100644 --- a/types/react-list/index.d.ts +++ b/types/react-list/index.d.ts @@ -1,6 +1,6 @@ // Type definitions for react-list 0.8 // Project: https://github.com/orgsync/react-list -// Definitions by: Yifei Yan +// Definitions by: Yifei Yan , Tom Shen // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -8,22 +8,14 @@ import { Component, Props } from "react"; -export as namespace ReactList; -/*~ If this module has methods, declare them as functions like so. - */ -export function scrollTo(index: number): void; -export function scrollAround(index: number): void; -export function getVisibleRange(): number[]; +type ItemRenderer = (index: number, key: number | string) => JSX.Element; +type ItemsRenderer = (items: JSX.Element[], ref: string) => JSX.Element; +type ItemSizeEstimator = (index: number, cache: {}) => number; +type ItemSizeGetter = (index: number) => number; +type ScrollParentGetter = () => JSX.Element; -/*~ You can declare types that are available via importing the module */ -export type ItemRenderer = (index: number, key: number | string) => JSX.Element; -export type ItemsRenderer = (items: JSX.Element[], ref: string) => JSX.Element; -export type ItemSizeEstimator = (index: number, cache: {}) => number; -export type ItemSizeGetter = (index: number) => number; -export type ScrollParentGetter = () => JSX.Element; - -export interface ReactListProps extends Props { +interface ReactListProps extends Props { axis?: 'x' | 'y'; initialIndex?: number; itemRenderer?: ItemRenderer; @@ -40,4 +32,10 @@ export interface ReactListProps extends Props { useTranslate3d?: boolean; } -export default class ReactList extends Component {} +declare class ReactList extends Component { + scrollTo(index: number): void; + scrollAround(index: number): void; + getVisibleRange(): number[]; +} +declare namespace ReactList { } +export = ReactList; diff --git a/types/react-list/react-list-tests.tsx b/types/react-list/react-list-tests.tsx index 26d2781b02..f02b1643a5 100644 --- a/types/react-list/react-list-tests.tsx +++ b/types/react-list/react-list-tests.tsx @@ -1,6 +1,5 @@ import * as React from "react"; -// import * as ReactDOM from "react-dom"; -import ReactList from "react-list"; +import * as ReactList from "react-list"; const renderItem = (index: number, key: number) =>