diff --git a/types/use-set-interval/index.d.ts b/types/use-set-interval/index.d.ts new file mode 100644 index 0000000000..652d1a4920 --- /dev/null +++ b/types/use-set-interval/index.d.ts @@ -0,0 +1,12 @@ +// Type definitions for use-set-interval 1.0 +// Project: https://reacthooks.org/use-set-interval +// Definitions by: Christian Rackerseder +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.8 + +/** + * A React Hook (using useEffect) which uses window.setInterval(). + * @param fn a function to execute + * @param delay the delay between executions in milliseconds + */ +export default function useSetInterval(fn: () => void, delay: number): void; diff --git a/types/use-set-interval/tsconfig.json b/types/use-set-interval/tsconfig.json new file mode 100644 index 0000000000..b319b0c356 --- /dev/null +++ b/types/use-set-interval/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "use-set-interval-tests.ts" + ] +} diff --git a/types/use-set-interval/tslint.json b/types/use-set-interval/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/use-set-interval/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/use-set-interval/use-set-interval-tests.ts b/types/use-set-interval/use-set-interval-tests.ts new file mode 100644 index 0000000000..44bd223602 --- /dev/null +++ b/types/use-set-interval/use-set-interval-tests.ts @@ -0,0 +1,5 @@ +import { useState } from 'react'; +import useSetInterval from 'use-set-interval'; + +const [ count, setCount ] = useState(0); +useSetInterval(() => setCount(count + 1), 1000);