diff --git a/package.json b/package.json index 3ba04dc..75df9c4 100644 --- a/package.json +++ b/package.json @@ -8,10 +8,12 @@ "files": [ "cjs", "esm", - "umd" + "umd", + "typings" ], "main": "cjs/react-media.js", "module": "esm/react-media.js", + "typings": "typings/index.d.ts", "unpkg": "umd/react-media.js", "scripts": { "build": "node ./scripts/build.js", diff --git a/typings/index.d.ts b/typings/index.d.ts new file mode 100644 index 0000000..3d51c52 --- /dev/null +++ b/typings/index.d.ts @@ -0,0 +1,14 @@ +import * as React from 'react' + +export type MediaQuery = {[key: string]: string | number | boolean} +export type MediaProps = { + query: string | MediaQuery | MediaQuery[], + render?: () => React.ReactNode, + children?: React.ReactNode | ((matches: boolean) => React.ReactNode), + targetWindow?: Window, + defaultMatches?: boolean, +} +export type MediaInterface = React.ComponentClass + +declare const Media: MediaInterface +export default Media