From f558746052b15218c79387e6ad6d51e9cf57d691 Mon Sep 17 00:00:00 2001 From: PabloSz Date: Tue, 17 Dec 2019 21:38:53 -0300 Subject: [PATCH] typescript support --- index.d.ts | 39 +++++++++++++++++++++++++++++++++++++++ package.json | 4 +++- 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 index.d.ts diff --git a/index.d.ts b/index.d.ts new file mode 100644 index 0000000..ab5db85 --- /dev/null +++ b/index.d.ts @@ -0,0 +1,39 @@ +import { FC, ReactNode } from "react"; + +export interface ShapeVisiblitySensor { + top?: number; + left?: number; + bottom?: number; + right?: number; +} + +export interface VisibilitySensorProps { + onChange?: (isVisible: boolean) => void; + active?: boolean; + partialVisibility?: boolean; + offset?: ShapeVisiblitySensor; + minTopValue?: number; + intervalCheck?: boolean; + intervalDelay?: number; + scrollCheck?: boolean; + scrollDelay?: number; + scrollThrottle?: number; + resizeCheck?: boolean; + resizeDelay?: number; + resizeThrottle?: number; + containment?: any; + delayedCall?: boolean; + children?: + | ReactNode + | ((args: { isVisible: boolean; visibilityRect?: ShapeVisiblitySensor }) => ReactNode); +} + +declare const LazyImage: FC<{ + children: (image: string, loading: boolean, isVisible: boolean) => ReactNode; + placeholder: string; + src: string; + visibilitySensorProps?: VisibilitySensorProps; + onError?: (ev: ErrorEvent) => void; +}>; + +export default LazyImage; diff --git a/package.json b/package.json index ff7f740..60f4e6f 100644 --- a/package.json +++ b/package.json @@ -6,10 +6,12 @@ "engines": { "node": ">=6.0.0" }, + "types": "index.d.ts", "files": [ ".github", "lib", - "src" + "src", + "index.d.ts" ], "scripts": { "predev": "rimraf dist",