diff --git a/.eslintignore b/.eslintignore index 1ee96978..744591b2 100644 --- a/.eslintignore +++ b/.eslintignore @@ -4,3 +4,5 @@ # testing /coverage +# flow +/flow-typed diff --git a/.flowconfig b/.flowconfig new file mode 100644 index 00000000..2bd13069 --- /dev/null +++ b/.flowconfig @@ -0,0 +1,12 @@ +[ignore] + +[include] + +[libs] +/flow-typed + +[lints] + +[options] + +[strict] diff --git a/.travis.yml b/.travis.yml index 16a96c4e..8b20c184 100644 --- a/.travis.yml +++ b/.travis.yml @@ -16,6 +16,7 @@ before_install: script: - yarn run eslint - yarn run test + - yarn run flow after_success: - ./node_modules/.bin/codecov diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 00000000..6ec5e76f --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,11 @@ +# Changelog + +## [HEAD] +> Unreleased + +* test: add flowtype + +## [v1.0.0] +> Nov 02, 2017 + +* Make public diff --git a/README.md b/README.md index c880262f..7a17cd9a 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,11 @@ https://github.com/apps/polls ## Developer Guide +### Environments + +- Create a `.env` file from `.env.example`. +- Download the `private-key.pem` from GitHub and move it to your project’s directory. + ### Requirements - node >= 9.0.0 @@ -57,6 +62,7 @@ $ yarn start # prod server $ yarn run format $ yarn run eslint $ yarn run test:watch +$ yarn run flow ``` ### Deploy to Now.sh @@ -76,6 +82,14 @@ Any git commits push to master branch. - https://github.com/probot/commands - https://github.com/srph/gh-polls-web +## Misc + +- Redirect to github.com for private repos. [\[apex/gh-polls#3\]](https://github.com/apex/gh-polls/issues/3#issuecomment-312964372) +- PEM format doesn't play nicely with now.sh secrets/env vars. [\[probot/friction#17\]](https://github.com/probot/friction/issues/17) +- Links related to GH polls: + - [Web App](https://app.gh-polls.com/) – GH polls web app + - [apex/gh-polls](https://github.com/apex/gh-polls) – Polls for user feedback in GitHub issues [gh-polls.com](https://gh-polls.com/) + ## CONTRIBUTING * ⇄ Pull requests and ★ Stars are always welcome. diff --git a/flow-typed/npm/argv-split_vx.x.x.js b/flow-typed/npm/argv-split_vx.x.x.js new file mode 100644 index 00000000..59274c0d --- /dev/null +++ b/flow-typed/npm/argv-split_vx.x.x.js @@ -0,0 +1,46 @@ +// flow-typed signature: c9faa4940534ad3fbf048710fd3f9287 +// flow-typed version: <>/argv-split_v^2.0.1/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'argv-split' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'argv-split' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'argv-split/split' { + declare module.exports: any; +} + +declare module 'argv-split/test' { + declare module.exports: any; +} + +declare module 'argv-split/test/argv-split' { + declare module.exports: any; +} + +// Filename aliases +declare module 'argv-split/split.js' { + declare module.exports: $Exports<'argv-split/split'>; +} +declare module 'argv-split/test.js' { + declare module.exports: $Exports<'argv-split/test'>; +} +declare module 'argv-split/test/argv-split.js' { + declare module.exports: $Exports<'argv-split/test/argv-split'>; +} diff --git a/flow-typed/npm/await-url_vx.x.x.js b/flow-typed/npm/await-url_vx.x.x.js new file mode 100644 index 00000000..eaab6ff5 --- /dev/null +++ b/flow-typed/npm/await-url_vx.x.x.js @@ -0,0 +1,38 @@ +// flow-typed signature: a87db0657ca35d1ef5fb4c5a37e935de +// flow-typed version: <>/await-url_v^0.3.0/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'await-url' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'await-url' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'await-url/cli' { + declare module.exports: any; +} + +// Filename aliases +declare module 'await-url/cli.js' { + declare module.exports: $Exports<'await-url/cli'>; +} +declare module 'await-url/index' { + declare module.exports: $Exports<'await-url'>; +} +declare module 'await-url/index.js' { + declare module.exports: $Exports<'await-url'>; +} diff --git a/flow-typed/npm/babel-eslint_vx.x.x.js b/flow-typed/npm/babel-eslint_vx.x.x.js new file mode 100644 index 00000000..a5cbf98a --- /dev/null +++ b/flow-typed/npm/babel-eslint_vx.x.x.js @@ -0,0 +1,80 @@ +// flow-typed signature: 7f9ff1170369673e9e113cbdbbdf0737 +// flow-typed version: <>/babel-eslint_v^8.0.1/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'babel-eslint' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'babel-eslint' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'babel-eslint/babylon-to-espree/attachComments' { + declare module.exports: any; +} + +declare module 'babel-eslint/babylon-to-espree/convertComments' { + declare module.exports: any; +} + +declare module 'babel-eslint/babylon-to-espree/convertTemplateType' { + declare module.exports: any; +} + +declare module 'babel-eslint/babylon-to-espree/index' { + declare module.exports: any; +} + +declare module 'babel-eslint/babylon-to-espree/toAST' { + declare module.exports: any; +} + +declare module 'babel-eslint/babylon-to-espree/toToken' { + declare module.exports: any; +} + +declare module 'babel-eslint/babylon-to-espree/toTokens' { + declare module.exports: any; +} + +// Filename aliases +declare module 'babel-eslint/babylon-to-espree/attachComments.js' { + declare module.exports: $Exports<'babel-eslint/babylon-to-espree/attachComments'>; +} +declare module 'babel-eslint/babylon-to-espree/convertComments.js' { + declare module.exports: $Exports<'babel-eslint/babylon-to-espree/convertComments'>; +} +declare module 'babel-eslint/babylon-to-espree/convertTemplateType.js' { + declare module.exports: $Exports<'babel-eslint/babylon-to-espree/convertTemplateType'>; +} +declare module 'babel-eslint/babylon-to-espree/index.js' { + declare module.exports: $Exports<'babel-eslint/babylon-to-espree/index'>; +} +declare module 'babel-eslint/babylon-to-espree/toAST.js' { + declare module.exports: $Exports<'babel-eslint/babylon-to-espree/toAST'>; +} +declare module 'babel-eslint/babylon-to-espree/toToken.js' { + declare module.exports: $Exports<'babel-eslint/babylon-to-espree/toToken'>; +} +declare module 'babel-eslint/babylon-to-espree/toTokens.js' { + declare module.exports: $Exports<'babel-eslint/babylon-to-espree/toTokens'>; +} +declare module 'babel-eslint/index' { + declare module.exports: $Exports<'babel-eslint'>; +} +declare module 'babel-eslint/index.js' { + declare module.exports: $Exports<'babel-eslint'>; +} diff --git a/flow-typed/npm/codecov_vx.x.x.js b/flow-typed/npm/codecov_vx.x.x.js new file mode 100644 index 00000000..9213ded2 --- /dev/null +++ b/flow-typed/npm/codecov_vx.x.x.js @@ -0,0 +1,276 @@ +// flow-typed signature: d2013b1d94f60bfabff9acf432c21bdf +// flow-typed version: <>/codecov_v^3.0.0/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'codecov' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'codecov' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'codecov/lib/codecov' { + declare module.exports: any; +} + +declare module 'codecov/lib/detect' { + declare module.exports: any; +} + +declare module 'codecov/lib/git' { + declare module.exports: any; +} + +declare module 'codecov/lib/offline' { + declare module.exports: any; +} + +declare module 'codecov/lib/services/appveyor' { + declare module.exports: any; +} + +declare module 'codecov/lib/services/buildkite' { + declare module.exports: any; +} + +declare module 'codecov/lib/services/circle' { + declare module.exports: any; +} + +declare module 'codecov/lib/services/codeship' { + declare module.exports: any; +} + +declare module 'codecov/lib/services/drone' { + declare module.exports: any; +} + +declare module 'codecov/lib/services/gitlab' { + declare module.exports: any; +} + +declare module 'codecov/lib/services/jenkins' { + declare module.exports: any; +} + +declare module 'codecov/lib/services/localGit' { + declare module.exports: any; +} + +declare module 'codecov/lib/services/semaphore' { + declare module.exports: any; +} + +declare module 'codecov/lib/services/shippable' { + declare module.exports: any; +} + +declare module 'codecov/lib/services/snap' { + declare module.exports: any; +} + +declare module 'codecov/lib/services/travis' { + declare module.exports: any; +} + +declare module 'codecov/lib/services/wercker' { + declare module.exports: any; +} + +declare module 'codecov/test/detect' { + declare module.exports: any; +} + +declare module 'codecov/test/git' { + declare module.exports: any; +} + +declare module 'codecov/test/index' { + declare module.exports: any; +} + +declare module 'codecov/test/services/appveyor' { + declare module.exports: any; +} + +declare module 'codecov/test/services/buildkite' { + declare module.exports: any; +} + +declare module 'codecov/test/services/circle' { + declare module.exports: any; +} + +declare module 'codecov/test/services/codeship' { + declare module.exports: any; +} + +declare module 'codecov/test/services/drone' { + declare module.exports: any; +} + +declare module 'codecov/test/services/gitlab' { + declare module.exports: any; +} + +declare module 'codecov/test/services/jenkins' { + declare module.exports: any; +} + +declare module 'codecov/test/services/localGit' { + declare module.exports: any; +} + +declare module 'codecov/test/services/semaphore' { + declare module.exports: any; +} + +declare module 'codecov/test/services/shippable' { + declare module.exports: any; +} + +declare module 'codecov/test/services/snap' { + declare module.exports: any; +} + +declare module 'codecov/test/services/travis' { + declare module.exports: any; +} + +declare module 'codecov/test/services/wercker' { + declare module.exports: any; +} + +declare module 'codecov/test/upload' { + declare module.exports: any; +} + +declare module 'codecov/testinit' { + declare module.exports: any; +} + +// Filename aliases +declare module 'codecov/index' { + declare module.exports: $Exports<'codecov'>; +} +declare module 'codecov/index.js' { + declare module.exports: $Exports<'codecov'>; +} +declare module 'codecov/lib/codecov.js' { + declare module.exports: $Exports<'codecov/lib/codecov'>; +} +declare module 'codecov/lib/detect.js' { + declare module.exports: $Exports<'codecov/lib/detect'>; +} +declare module 'codecov/lib/git.js' { + declare module.exports: $Exports<'codecov/lib/git'>; +} +declare module 'codecov/lib/offline.js' { + declare module.exports: $Exports<'codecov/lib/offline'>; +} +declare module 'codecov/lib/services/appveyor.js' { + declare module.exports: $Exports<'codecov/lib/services/appveyor'>; +} +declare module 'codecov/lib/services/buildkite.js' { + declare module.exports: $Exports<'codecov/lib/services/buildkite'>; +} +declare module 'codecov/lib/services/circle.js' { + declare module.exports: $Exports<'codecov/lib/services/circle'>; +} +declare module 'codecov/lib/services/codeship.js' { + declare module.exports: $Exports<'codecov/lib/services/codeship'>; +} +declare module 'codecov/lib/services/drone.js' { + declare module.exports: $Exports<'codecov/lib/services/drone'>; +} +declare module 'codecov/lib/services/gitlab.js' { + declare module.exports: $Exports<'codecov/lib/services/gitlab'>; +} +declare module 'codecov/lib/services/jenkins.js' { + declare module.exports: $Exports<'codecov/lib/services/jenkins'>; +} +declare module 'codecov/lib/services/localGit.js' { + declare module.exports: $Exports<'codecov/lib/services/localGit'>; +} +declare module 'codecov/lib/services/semaphore.js' { + declare module.exports: $Exports<'codecov/lib/services/semaphore'>; +} +declare module 'codecov/lib/services/shippable.js' { + declare module.exports: $Exports<'codecov/lib/services/shippable'>; +} +declare module 'codecov/lib/services/snap.js' { + declare module.exports: $Exports<'codecov/lib/services/snap'>; +} +declare module 'codecov/lib/services/travis.js' { + declare module.exports: $Exports<'codecov/lib/services/travis'>; +} +declare module 'codecov/lib/services/wercker.js' { + declare module.exports: $Exports<'codecov/lib/services/wercker'>; +} +declare module 'codecov/test/detect.js' { + declare module.exports: $Exports<'codecov/test/detect'>; +} +declare module 'codecov/test/git.js' { + declare module.exports: $Exports<'codecov/test/git'>; +} +declare module 'codecov/test/index.js' { + declare module.exports: $Exports<'codecov/test/index'>; +} +declare module 'codecov/test/services/appveyor.js' { + declare module.exports: $Exports<'codecov/test/services/appveyor'>; +} +declare module 'codecov/test/services/buildkite.js' { + declare module.exports: $Exports<'codecov/test/services/buildkite'>; +} +declare module 'codecov/test/services/circle.js' { + declare module.exports: $Exports<'codecov/test/services/circle'>; +} +declare module 'codecov/test/services/codeship.js' { + declare module.exports: $Exports<'codecov/test/services/codeship'>; +} +declare module 'codecov/test/services/drone.js' { + declare module.exports: $Exports<'codecov/test/services/drone'>; +} +declare module 'codecov/test/services/gitlab.js' { + declare module.exports: $Exports<'codecov/test/services/gitlab'>; +} +declare module 'codecov/test/services/jenkins.js' { + declare module.exports: $Exports<'codecov/test/services/jenkins'>; +} +declare module 'codecov/test/services/localGit.js' { + declare module.exports: $Exports<'codecov/test/services/localGit'>; +} +declare module 'codecov/test/services/semaphore.js' { + declare module.exports: $Exports<'codecov/test/services/semaphore'>; +} +declare module 'codecov/test/services/shippable.js' { + declare module.exports: $Exports<'codecov/test/services/shippable'>; +} +declare module 'codecov/test/services/snap.js' { + declare module.exports: $Exports<'codecov/test/services/snap'>; +} +declare module 'codecov/test/services/travis.js' { + declare module.exports: $Exports<'codecov/test/services/travis'>; +} +declare module 'codecov/test/services/wercker.js' { + declare module.exports: $Exports<'codecov/test/services/wercker'>; +} +declare module 'codecov/test/upload.js' { + declare module.exports: $Exports<'codecov/test/upload'>; +} +declare module 'codecov/testinit.js' { + declare module.exports: $Exports<'codecov/testinit'>; +} diff --git a/flow-typed/npm/eslint-config-airbnb_vx.x.x.js b/flow-typed/npm/eslint-config-airbnb_vx.x.x.js new file mode 100644 index 00000000..06d96b09 --- /dev/null +++ b/flow-typed/npm/eslint-config-airbnb_vx.x.x.js @@ -0,0 +1,73 @@ +// flow-typed signature: 25b93f069555f22afe944123ad9e8746 +// flow-typed version: <>/eslint-config-airbnb_v^15.1.0/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'eslint-config-airbnb' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'eslint-config-airbnb' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'eslint-config-airbnb/base' { + declare module.exports: any; +} + +declare module 'eslint-config-airbnb/legacy' { + declare module.exports: any; +} + +declare module 'eslint-config-airbnb/rules/react-a11y' { + declare module.exports: any; +} + +declare module 'eslint-config-airbnb/rules/react' { + declare module.exports: any; +} + +declare module 'eslint-config-airbnb/test/test-base' { + declare module.exports: any; +} + +declare module 'eslint-config-airbnb/test/test-react-order' { + declare module.exports: any; +} + +// Filename aliases +declare module 'eslint-config-airbnb/base.js' { + declare module.exports: $Exports<'eslint-config-airbnb/base'>; +} +declare module 'eslint-config-airbnb/index' { + declare module.exports: $Exports<'eslint-config-airbnb'>; +} +declare module 'eslint-config-airbnb/index.js' { + declare module.exports: $Exports<'eslint-config-airbnb'>; +} +declare module 'eslint-config-airbnb/legacy.js' { + declare module.exports: $Exports<'eslint-config-airbnb/legacy'>; +} +declare module 'eslint-config-airbnb/rules/react-a11y.js' { + declare module.exports: $Exports<'eslint-config-airbnb/rules/react-a11y'>; +} +declare module 'eslint-config-airbnb/rules/react.js' { + declare module.exports: $Exports<'eslint-config-airbnb/rules/react'>; +} +declare module 'eslint-config-airbnb/test/test-base.js' { + declare module.exports: $Exports<'eslint-config-airbnb/test/test-base'>; +} +declare module 'eslint-config-airbnb/test/test-react-order.js' { + declare module.exports: $Exports<'eslint-config-airbnb/test/test-react-order'>; +} diff --git a/flow-typed/npm/eslint-config-prettier_vx.x.x.js b/flow-typed/npm/eslint-config-prettier_vx.x.x.js new file mode 100644 index 00000000..8239041b --- /dev/null +++ b/flow-typed/npm/eslint-config-prettier_vx.x.x.js @@ -0,0 +1,66 @@ +// flow-typed signature: c6c919becb9bc99eea73fb0179a7eff9 +// flow-typed version: <>/eslint-config-prettier_v^2.7.0/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'eslint-config-prettier' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'eslint-config-prettier' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'eslint-config-prettier/bin/cli' { + declare module.exports: any; +} + +declare module 'eslint-config-prettier/bin/validators' { + declare module.exports: any; +} + +declare module 'eslint-config-prettier/flowtype' { + declare module.exports: any; +} + +declare module 'eslint-config-prettier/react' { + declare module.exports: any; +} + +declare module 'eslint-config-prettier/standard' { + declare module.exports: any; +} + +// Filename aliases +declare module 'eslint-config-prettier/bin/cli.js' { + declare module.exports: $Exports<'eslint-config-prettier/bin/cli'>; +} +declare module 'eslint-config-prettier/bin/validators.js' { + declare module.exports: $Exports<'eslint-config-prettier/bin/validators'>; +} +declare module 'eslint-config-prettier/flowtype.js' { + declare module.exports: $Exports<'eslint-config-prettier/flowtype'>; +} +declare module 'eslint-config-prettier/index' { + declare module.exports: $Exports<'eslint-config-prettier'>; +} +declare module 'eslint-config-prettier/index.js' { + declare module.exports: $Exports<'eslint-config-prettier'>; +} +declare module 'eslint-config-prettier/react.js' { + declare module.exports: $Exports<'eslint-config-prettier/react'>; +} +declare module 'eslint-config-prettier/standard.js' { + declare module.exports: $Exports<'eslint-config-prettier/standard'>; +} diff --git a/flow-typed/npm/eslint-config-react-app_vx.x.x.js b/flow-typed/npm/eslint-config-react-app_vx.x.x.js new file mode 100644 index 00000000..85ce8bce --- /dev/null +++ b/flow-typed/npm/eslint-config-react-app_vx.x.x.js @@ -0,0 +1,33 @@ +// flow-typed signature: b6b5b58f7f8a793b4e74c3ab03c476f9 +// flow-typed version: <>/eslint-config-react-app_v^2.0.1/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'eslint-config-react-app' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'eslint-config-react-app' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ + + +// Filename aliases +declare module 'eslint-config-react-app/index' { + declare module.exports: $Exports<'eslint-config-react-app'>; +} +declare module 'eslint-config-react-app/index.js' { + declare module.exports: $Exports<'eslint-config-react-app'>; +} diff --git a/flow-typed/npm/eslint-plugin-flowtype_vx.x.x.js b/flow-typed/npm/eslint-plugin-flowtype_vx.x.x.js new file mode 100644 index 00000000..01c0ea21 --- /dev/null +++ b/flow-typed/npm/eslint-plugin-flowtype_vx.x.x.js @@ -0,0 +1,340 @@ +// flow-typed signature: b56f5adc02632c11429bdcfc7fcd8acd +// flow-typed version: <>/eslint-plugin-flowtype_v^2.39.1/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'eslint-plugin-flowtype' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'eslint-plugin-flowtype' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'eslint-plugin-flowtype/bin/readmeAssertions' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/index' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/booleanStyle' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/defineFlowType' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/delimiterDangle' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/genericSpacing' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/noDupeKeys' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/noMutableArray' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/noPrimitiveConstructorTypes' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/noTypesMissingFileAnnotation' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/noUnusedExpressions' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/noWeakTypes' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/objectTypeDelimiter' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/requireParameterType' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/requireReturnType' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/requireValidFileAnnotation' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/requireVariableType' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/semi' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/sortKeys' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/spaceAfterTypeColon' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/spaceBeforeGenericBracket' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/spaceBeforeTypeColon' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateFunctions' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeIndexer' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeProperty' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateReturnType' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypeCastExpression' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypical' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/index' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/reporter' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/typeIdMatch' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/unionIntersectionSpacing' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/useFlowType' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/rules/validSyntax' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/utilities/checkFlowFileAnnotation' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/utilities/fuzzyStringMatch' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/utilities/getParameterName' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/utilities/getTokenAfterParens' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/utilities/getTokenBeforeParens' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/utilities/index' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/utilities/isFlowFile' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/utilities/isFlowFileAnnotation' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/utilities/iterateFunctionNodes' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/utilities/quoteName' { + declare module.exports: any; +} + +declare module 'eslint-plugin-flowtype/dist/utilities/spacingFixers' { + declare module.exports: any; +} + +// Filename aliases +declare module 'eslint-plugin-flowtype/bin/readmeAssertions.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/bin/readmeAssertions'>; +} +declare module 'eslint-plugin-flowtype/dist/index.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/index'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/booleanStyle.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/booleanStyle'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/defineFlowType.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/defineFlowType'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/delimiterDangle.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/delimiterDangle'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/genericSpacing.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/genericSpacing'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/noDupeKeys.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noDupeKeys'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/noMutableArray.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noMutableArray'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/noPrimitiveConstructorTypes.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noPrimitiveConstructorTypes'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/noTypesMissingFileAnnotation.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noTypesMissingFileAnnotation'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/noUnusedExpressions.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noUnusedExpressions'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/noWeakTypes.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noWeakTypes'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/objectTypeDelimiter.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/objectTypeDelimiter'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/requireParameterType.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireParameterType'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/requireReturnType.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireReturnType'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/requireValidFileAnnotation.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireValidFileAnnotation'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/requireVariableType.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireVariableType'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/semi.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/semi'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/sortKeys.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/sortKeys'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/spaceAfterTypeColon.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/spaceAfterTypeColon'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/spaceBeforeGenericBracket.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/spaceBeforeGenericBracket'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/spaceBeforeTypeColon.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/spaceBeforeTypeColon'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateFunctions.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateFunctions'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeIndexer.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeIndexer'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeProperty.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeProperty'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateReturnType.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateReturnType'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypeCastExpression.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypeCastExpression'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypical.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypical'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/index.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/index'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/reporter.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/reporter'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/typeIdMatch.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeIdMatch'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/unionIntersectionSpacing.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/unionIntersectionSpacing'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/useFlowType.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/useFlowType'>; +} +declare module 'eslint-plugin-flowtype/dist/rules/validSyntax.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/validSyntax'>; +} +declare module 'eslint-plugin-flowtype/dist/utilities/checkFlowFileAnnotation.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/checkFlowFileAnnotation'>; +} +declare module 'eslint-plugin-flowtype/dist/utilities/fuzzyStringMatch.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/fuzzyStringMatch'>; +} +declare module 'eslint-plugin-flowtype/dist/utilities/getParameterName.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/getParameterName'>; +} +declare module 'eslint-plugin-flowtype/dist/utilities/getTokenAfterParens.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/getTokenAfterParens'>; +} +declare module 'eslint-plugin-flowtype/dist/utilities/getTokenBeforeParens.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/getTokenBeforeParens'>; +} +declare module 'eslint-plugin-flowtype/dist/utilities/index.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/index'>; +} +declare module 'eslint-plugin-flowtype/dist/utilities/isFlowFile.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/isFlowFile'>; +} +declare module 'eslint-plugin-flowtype/dist/utilities/isFlowFileAnnotation.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/isFlowFileAnnotation'>; +} +declare module 'eslint-plugin-flowtype/dist/utilities/iterateFunctionNodes.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/iterateFunctionNodes'>; +} +declare module 'eslint-plugin-flowtype/dist/utilities/quoteName.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/quoteName'>; +} +declare module 'eslint-plugin-flowtype/dist/utilities/spacingFixers.js' { + declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/spacingFixers'>; +} diff --git a/flow-typed/npm/eslint-plugin-import_vx.x.x.js b/flow-typed/npm/eslint-plugin-import_vx.x.x.js new file mode 100644 index 00000000..7f6ec362 --- /dev/null +++ b/flow-typed/npm/eslint-plugin-import_vx.x.x.js @@ -0,0 +1,340 @@ +// flow-typed signature: d7e445ca2589cbca713cde0e50c0147f +// flow-typed version: <>/eslint-plugin-import_v^2.8.0/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'eslint-plugin-import' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'eslint-plugin-import' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'eslint-plugin-import/config/electron' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/config/errors' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/config/react-native' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/config/react' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/config/recommended' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/config/stage-0' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/config/warnings' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/core/importType' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/core/staticRequire' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/ExportMap' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/importDeclaration' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/index' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/default' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/export' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/exports-last' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/extensions' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/first' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/imports-first' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/max-dependencies' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/named' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/namespace' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/newline-after-import' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-absolute-path' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-amd' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-anonymous-default-export' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-commonjs' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-deprecated' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-duplicates' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-dynamic-require' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-extraneous-dependencies' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-internal-modules' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-mutable-exports' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-named-as-default-member' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-named-as-default' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-named-default' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-namespace' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-nodejs-modules' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-restricted-paths' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-unassigned-import' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-unresolved' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/no-webpack-loader-syntax' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/order' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/prefer-default-export' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/lib/rules/unambiguous' { + declare module.exports: any; +} + +declare module 'eslint-plugin-import/memo-parser/index' { + declare module.exports: any; +} + +// Filename aliases +declare module 'eslint-plugin-import/config/electron.js' { + declare module.exports: $Exports<'eslint-plugin-import/config/electron'>; +} +declare module 'eslint-plugin-import/config/errors.js' { + declare module.exports: $Exports<'eslint-plugin-import/config/errors'>; +} +declare module 'eslint-plugin-import/config/react-native.js' { + declare module.exports: $Exports<'eslint-plugin-import/config/react-native'>; +} +declare module 'eslint-plugin-import/config/react.js' { + declare module.exports: $Exports<'eslint-plugin-import/config/react'>; +} +declare module 'eslint-plugin-import/config/recommended.js' { + declare module.exports: $Exports<'eslint-plugin-import/config/recommended'>; +} +declare module 'eslint-plugin-import/config/stage-0.js' { + declare module.exports: $Exports<'eslint-plugin-import/config/stage-0'>; +} +declare module 'eslint-plugin-import/config/warnings.js' { + declare module.exports: $Exports<'eslint-plugin-import/config/warnings'>; +} +declare module 'eslint-plugin-import/lib/core/importType.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/core/importType'>; +} +declare module 'eslint-plugin-import/lib/core/staticRequire.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/core/staticRequire'>; +} +declare module 'eslint-plugin-import/lib/ExportMap.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/ExportMap'>; +} +declare module 'eslint-plugin-import/lib/importDeclaration.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/importDeclaration'>; +} +declare module 'eslint-plugin-import/lib/index.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/index'>; +} +declare module 'eslint-plugin-import/lib/rules/default.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/default'>; +} +declare module 'eslint-plugin-import/lib/rules/export.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/export'>; +} +declare module 'eslint-plugin-import/lib/rules/exports-last.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/exports-last'>; +} +declare module 'eslint-plugin-import/lib/rules/extensions.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/extensions'>; +} +declare module 'eslint-plugin-import/lib/rules/first.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/first'>; +} +declare module 'eslint-plugin-import/lib/rules/imports-first.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/imports-first'>; +} +declare module 'eslint-plugin-import/lib/rules/max-dependencies.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/max-dependencies'>; +} +declare module 'eslint-plugin-import/lib/rules/named.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/named'>; +} +declare module 'eslint-plugin-import/lib/rules/namespace.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/namespace'>; +} +declare module 'eslint-plugin-import/lib/rules/newline-after-import.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/newline-after-import'>; +} +declare module 'eslint-plugin-import/lib/rules/no-absolute-path.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-absolute-path'>; +} +declare module 'eslint-plugin-import/lib/rules/no-amd.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-amd'>; +} +declare module 'eslint-plugin-import/lib/rules/no-anonymous-default-export.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-anonymous-default-export'>; +} +declare module 'eslint-plugin-import/lib/rules/no-commonjs.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-commonjs'>; +} +declare module 'eslint-plugin-import/lib/rules/no-deprecated.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-deprecated'>; +} +declare module 'eslint-plugin-import/lib/rules/no-duplicates.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-duplicates'>; +} +declare module 'eslint-plugin-import/lib/rules/no-dynamic-require.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-dynamic-require'>; +} +declare module 'eslint-plugin-import/lib/rules/no-extraneous-dependencies.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-extraneous-dependencies'>; +} +declare module 'eslint-plugin-import/lib/rules/no-internal-modules.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-internal-modules'>; +} +declare module 'eslint-plugin-import/lib/rules/no-mutable-exports.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-mutable-exports'>; +} +declare module 'eslint-plugin-import/lib/rules/no-named-as-default-member.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-named-as-default-member'>; +} +declare module 'eslint-plugin-import/lib/rules/no-named-as-default.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-named-as-default'>; +} +declare module 'eslint-plugin-import/lib/rules/no-named-default.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-named-default'>; +} +declare module 'eslint-plugin-import/lib/rules/no-namespace.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-namespace'>; +} +declare module 'eslint-plugin-import/lib/rules/no-nodejs-modules.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-nodejs-modules'>; +} +declare module 'eslint-plugin-import/lib/rules/no-restricted-paths.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-restricted-paths'>; +} +declare module 'eslint-plugin-import/lib/rules/no-unassigned-import.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-unassigned-import'>; +} +declare module 'eslint-plugin-import/lib/rules/no-unresolved.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-unresolved'>; +} +declare module 'eslint-plugin-import/lib/rules/no-webpack-loader-syntax.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/no-webpack-loader-syntax'>; +} +declare module 'eslint-plugin-import/lib/rules/order.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/order'>; +} +declare module 'eslint-plugin-import/lib/rules/prefer-default-export.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/prefer-default-export'>; +} +declare module 'eslint-plugin-import/lib/rules/unambiguous.js' { + declare module.exports: $Exports<'eslint-plugin-import/lib/rules/unambiguous'>; +} +declare module 'eslint-plugin-import/memo-parser/index.js' { + declare module.exports: $Exports<'eslint-plugin-import/memo-parser/index'>; +} diff --git a/flow-typed/npm/eslint-plugin-jest_vx.x.x.js b/flow-typed/npm/eslint-plugin-jest_vx.x.x.js new file mode 100644 index 00000000..87929f9c --- /dev/null +++ b/flow-typed/npm/eslint-plugin-jest_vx.x.x.js @@ -0,0 +1,67 @@ +// flow-typed signature: 4158e82ff72dd74e975236280d0ab12f +// flow-typed version: <>/eslint-plugin-jest_v^21.2.0/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'eslint-plugin-jest' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'eslint-plugin-jest' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'eslint-plugin-jest/build/index' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jest/build/rules/no_disabled_tests' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jest/build/rules/no_focused_tests' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jest/build/rules/no_identical_title' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jest/build/rules/types' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jest/build/rules/valid_expect' { + declare module.exports: any; +} + +// Filename aliases +declare module 'eslint-plugin-jest/build/index.js' { + declare module.exports: $Exports<'eslint-plugin-jest/build/index'>; +} +declare module 'eslint-plugin-jest/build/rules/no_disabled_tests.js' { + declare module.exports: $Exports<'eslint-plugin-jest/build/rules/no_disabled_tests'>; +} +declare module 'eslint-plugin-jest/build/rules/no_focused_tests.js' { + declare module.exports: $Exports<'eslint-plugin-jest/build/rules/no_focused_tests'>; +} +declare module 'eslint-plugin-jest/build/rules/no_identical_title.js' { + declare module.exports: $Exports<'eslint-plugin-jest/build/rules/no_identical_title'>; +} +declare module 'eslint-plugin-jest/build/rules/types.js' { + declare module.exports: $Exports<'eslint-plugin-jest/build/rules/types'>; +} +declare module 'eslint-plugin-jest/build/rules/valid_expect.js' { + declare module.exports: $Exports<'eslint-plugin-jest/build/rules/valid_expect'>; +} diff --git a/flow-typed/npm/eslint-plugin-jsx-a11y_vx.x.x.js b/flow-typed/npm/eslint-plugin-jsx-a11y_vx.x.x.js new file mode 100644 index 00000000..a9da7e3f --- /dev/null +++ b/flow-typed/npm/eslint-plugin-jsx-a11y_vx.x.x.js @@ -0,0 +1,1649 @@ +// flow-typed signature: e34ccfe48372fb8dede7baf096bc2bd2 +// flow-typed version: <>/eslint-plugin-jsx-a11y_v^5.1.1/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'eslint-plugin-jsx-a11y' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'eslint-plugin-jsx-a11y' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'eslint-plugin-jsx-a11y/__mocks__/genInteractives' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__mocks__/IdentifierMock' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__mocks__/JSXAttributeMock' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__mocks__/JSXElementMock' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__mocks__/JSXExpressionContainerMock' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/__util__/parserOptionsMapper' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/__util__/ruleOptionsMapperFactory' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/index-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/accessible-emoji-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/alt-text-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/anchor-has-content-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/anchor-is-valid-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-activedescendant-has-tabindex-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-props-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-proptypes-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-role-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-unsupported-elements-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/click-events-have-key-events-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/heading-has-content-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/href-no-hash-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/html-has-lang-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/iframe-has-title-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/img-redundant-alt-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/interactive-supports-focus-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/label-has-for-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/lang-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/media-has-caption-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/mouse-events-have-key-events-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-access-key-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-autofocus-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-distracting-elements-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-interactive-element-to-noninteractive-role-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-noninteractive-element-interactions-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-noninteractive-element-to-interactive-role-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-noninteractive-tabindex-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-onchange-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-redundant-roles-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-static-element-interactions-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/role-has-required-aria-props-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/role-supports-aria-props-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/scope-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/tabindex-no-positive-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/attributesComparator-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/getSuggestion-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/getTabIndex-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/hasAccessibleChild-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/isAbstractRole-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/isInteractiveElement-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/isInteractiveRole-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/isNonInteractiveElement-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/isNonInteractiveRole-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/parserOptionsMapper-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/schemas-test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/flow/eslint-jsx' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/flow/eslint' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/index' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/accessible-emoji' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/alt-text' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/anchor-has-content' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/anchor-is-valid' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/aria-activedescendant-has-tabindex' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/aria-props' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/aria-proptypes' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/aria-role' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/aria-unsupported-elements' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/click-events-have-key-events' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/heading-has-content' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/href-no-hash' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/html-has-lang' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/iframe-has-title' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/img-redundant-alt' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/interactive-supports-focus' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/label-has-for' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/lang' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/media-has-caption' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/mouse-events-have-key-events' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-access-key' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-autofocus' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-distracting-elements' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-interactive-element-to-noninteractive-role' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-noninteractive-element-interactions' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-noninteractive-element-to-interactive-role' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-noninteractive-tabindex' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-onchange' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-redundant-roles' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-static-element-interactions' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/role-has-required-aria-props' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/role-supports-aria-props' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/scope' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/rules/tabindex-no-positive' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/attributesComparator' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/getImplicitRole' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/getSuggestion' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/getTabIndex' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/hasAccessibleChild' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/a' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/area' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/article' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/aside' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/body' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/button' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/datalist' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/details' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/dialog' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/dl' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/form' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h1' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h2' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h3' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h4' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h5' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h6' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/hr' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/img' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/index' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/input' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/li' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/link' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/menu' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/menuitem' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/meter' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/nav' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/ol' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/option' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/output' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/progress' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/section' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/select' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/tbody' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/textarea' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/tfoot' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/thead' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/ul' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/isAbstractRole' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/isHiddenFromScreenReader' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/isInteractiveElement' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/isInteractiveRole' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/isNonInteractiveElement' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/isNonInteractiveRole' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/isPresentationRole' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/lib/util/schemas' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/scripts/addRuleToIndex' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/scripts/boilerplate/doc' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/scripts/boilerplate/rule' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/scripts/boilerplate/test' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/scripts/create-rule' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/index' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/accessible-emoji' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/alt-text' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/anchor-has-content' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/anchor-is-valid' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/aria-activedescendant-has-tabindex' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/aria-props' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/aria-proptypes' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/aria-role' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/aria-unsupported-elements' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/click-events-have-key-events' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/heading-has-content' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/href-no-hash' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/html-has-lang' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/iframe-has-title' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/img-redundant-alt' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/interactive-supports-focus' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/label-has-for' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/lang' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/media-has-caption' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/mouse-events-have-key-events' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/no-access-key' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/no-autofocus' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/no-distracting-elements' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/no-interactive-element-to-noninteractive-role' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/no-noninteractive-element-interactions' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/no-noninteractive-element-to-interactive-role' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/no-noninteractive-tabindex' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/no-onchange' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/no-redundant-roles' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/no-static-element-interactions' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/role-has-required-aria-props' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/role-supports-aria-props' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/scope' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/rules/tabindex-no-positive' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/attributesComparator' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/getImplicitRole' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/getSuggestion' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/getTabIndex' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/hasAccessibleChild' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/a' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/area' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/article' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/aside' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/body' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/button' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/datalist' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/details' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/dialog' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/dl' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/form' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/h1' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/h2' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/h3' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/h4' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/h5' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/h6' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/hr' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/img' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/index' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/input' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/li' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/link' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/menu' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/menuitem' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/meter' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/nav' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/ol' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/option' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/output' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/progress' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/section' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/select' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/tbody' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/textarea' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/tfoot' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/thead' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/ul' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/isAbstractRole' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/isHiddenFromScreenReader' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/isInteractiveElement' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/isInteractiveRole' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/isNonInteractiveElement' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/isNonInteractiveRole' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/isPresentationRole' { + declare module.exports: any; +} + +declare module 'eslint-plugin-jsx-a11y/src/util/schemas' { + declare module.exports: any; +} + +// Filename aliases +declare module 'eslint-plugin-jsx-a11y/__mocks__/genInteractives.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__mocks__/genInteractives'>; +} +declare module 'eslint-plugin-jsx-a11y/__mocks__/IdentifierMock.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__mocks__/IdentifierMock'>; +} +declare module 'eslint-plugin-jsx-a11y/__mocks__/JSXAttributeMock.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__mocks__/JSXAttributeMock'>; +} +declare module 'eslint-plugin-jsx-a11y/__mocks__/JSXElementMock.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__mocks__/JSXElementMock'>; +} +declare module 'eslint-plugin-jsx-a11y/__mocks__/JSXExpressionContainerMock.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__mocks__/JSXExpressionContainerMock'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/__util__/parserOptionsMapper.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/__util__/parserOptionsMapper'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/__util__/ruleOptionsMapperFactory.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/__util__/ruleOptionsMapperFactory'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/index-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/index-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/accessible-emoji-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/accessible-emoji-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/alt-text-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/alt-text-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/anchor-has-content-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/anchor-has-content-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/anchor-is-valid-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/anchor-is-valid-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-activedescendant-has-tabindex-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-activedescendant-has-tabindex-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-props-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-props-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-proptypes-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-proptypes-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-role-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-role-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-unsupported-elements-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/aria-unsupported-elements-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/click-events-have-key-events-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/click-events-have-key-events-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/heading-has-content-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/heading-has-content-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/href-no-hash-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/href-no-hash-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/html-has-lang-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/html-has-lang-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/iframe-has-title-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/iframe-has-title-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/img-redundant-alt-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/img-redundant-alt-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/interactive-supports-focus-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/interactive-supports-focus-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/label-has-for-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/label-has-for-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/lang-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/lang-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/media-has-caption-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/media-has-caption-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/mouse-events-have-key-events-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/mouse-events-have-key-events-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-access-key-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/no-access-key-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-autofocus-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/no-autofocus-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-distracting-elements-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/no-distracting-elements-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-interactive-element-to-noninteractive-role-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/no-interactive-element-to-noninteractive-role-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-noninteractive-element-interactions-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/no-noninteractive-element-interactions-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-noninteractive-element-to-interactive-role-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/no-noninteractive-element-to-interactive-role-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-noninteractive-tabindex-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/no-noninteractive-tabindex-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-onchange-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/no-onchange-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-redundant-roles-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/no-redundant-roles-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/no-static-element-interactions-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/no-static-element-interactions-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/role-has-required-aria-props-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/role-has-required-aria-props-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/role-supports-aria-props-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/role-supports-aria-props-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/scope-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/scope-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/rules/tabindex-no-positive-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/rules/tabindex-no-positive-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/attributesComparator-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/util/attributesComparator-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/getSuggestion-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/util/getSuggestion-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/getTabIndex-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/util/getTabIndex-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/hasAccessibleChild-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/util/hasAccessibleChild-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/isAbstractRole-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/util/isAbstractRole-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/isInteractiveElement-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/util/isInteractiveElement-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/isInteractiveRole-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/util/isInteractiveRole-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/isNonInteractiveElement-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/util/isNonInteractiveElement-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/isNonInteractiveRole-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/util/isNonInteractiveRole-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/parserOptionsMapper-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/util/parserOptionsMapper-test'>; +} +declare module 'eslint-plugin-jsx-a11y/__tests__/src/util/schemas-test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/__tests__/src/util/schemas-test'>; +} +declare module 'eslint-plugin-jsx-a11y/flow/eslint-jsx.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/flow/eslint-jsx'>; +} +declare module 'eslint-plugin-jsx-a11y/flow/eslint.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/flow/eslint'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/index.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/index'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/accessible-emoji.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/accessible-emoji'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/alt-text.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/alt-text'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/anchor-has-content.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/anchor-has-content'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/anchor-is-valid.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/anchor-is-valid'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/aria-activedescendant-has-tabindex.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/aria-activedescendant-has-tabindex'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/aria-props.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/aria-props'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/aria-proptypes.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/aria-proptypes'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/aria-role.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/aria-role'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/aria-unsupported-elements.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/aria-unsupported-elements'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/click-events-have-key-events.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/click-events-have-key-events'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/heading-has-content.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/heading-has-content'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/href-no-hash.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/href-no-hash'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/html-has-lang.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/html-has-lang'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/iframe-has-title.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/iframe-has-title'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/img-redundant-alt.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/img-redundant-alt'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/interactive-supports-focus.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/interactive-supports-focus'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/label-has-for.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/label-has-for'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/lang.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/lang'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/media-has-caption.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/media-has-caption'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/mouse-events-have-key-events.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/mouse-events-have-key-events'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-access-key.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/no-access-key'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-autofocus.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/no-autofocus'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-distracting-elements.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/no-distracting-elements'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-interactive-element-to-noninteractive-role.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/no-interactive-element-to-noninteractive-role'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-noninteractive-element-interactions.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/no-noninteractive-element-interactions'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-noninteractive-element-to-interactive-role.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/no-noninteractive-element-to-interactive-role'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-noninteractive-tabindex.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/no-noninteractive-tabindex'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-onchange.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/no-onchange'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-redundant-roles.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/no-redundant-roles'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/no-static-element-interactions.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/no-static-element-interactions'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/role-has-required-aria-props.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/role-has-required-aria-props'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/role-supports-aria-props.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/role-supports-aria-props'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/scope.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/scope'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/rules/tabindex-no-positive.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/rules/tabindex-no-positive'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/attributesComparator.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/attributesComparator'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/getImplicitRole.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/getImplicitRole'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/getSuggestion.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/getSuggestion'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/getTabIndex.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/getTabIndex'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/hasAccessibleChild.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/hasAccessibleChild'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/a.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/a'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/area.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/area'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/article.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/article'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/aside.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/aside'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/body.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/body'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/button.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/button'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/datalist.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/datalist'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/details.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/details'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/dialog.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/dialog'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/dl.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/dl'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/form.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/form'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h1.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h1'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h2.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h2'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h3.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h3'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h4.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h4'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h5.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h5'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h6.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/h6'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/hr.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/hr'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/img.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/img'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/index.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/index'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/input.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/input'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/li.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/li'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/link.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/link'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/menu.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/menu'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/menuitem.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/menuitem'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/meter.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/meter'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/nav.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/nav'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/ol.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/ol'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/option.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/option'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/output.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/output'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/progress.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/progress'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/section.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/section'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/select.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/select'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/tbody.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/tbody'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/textarea.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/textarea'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/tfoot.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/tfoot'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/thead.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/thead'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/implicitRoles/ul.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/implicitRoles/ul'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/isAbstractRole.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/isAbstractRole'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/isHiddenFromScreenReader.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/isHiddenFromScreenReader'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/isInteractiveElement.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/isInteractiveElement'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/isInteractiveRole.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/isInteractiveRole'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/isNonInteractiveElement.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/isNonInteractiveElement'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/isNonInteractiveRole.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/isNonInteractiveRole'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/isPresentationRole.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/isPresentationRole'>; +} +declare module 'eslint-plugin-jsx-a11y/lib/util/schemas.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/lib/util/schemas'>; +} +declare module 'eslint-plugin-jsx-a11y/scripts/addRuleToIndex.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/scripts/addRuleToIndex'>; +} +declare module 'eslint-plugin-jsx-a11y/scripts/boilerplate/doc.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/scripts/boilerplate/doc'>; +} +declare module 'eslint-plugin-jsx-a11y/scripts/boilerplate/rule.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/scripts/boilerplate/rule'>; +} +declare module 'eslint-plugin-jsx-a11y/scripts/boilerplate/test.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/scripts/boilerplate/test'>; +} +declare module 'eslint-plugin-jsx-a11y/scripts/create-rule.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/scripts/create-rule'>; +} +declare module 'eslint-plugin-jsx-a11y/src/index.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/index'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/accessible-emoji.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/accessible-emoji'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/alt-text.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/alt-text'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/anchor-has-content.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/anchor-has-content'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/anchor-is-valid.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/anchor-is-valid'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/aria-activedescendant-has-tabindex.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/aria-activedescendant-has-tabindex'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/aria-props.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/aria-props'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/aria-proptypes.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/aria-proptypes'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/aria-role.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/aria-role'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/aria-unsupported-elements.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/aria-unsupported-elements'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/click-events-have-key-events.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/click-events-have-key-events'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/heading-has-content.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/heading-has-content'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/href-no-hash.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/href-no-hash'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/html-has-lang.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/html-has-lang'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/iframe-has-title.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/iframe-has-title'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/img-redundant-alt.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/img-redundant-alt'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/interactive-supports-focus.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/interactive-supports-focus'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/label-has-for.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/label-has-for'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/lang.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/lang'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/media-has-caption.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/media-has-caption'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/mouse-events-have-key-events.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/mouse-events-have-key-events'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/no-access-key.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/no-access-key'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/no-autofocus.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/no-autofocus'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/no-distracting-elements.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/no-distracting-elements'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/no-interactive-element-to-noninteractive-role.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/no-interactive-element-to-noninteractive-role'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/no-noninteractive-element-interactions.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/no-noninteractive-element-interactions'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/no-noninteractive-element-to-interactive-role.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/no-noninteractive-element-to-interactive-role'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/no-noninteractive-tabindex.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/no-noninteractive-tabindex'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/no-onchange.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/no-onchange'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/no-redundant-roles.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/no-redundant-roles'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/no-static-element-interactions.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/no-static-element-interactions'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/role-has-required-aria-props.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/role-has-required-aria-props'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/role-supports-aria-props.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/role-supports-aria-props'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/scope.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/scope'>; +} +declare module 'eslint-plugin-jsx-a11y/src/rules/tabindex-no-positive.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/rules/tabindex-no-positive'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/attributesComparator.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/attributesComparator'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/getImplicitRole.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/getImplicitRole'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/getSuggestion.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/getSuggestion'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/getTabIndex.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/getTabIndex'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/hasAccessibleChild.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/hasAccessibleChild'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/a.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/a'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/area.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/area'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/article.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/article'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/aside.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/aside'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/body.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/body'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/button.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/button'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/datalist.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/datalist'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/details.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/details'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/dialog.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/dialog'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/dl.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/dl'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/form.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/form'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/h1.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/h1'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/h2.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/h2'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/h3.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/h3'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/h4.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/h4'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/h5.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/h5'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/h6.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/h6'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/hr.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/hr'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/img.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/img'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/index.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/index'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/input.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/input'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/li.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/li'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/link.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/link'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/menu.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/menu'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/menuitem.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/menuitem'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/meter.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/meter'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/nav.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/nav'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/ol.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/ol'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/option.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/option'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/output.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/output'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/progress.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/progress'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/section.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/section'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/select.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/select'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/tbody.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/tbody'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/textarea.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/textarea'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/tfoot.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/tfoot'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/thead.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/thead'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/implicitRoles/ul.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/implicitRoles/ul'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/isAbstractRole.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/isAbstractRole'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/isHiddenFromScreenReader.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/isHiddenFromScreenReader'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/isInteractiveElement.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/isInteractiveElement'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/isInteractiveRole.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/isInteractiveRole'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/isNonInteractiveElement.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/isNonInteractiveElement'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/isNonInteractiveRole.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/isNonInteractiveRole'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/isPresentationRole.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/isPresentationRole'>; +} +declare module 'eslint-plugin-jsx-a11y/src/util/schemas.js' { + declare module.exports: $Exports<'eslint-plugin-jsx-a11y/src/util/schemas'>; +} diff --git a/flow-typed/npm/eslint-plugin-prettier_vx.x.x.js b/flow-typed/npm/eslint-plugin-prettier_vx.x.x.js new file mode 100644 index 00000000..23e66dea --- /dev/null +++ b/flow-typed/npm/eslint-plugin-prettier_vx.x.x.js @@ -0,0 +1,32 @@ +// flow-typed signature: 1de2a38dc19bba6e49c61592a428b793 +// flow-typed version: <>/eslint-plugin-prettier_v^2.3.1/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'eslint-plugin-prettier' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'eslint-plugin-prettier' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'eslint-plugin-prettier/eslint-plugin-prettier' { + declare module.exports: any; +} + +// Filename aliases +declare module 'eslint-plugin-prettier/eslint-plugin-prettier.js' { + declare module.exports: $Exports<'eslint-plugin-prettier/eslint-plugin-prettier'>; +} diff --git a/flow-typed/npm/eslint-plugin-react_vx.x.x.js b/flow-typed/npm/eslint-plugin-react_vx.x.x.js new file mode 100644 index 00000000..f0d6ee04 --- /dev/null +++ b/flow-typed/npm/eslint-plugin-react_vx.x.x.js @@ -0,0 +1,542 @@ +// flow-typed signature: ec70abf082965b66acb065d0948786fb +// flow-typed version: <>/eslint-plugin-react_v^7.4.0/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'eslint-plugin-react' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'eslint-plugin-react' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'eslint-plugin-react/lib/rules/boolean-prop-naming' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/default-props-match-prop-types' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/display-name' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/forbid-component-props' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/forbid-elements' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/forbid-foreign-prop-types' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/forbid-prop-types' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-boolean-value' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-closing-bracket-location' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-closing-tag-location' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-curly-brace-presence' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-curly-spacing' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-equals-spacing' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-filename-extension' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-first-prop-new-line' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-handler-names' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-indent-props' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-indent' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-key' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-max-props-per-line' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-no-bind' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-no-comment-textnodes' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-no-duplicate-props' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-no-literals' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-no-target-blank' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-no-undef' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-pascal-case' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-sort-props' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-space-before-closing' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-tag-spacing' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-uses-react' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-uses-vars' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/jsx-wrap-multilines' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-array-index-key' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-children-prop' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-danger-with-children' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-danger' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-deprecated' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-did-mount-set-state' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-did-update-set-state' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-direct-mutation-state' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-find-dom-node' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-is-mounted' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-multi-comp' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-redundant-should-component-update' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-render-return-value' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-set-state' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-string-refs' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-typos' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-unescaped-entities' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-unknown-property' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-unused-prop-types' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-unused-state' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/no-will-update-set-state' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/prefer-es6-class' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/prefer-stateless-function' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/prop-types' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/react-in-jsx-scope' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/require-default-props' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/require-optimization' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/require-render-return' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/self-closing-comp' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/sort-comp' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/sort-prop-types' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/style-prop-object' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/rules/void-dom-elements-no-children' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/util/annotations' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/util/Components' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/util/getTokenBeforeClosingBracket' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/util/makeNoMethodSetStateRule' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/util/pragma' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/util/variable' { + declare module.exports: any; +} + +declare module 'eslint-plugin-react/lib/util/version' { + declare module.exports: any; +} + +// Filename aliases +declare module 'eslint-plugin-react/index' { + declare module.exports: $Exports<'eslint-plugin-react'>; +} +declare module 'eslint-plugin-react/index.js' { + declare module.exports: $Exports<'eslint-plugin-react'>; +} +declare module 'eslint-plugin-react/lib/rules/boolean-prop-naming.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/boolean-prop-naming'>; +} +declare module 'eslint-plugin-react/lib/rules/default-props-match-prop-types.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/default-props-match-prop-types'>; +} +declare module 'eslint-plugin-react/lib/rules/display-name.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/display-name'>; +} +declare module 'eslint-plugin-react/lib/rules/forbid-component-props.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/forbid-component-props'>; +} +declare module 'eslint-plugin-react/lib/rules/forbid-elements.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/forbid-elements'>; +} +declare module 'eslint-plugin-react/lib/rules/forbid-foreign-prop-types.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/forbid-foreign-prop-types'>; +} +declare module 'eslint-plugin-react/lib/rules/forbid-prop-types.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/forbid-prop-types'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-boolean-value.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-boolean-value'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-closing-bracket-location.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-closing-bracket-location'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-closing-tag-location.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-closing-tag-location'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-curly-brace-presence.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-curly-brace-presence'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-curly-spacing.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-curly-spacing'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-equals-spacing.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-equals-spacing'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-filename-extension.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-filename-extension'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-first-prop-new-line.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-first-prop-new-line'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-handler-names.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-handler-names'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-indent-props.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-indent-props'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-indent.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-indent'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-key.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-key'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-max-props-per-line.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-max-props-per-line'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-no-bind.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-no-bind'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-no-comment-textnodes.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-no-comment-textnodes'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-no-duplicate-props.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-no-duplicate-props'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-no-literals.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-no-literals'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-no-target-blank.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-no-target-blank'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-no-undef.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-no-undef'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-pascal-case.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-pascal-case'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-sort-props.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-sort-props'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-space-before-closing.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-space-before-closing'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-tag-spacing.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-tag-spacing'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-uses-react.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-uses-react'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-uses-vars.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-uses-vars'>; +} +declare module 'eslint-plugin-react/lib/rules/jsx-wrap-multilines.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/jsx-wrap-multilines'>; +} +declare module 'eslint-plugin-react/lib/rules/no-array-index-key.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-array-index-key'>; +} +declare module 'eslint-plugin-react/lib/rules/no-children-prop.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-children-prop'>; +} +declare module 'eslint-plugin-react/lib/rules/no-danger-with-children.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-danger-with-children'>; +} +declare module 'eslint-plugin-react/lib/rules/no-danger.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-danger'>; +} +declare module 'eslint-plugin-react/lib/rules/no-deprecated.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-deprecated'>; +} +declare module 'eslint-plugin-react/lib/rules/no-did-mount-set-state.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-did-mount-set-state'>; +} +declare module 'eslint-plugin-react/lib/rules/no-did-update-set-state.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-did-update-set-state'>; +} +declare module 'eslint-plugin-react/lib/rules/no-direct-mutation-state.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-direct-mutation-state'>; +} +declare module 'eslint-plugin-react/lib/rules/no-find-dom-node.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-find-dom-node'>; +} +declare module 'eslint-plugin-react/lib/rules/no-is-mounted.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-is-mounted'>; +} +declare module 'eslint-plugin-react/lib/rules/no-multi-comp.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-multi-comp'>; +} +declare module 'eslint-plugin-react/lib/rules/no-redundant-should-component-update.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-redundant-should-component-update'>; +} +declare module 'eslint-plugin-react/lib/rules/no-render-return-value.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-render-return-value'>; +} +declare module 'eslint-plugin-react/lib/rules/no-set-state.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-set-state'>; +} +declare module 'eslint-plugin-react/lib/rules/no-string-refs.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-string-refs'>; +} +declare module 'eslint-plugin-react/lib/rules/no-typos.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-typos'>; +} +declare module 'eslint-plugin-react/lib/rules/no-unescaped-entities.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-unescaped-entities'>; +} +declare module 'eslint-plugin-react/lib/rules/no-unknown-property.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-unknown-property'>; +} +declare module 'eslint-plugin-react/lib/rules/no-unused-prop-types.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-unused-prop-types'>; +} +declare module 'eslint-plugin-react/lib/rules/no-unused-state.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-unused-state'>; +} +declare module 'eslint-plugin-react/lib/rules/no-will-update-set-state.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-will-update-set-state'>; +} +declare module 'eslint-plugin-react/lib/rules/prefer-es6-class.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/prefer-es6-class'>; +} +declare module 'eslint-plugin-react/lib/rules/prefer-stateless-function.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/prefer-stateless-function'>; +} +declare module 'eslint-plugin-react/lib/rules/prop-types.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/prop-types'>; +} +declare module 'eslint-plugin-react/lib/rules/react-in-jsx-scope.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/react-in-jsx-scope'>; +} +declare module 'eslint-plugin-react/lib/rules/require-default-props.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/require-default-props'>; +} +declare module 'eslint-plugin-react/lib/rules/require-optimization.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/require-optimization'>; +} +declare module 'eslint-plugin-react/lib/rules/require-render-return.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/require-render-return'>; +} +declare module 'eslint-plugin-react/lib/rules/self-closing-comp.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/self-closing-comp'>; +} +declare module 'eslint-plugin-react/lib/rules/sort-comp.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/sort-comp'>; +} +declare module 'eslint-plugin-react/lib/rules/sort-prop-types.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/sort-prop-types'>; +} +declare module 'eslint-plugin-react/lib/rules/style-prop-object.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/style-prop-object'>; +} +declare module 'eslint-plugin-react/lib/rules/void-dom-elements-no-children.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/void-dom-elements-no-children'>; +} +declare module 'eslint-plugin-react/lib/util/annotations.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/util/annotations'>; +} +declare module 'eslint-plugin-react/lib/util/Components.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/util/Components'>; +} +declare module 'eslint-plugin-react/lib/util/getTokenBeforeClosingBracket.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/util/getTokenBeforeClosingBracket'>; +} +declare module 'eslint-plugin-react/lib/util/makeNoMethodSetStateRule.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/util/makeNoMethodSetStateRule'>; +} +declare module 'eslint-plugin-react/lib/util/pragma.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/util/pragma'>; +} +declare module 'eslint-plugin-react/lib/util/variable.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/util/variable'>; +} +declare module 'eslint-plugin-react/lib/util/version.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/util/version'>; +} diff --git a/flow-typed/npm/eslint_vx.x.x.js b/flow-typed/npm/eslint_vx.x.x.js new file mode 100644 index 00000000..66ae65c6 --- /dev/null +++ b/flow-typed/npm/eslint_vx.x.x.js @@ -0,0 +1,2391 @@ +// flow-typed signature: 6c393cd555a79cedc437812949f224f4 +// flow-typed version: <>/eslint_v^4.10.0/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'eslint' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'eslint' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'eslint/bin/eslint' { + declare module.exports: any; +} + +declare module 'eslint/conf/config-schema' { + declare module.exports: any; +} + +declare module 'eslint/conf/default-cli-options' { + declare module.exports: any; +} + +declare module 'eslint/conf/default-config-options' { + declare module.exports: any; +} + +declare module 'eslint/conf/environments' { + declare module.exports: any; +} + +declare module 'eslint/conf/eslint-all' { + declare module.exports: any; +} + +declare module 'eslint/conf/eslint-recommended' { + declare module.exports: any; +} + +declare module 'eslint/lib/api' { + declare module.exports: any; +} + +declare module 'eslint/lib/ast-utils' { + declare module.exports: any; +} + +declare module 'eslint/lib/cli-engine' { + declare module.exports: any; +} + +declare module 'eslint/lib/cli' { + declare module.exports: any; +} + +declare module 'eslint/lib/code-path-analysis/code-path-analyzer' { + declare module.exports: any; +} + +declare module 'eslint/lib/code-path-analysis/code-path-segment' { + declare module.exports: any; +} + +declare module 'eslint/lib/code-path-analysis/code-path-state' { + declare module.exports: any; +} + +declare module 'eslint/lib/code-path-analysis/code-path' { + declare module.exports: any; +} + +declare module 'eslint/lib/code-path-analysis/debug-helpers' { + declare module.exports: any; +} + +declare module 'eslint/lib/code-path-analysis/fork-context' { + declare module.exports: any; +} + +declare module 'eslint/lib/code-path-analysis/id-generator' { + declare module.exports: any; +} + +declare module 'eslint/lib/config' { + declare module.exports: any; +} + +declare module 'eslint/lib/config/autoconfig' { + declare module.exports: any; +} + +declare module 'eslint/lib/config/config-cache' { + declare module.exports: any; +} + +declare module 'eslint/lib/config/config-file' { + declare module.exports: any; +} + +declare module 'eslint/lib/config/config-initializer' { + declare module.exports: any; +} + +declare module 'eslint/lib/config/config-ops' { + declare module.exports: any; +} + +declare module 'eslint/lib/config/config-rule' { + declare module.exports: any; +} + +declare module 'eslint/lib/config/config-validator' { + declare module.exports: any; +} + +declare module 'eslint/lib/config/environments' { + declare module.exports: any; +} + +declare module 'eslint/lib/config/plugins' { + declare module.exports: any; +} + +declare module 'eslint/lib/file-finder' { + declare module.exports: any; +} + +declare module 'eslint/lib/formatters/checkstyle' { + declare module.exports: any; +} + +declare module 'eslint/lib/formatters/codeframe' { + declare module.exports: any; +} + +declare module 'eslint/lib/formatters/compact' { + declare module.exports: any; +} + +declare module 'eslint/lib/formatters/html' { + declare module.exports: any; +} + +declare module 'eslint/lib/formatters/jslint-xml' { + declare module.exports: any; +} + +declare module 'eslint/lib/formatters/json' { + declare module.exports: any; +} + +declare module 'eslint/lib/formatters/junit' { + declare module.exports: any; +} + +declare module 'eslint/lib/formatters/stylish' { + declare module.exports: any; +} + +declare module 'eslint/lib/formatters/table' { + declare module.exports: any; +} + +declare module 'eslint/lib/formatters/tap' { + declare module.exports: any; +} + +declare module 'eslint/lib/formatters/unix' { + declare module.exports: any; +} + +declare module 'eslint/lib/formatters/visualstudio' { + declare module.exports: any; +} + +declare module 'eslint/lib/ignored-paths' { + declare module.exports: any; +} + +declare module 'eslint/lib/linter' { + declare module.exports: any; +} + +declare module 'eslint/lib/load-rules' { + declare module.exports: any; +} + +declare module 'eslint/lib/logging' { + declare module.exports: any; +} + +declare module 'eslint/lib/options' { + declare module.exports: any; +} + +declare module 'eslint/lib/report-translator' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/accessor-pairs' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/array-bracket-newline' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/array-bracket-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/array-callback-return' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/array-element-newline' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/arrow-body-style' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/arrow-parens' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/arrow-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/block-scoped-var' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/block-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/brace-style' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/callback-return' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/camelcase' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/capitalized-comments' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/class-methods-use-this' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/comma-dangle' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/comma-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/comma-style' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/complexity' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/computed-property-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/consistent-return' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/consistent-this' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/constructor-super' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/curly' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/default-case' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/dot-location' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/dot-notation' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/eol-last' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/eqeqeq' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/for-direction' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/func-call-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/func-name-matching' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/func-names' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/func-style' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/function-paren-newline' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/generator-star-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/getter-return' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/global-require' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/guard-for-in' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/handle-callback-err' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/id-blacklist' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/id-length' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/id-match' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/indent-legacy' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/indent' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/init-declarations' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/jsx-quotes' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/key-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/keyword-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/line-comment-position' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/linebreak-style' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/lines-around-comment' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/lines-around-directive' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/lines-between-class-members' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/max-depth' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/max-len' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/max-lines' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/max-nested-callbacks' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/max-params' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/max-statements-per-line' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/max-statements' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/multiline-comment-style' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/multiline-ternary' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/new-cap' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/new-parens' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/newline-after-var' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/newline-before-return' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/newline-per-chained-call' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-alert' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-array-constructor' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-await-in-loop' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-bitwise' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-buffer-constructor' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-caller' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-case-declarations' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-catch-shadow' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-class-assign' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-compare-neg-zero' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-cond-assign' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-confusing-arrow' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-console' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-const-assign' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-constant-condition' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-continue' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-control-regex' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-debugger' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-delete-var' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-div-regex' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-dupe-args' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-dupe-class-members' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-dupe-keys' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-duplicate-case' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-duplicate-imports' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-else-return' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-empty-character-class' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-empty-function' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-empty-pattern' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-empty' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-eq-null' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-eval' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-ex-assign' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-extend-native' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-extra-bind' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-extra-boolean-cast' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-extra-label' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-extra-parens' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-extra-semi' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-fallthrough' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-floating-decimal' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-func-assign' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-global-assign' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-implicit-coercion' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-implicit-globals' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-implied-eval' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-inline-comments' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-inner-declarations' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-invalid-regexp' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-invalid-this' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-irregular-whitespace' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-iterator' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-label-var' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-labels' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-lone-blocks' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-lonely-if' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-loop-func' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-magic-numbers' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-mixed-operators' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-mixed-requires' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-mixed-spaces-and-tabs' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-multi-assign' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-multi-spaces' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-multi-str' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-multiple-empty-lines' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-native-reassign' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-negated-condition' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-negated-in-lhs' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-nested-ternary' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-new-func' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-new-object' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-new-require' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-new-symbol' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-new-wrappers' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-new' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-obj-calls' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-octal-escape' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-octal' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-param-reassign' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-path-concat' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-plusplus' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-process-env' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-process-exit' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-proto' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-prototype-builtins' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-redeclare' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-regex-spaces' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-restricted-globals' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-restricted-imports' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-restricted-modules' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-restricted-properties' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-restricted-syntax' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-return-assign' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-return-await' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-script-url' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-self-assign' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-self-compare' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-sequences' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-shadow-restricted-names' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-shadow' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-spaced-func' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-sparse-arrays' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-sync' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-tabs' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-template-curly-in-string' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-ternary' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-this-before-super' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-throw-literal' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-trailing-spaces' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-undef-init' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-undef' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-undefined' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-underscore-dangle' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-unexpected-multiline' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-unmodified-loop-condition' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-unneeded-ternary' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-unreachable' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-unsafe-finally' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-unsafe-negation' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-unused-expressions' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-unused-labels' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-unused-vars' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-use-before-define' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-useless-call' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-useless-computed-key' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-useless-concat' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-useless-constructor' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-useless-escape' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-useless-rename' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-useless-return' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-var' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-void' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-warning-comments' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-whitespace-before-property' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/no-with' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/nonblock-statement-body-position' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/object-curly-newline' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/object-curly-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/object-property-newline' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/object-shorthand' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/one-var-declaration-per-line' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/one-var' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/operator-assignment' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/operator-linebreak' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/padded-blocks' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/padding-line-between-statements' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/prefer-arrow-callback' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/prefer-const' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/prefer-destructuring' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/prefer-numeric-literals' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/prefer-promise-reject-errors' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/prefer-reflect' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/prefer-rest-params' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/prefer-spread' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/prefer-template' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/quote-props' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/quotes' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/radix' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/require-await' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/require-jsdoc' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/require-yield' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/rest-spread-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/semi-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/semi-style' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/semi' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/sort-imports' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/sort-keys' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/sort-vars' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/space-before-blocks' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/space-before-function-paren' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/space-in-parens' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/space-infix-ops' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/space-unary-ops' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/spaced-comment' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/strict' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/switch-colon-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/symbol-description' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/template-curly-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/template-tag-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/unicode-bom' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/use-isnan' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/valid-jsdoc' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/valid-typeof' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/vars-on-top' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/wrap-iife' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/wrap-regex' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/yield-star-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/yoda' { + declare module.exports: any; +} + +declare module 'eslint/lib/testers/rule-tester' { + declare module.exports: any; +} + +declare module 'eslint/lib/timing' { + declare module.exports: any; +} + +declare module 'eslint/lib/token-store/backward-token-comment-cursor' { + declare module.exports: any; +} + +declare module 'eslint/lib/token-store/backward-token-cursor' { + declare module.exports: any; +} + +declare module 'eslint/lib/token-store/cursor' { + declare module.exports: any; +} + +declare module 'eslint/lib/token-store/cursors' { + declare module.exports: any; +} + +declare module 'eslint/lib/token-store/decorative-cursor' { + declare module.exports: any; +} + +declare module 'eslint/lib/token-store/filter-cursor' { + declare module.exports: any; +} + +declare module 'eslint/lib/token-store/forward-token-comment-cursor' { + declare module.exports: any; +} + +declare module 'eslint/lib/token-store/forward-token-cursor' { + declare module.exports: any; +} + +declare module 'eslint/lib/token-store/index' { + declare module.exports: any; +} + +declare module 'eslint/lib/token-store/limit-cursor' { + declare module.exports: any; +} + +declare module 'eslint/lib/token-store/padded-token-cursor' { + declare module.exports: any; +} + +declare module 'eslint/lib/token-store/skip-cursor' { + declare module.exports: any; +} + +declare module 'eslint/lib/token-store/utils' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/ajv' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/apply-disable-directives' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/fix-tracker' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/glob-util' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/glob' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/hash' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/keywords' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/module-resolver' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/node-event-generator' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/npm-util' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/path-util' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/patterns/letters' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/rule-fixer' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/safe-emitter' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/source-code-fixer' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/source-code-util' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/source-code' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/traverser' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/xml-escape' { + declare module.exports: any; +} + +// Filename aliases +declare module 'eslint/bin/eslint.js' { + declare module.exports: $Exports<'eslint/bin/eslint'>; +} +declare module 'eslint/conf/config-schema.js' { + declare module.exports: $Exports<'eslint/conf/config-schema'>; +} +declare module 'eslint/conf/default-cli-options.js' { + declare module.exports: $Exports<'eslint/conf/default-cli-options'>; +} +declare module 'eslint/conf/default-config-options.js' { + declare module.exports: $Exports<'eslint/conf/default-config-options'>; +} +declare module 'eslint/conf/environments.js' { + declare module.exports: $Exports<'eslint/conf/environments'>; +} +declare module 'eslint/conf/eslint-all.js' { + declare module.exports: $Exports<'eslint/conf/eslint-all'>; +} +declare module 'eslint/conf/eslint-recommended.js' { + declare module.exports: $Exports<'eslint/conf/eslint-recommended'>; +} +declare module 'eslint/lib/api.js' { + declare module.exports: $Exports<'eslint/lib/api'>; +} +declare module 'eslint/lib/ast-utils.js' { + declare module.exports: $Exports<'eslint/lib/ast-utils'>; +} +declare module 'eslint/lib/cli-engine.js' { + declare module.exports: $Exports<'eslint/lib/cli-engine'>; +} +declare module 'eslint/lib/cli.js' { + declare module.exports: $Exports<'eslint/lib/cli'>; +} +declare module 'eslint/lib/code-path-analysis/code-path-analyzer.js' { + declare module.exports: $Exports<'eslint/lib/code-path-analysis/code-path-analyzer'>; +} +declare module 'eslint/lib/code-path-analysis/code-path-segment.js' { + declare module.exports: $Exports<'eslint/lib/code-path-analysis/code-path-segment'>; +} +declare module 'eslint/lib/code-path-analysis/code-path-state.js' { + declare module.exports: $Exports<'eslint/lib/code-path-analysis/code-path-state'>; +} +declare module 'eslint/lib/code-path-analysis/code-path.js' { + declare module.exports: $Exports<'eslint/lib/code-path-analysis/code-path'>; +} +declare module 'eslint/lib/code-path-analysis/debug-helpers.js' { + declare module.exports: $Exports<'eslint/lib/code-path-analysis/debug-helpers'>; +} +declare module 'eslint/lib/code-path-analysis/fork-context.js' { + declare module.exports: $Exports<'eslint/lib/code-path-analysis/fork-context'>; +} +declare module 'eslint/lib/code-path-analysis/id-generator.js' { + declare module.exports: $Exports<'eslint/lib/code-path-analysis/id-generator'>; +} +declare module 'eslint/lib/config.js' { + declare module.exports: $Exports<'eslint/lib/config'>; +} +declare module 'eslint/lib/config/autoconfig.js' { + declare module.exports: $Exports<'eslint/lib/config/autoconfig'>; +} +declare module 'eslint/lib/config/config-cache.js' { + declare module.exports: $Exports<'eslint/lib/config/config-cache'>; +} +declare module 'eslint/lib/config/config-file.js' { + declare module.exports: $Exports<'eslint/lib/config/config-file'>; +} +declare module 'eslint/lib/config/config-initializer.js' { + declare module.exports: $Exports<'eslint/lib/config/config-initializer'>; +} +declare module 'eslint/lib/config/config-ops.js' { + declare module.exports: $Exports<'eslint/lib/config/config-ops'>; +} +declare module 'eslint/lib/config/config-rule.js' { + declare module.exports: $Exports<'eslint/lib/config/config-rule'>; +} +declare module 'eslint/lib/config/config-validator.js' { + declare module.exports: $Exports<'eslint/lib/config/config-validator'>; +} +declare module 'eslint/lib/config/environments.js' { + declare module.exports: $Exports<'eslint/lib/config/environments'>; +} +declare module 'eslint/lib/config/plugins.js' { + declare module.exports: $Exports<'eslint/lib/config/plugins'>; +} +declare module 'eslint/lib/file-finder.js' { + declare module.exports: $Exports<'eslint/lib/file-finder'>; +} +declare module 'eslint/lib/formatters/checkstyle.js' { + declare module.exports: $Exports<'eslint/lib/formatters/checkstyle'>; +} +declare module 'eslint/lib/formatters/codeframe.js' { + declare module.exports: $Exports<'eslint/lib/formatters/codeframe'>; +} +declare module 'eslint/lib/formatters/compact.js' { + declare module.exports: $Exports<'eslint/lib/formatters/compact'>; +} +declare module 'eslint/lib/formatters/html.js' { + declare module.exports: $Exports<'eslint/lib/formatters/html'>; +} +declare module 'eslint/lib/formatters/jslint-xml.js' { + declare module.exports: $Exports<'eslint/lib/formatters/jslint-xml'>; +} +declare module 'eslint/lib/formatters/json.js' { + declare module.exports: $Exports<'eslint/lib/formatters/json'>; +} +declare module 'eslint/lib/formatters/junit.js' { + declare module.exports: $Exports<'eslint/lib/formatters/junit'>; +} +declare module 'eslint/lib/formatters/stylish.js' { + declare module.exports: $Exports<'eslint/lib/formatters/stylish'>; +} +declare module 'eslint/lib/formatters/table.js' { + declare module.exports: $Exports<'eslint/lib/formatters/table'>; +} +declare module 'eslint/lib/formatters/tap.js' { + declare module.exports: $Exports<'eslint/lib/formatters/tap'>; +} +declare module 'eslint/lib/formatters/unix.js' { + declare module.exports: $Exports<'eslint/lib/formatters/unix'>; +} +declare module 'eslint/lib/formatters/visualstudio.js' { + declare module.exports: $Exports<'eslint/lib/formatters/visualstudio'>; +} +declare module 'eslint/lib/ignored-paths.js' { + declare module.exports: $Exports<'eslint/lib/ignored-paths'>; +} +declare module 'eslint/lib/linter.js' { + declare module.exports: $Exports<'eslint/lib/linter'>; +} +declare module 'eslint/lib/load-rules.js' { + declare module.exports: $Exports<'eslint/lib/load-rules'>; +} +declare module 'eslint/lib/logging.js' { + declare module.exports: $Exports<'eslint/lib/logging'>; +} +declare module 'eslint/lib/options.js' { + declare module.exports: $Exports<'eslint/lib/options'>; +} +declare module 'eslint/lib/report-translator.js' { + declare module.exports: $Exports<'eslint/lib/report-translator'>; +} +declare module 'eslint/lib/rules.js' { + declare module.exports: $Exports<'eslint/lib/rules'>; +} +declare module 'eslint/lib/rules/accessor-pairs.js' { + declare module.exports: $Exports<'eslint/lib/rules/accessor-pairs'>; +} +declare module 'eslint/lib/rules/array-bracket-newline.js' { + declare module.exports: $Exports<'eslint/lib/rules/array-bracket-newline'>; +} +declare module 'eslint/lib/rules/array-bracket-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/array-bracket-spacing'>; +} +declare module 'eslint/lib/rules/array-callback-return.js' { + declare module.exports: $Exports<'eslint/lib/rules/array-callback-return'>; +} +declare module 'eslint/lib/rules/array-element-newline.js' { + declare module.exports: $Exports<'eslint/lib/rules/array-element-newline'>; +} +declare module 'eslint/lib/rules/arrow-body-style.js' { + declare module.exports: $Exports<'eslint/lib/rules/arrow-body-style'>; +} +declare module 'eslint/lib/rules/arrow-parens.js' { + declare module.exports: $Exports<'eslint/lib/rules/arrow-parens'>; +} +declare module 'eslint/lib/rules/arrow-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/arrow-spacing'>; +} +declare module 'eslint/lib/rules/block-scoped-var.js' { + declare module.exports: $Exports<'eslint/lib/rules/block-scoped-var'>; +} +declare module 'eslint/lib/rules/block-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/block-spacing'>; +} +declare module 'eslint/lib/rules/brace-style.js' { + declare module.exports: $Exports<'eslint/lib/rules/brace-style'>; +} +declare module 'eslint/lib/rules/callback-return.js' { + declare module.exports: $Exports<'eslint/lib/rules/callback-return'>; +} +declare module 'eslint/lib/rules/camelcase.js' { + declare module.exports: $Exports<'eslint/lib/rules/camelcase'>; +} +declare module 'eslint/lib/rules/capitalized-comments.js' { + declare module.exports: $Exports<'eslint/lib/rules/capitalized-comments'>; +} +declare module 'eslint/lib/rules/class-methods-use-this.js' { + declare module.exports: $Exports<'eslint/lib/rules/class-methods-use-this'>; +} +declare module 'eslint/lib/rules/comma-dangle.js' { + declare module.exports: $Exports<'eslint/lib/rules/comma-dangle'>; +} +declare module 'eslint/lib/rules/comma-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/comma-spacing'>; +} +declare module 'eslint/lib/rules/comma-style.js' { + declare module.exports: $Exports<'eslint/lib/rules/comma-style'>; +} +declare module 'eslint/lib/rules/complexity.js' { + declare module.exports: $Exports<'eslint/lib/rules/complexity'>; +} +declare module 'eslint/lib/rules/computed-property-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/computed-property-spacing'>; +} +declare module 'eslint/lib/rules/consistent-return.js' { + declare module.exports: $Exports<'eslint/lib/rules/consistent-return'>; +} +declare module 'eslint/lib/rules/consistent-this.js' { + declare module.exports: $Exports<'eslint/lib/rules/consistent-this'>; +} +declare module 'eslint/lib/rules/constructor-super.js' { + declare module.exports: $Exports<'eslint/lib/rules/constructor-super'>; +} +declare module 'eslint/lib/rules/curly.js' { + declare module.exports: $Exports<'eslint/lib/rules/curly'>; +} +declare module 'eslint/lib/rules/default-case.js' { + declare module.exports: $Exports<'eslint/lib/rules/default-case'>; +} +declare module 'eslint/lib/rules/dot-location.js' { + declare module.exports: $Exports<'eslint/lib/rules/dot-location'>; +} +declare module 'eslint/lib/rules/dot-notation.js' { + declare module.exports: $Exports<'eslint/lib/rules/dot-notation'>; +} +declare module 'eslint/lib/rules/eol-last.js' { + declare module.exports: $Exports<'eslint/lib/rules/eol-last'>; +} +declare module 'eslint/lib/rules/eqeqeq.js' { + declare module.exports: $Exports<'eslint/lib/rules/eqeqeq'>; +} +declare module 'eslint/lib/rules/for-direction.js' { + declare module.exports: $Exports<'eslint/lib/rules/for-direction'>; +} +declare module 'eslint/lib/rules/func-call-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/func-call-spacing'>; +} +declare module 'eslint/lib/rules/func-name-matching.js' { + declare module.exports: $Exports<'eslint/lib/rules/func-name-matching'>; +} +declare module 'eslint/lib/rules/func-names.js' { + declare module.exports: $Exports<'eslint/lib/rules/func-names'>; +} +declare module 'eslint/lib/rules/func-style.js' { + declare module.exports: $Exports<'eslint/lib/rules/func-style'>; +} +declare module 'eslint/lib/rules/function-paren-newline.js' { + declare module.exports: $Exports<'eslint/lib/rules/function-paren-newline'>; +} +declare module 'eslint/lib/rules/generator-star-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/generator-star-spacing'>; +} +declare module 'eslint/lib/rules/getter-return.js' { + declare module.exports: $Exports<'eslint/lib/rules/getter-return'>; +} +declare module 'eslint/lib/rules/global-require.js' { + declare module.exports: $Exports<'eslint/lib/rules/global-require'>; +} +declare module 'eslint/lib/rules/guard-for-in.js' { + declare module.exports: $Exports<'eslint/lib/rules/guard-for-in'>; +} +declare module 'eslint/lib/rules/handle-callback-err.js' { + declare module.exports: $Exports<'eslint/lib/rules/handle-callback-err'>; +} +declare module 'eslint/lib/rules/id-blacklist.js' { + declare module.exports: $Exports<'eslint/lib/rules/id-blacklist'>; +} +declare module 'eslint/lib/rules/id-length.js' { + declare module.exports: $Exports<'eslint/lib/rules/id-length'>; +} +declare module 'eslint/lib/rules/id-match.js' { + declare module.exports: $Exports<'eslint/lib/rules/id-match'>; +} +declare module 'eslint/lib/rules/indent-legacy.js' { + declare module.exports: $Exports<'eslint/lib/rules/indent-legacy'>; +} +declare module 'eslint/lib/rules/indent.js' { + declare module.exports: $Exports<'eslint/lib/rules/indent'>; +} +declare module 'eslint/lib/rules/init-declarations.js' { + declare module.exports: $Exports<'eslint/lib/rules/init-declarations'>; +} +declare module 'eslint/lib/rules/jsx-quotes.js' { + declare module.exports: $Exports<'eslint/lib/rules/jsx-quotes'>; +} +declare module 'eslint/lib/rules/key-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/key-spacing'>; +} +declare module 'eslint/lib/rules/keyword-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/keyword-spacing'>; +} +declare module 'eslint/lib/rules/line-comment-position.js' { + declare module.exports: $Exports<'eslint/lib/rules/line-comment-position'>; +} +declare module 'eslint/lib/rules/linebreak-style.js' { + declare module.exports: $Exports<'eslint/lib/rules/linebreak-style'>; +} +declare module 'eslint/lib/rules/lines-around-comment.js' { + declare module.exports: $Exports<'eslint/lib/rules/lines-around-comment'>; +} +declare module 'eslint/lib/rules/lines-around-directive.js' { + declare module.exports: $Exports<'eslint/lib/rules/lines-around-directive'>; +} +declare module 'eslint/lib/rules/lines-between-class-members.js' { + declare module.exports: $Exports<'eslint/lib/rules/lines-between-class-members'>; +} +declare module 'eslint/lib/rules/max-depth.js' { + declare module.exports: $Exports<'eslint/lib/rules/max-depth'>; +} +declare module 'eslint/lib/rules/max-len.js' { + declare module.exports: $Exports<'eslint/lib/rules/max-len'>; +} +declare module 'eslint/lib/rules/max-lines.js' { + declare module.exports: $Exports<'eslint/lib/rules/max-lines'>; +} +declare module 'eslint/lib/rules/max-nested-callbacks.js' { + declare module.exports: $Exports<'eslint/lib/rules/max-nested-callbacks'>; +} +declare module 'eslint/lib/rules/max-params.js' { + declare module.exports: $Exports<'eslint/lib/rules/max-params'>; +} +declare module 'eslint/lib/rules/max-statements-per-line.js' { + declare module.exports: $Exports<'eslint/lib/rules/max-statements-per-line'>; +} +declare module 'eslint/lib/rules/max-statements.js' { + declare module.exports: $Exports<'eslint/lib/rules/max-statements'>; +} +declare module 'eslint/lib/rules/multiline-comment-style.js' { + declare module.exports: $Exports<'eslint/lib/rules/multiline-comment-style'>; +} +declare module 'eslint/lib/rules/multiline-ternary.js' { + declare module.exports: $Exports<'eslint/lib/rules/multiline-ternary'>; +} +declare module 'eslint/lib/rules/new-cap.js' { + declare module.exports: $Exports<'eslint/lib/rules/new-cap'>; +} +declare module 'eslint/lib/rules/new-parens.js' { + declare module.exports: $Exports<'eslint/lib/rules/new-parens'>; +} +declare module 'eslint/lib/rules/newline-after-var.js' { + declare module.exports: $Exports<'eslint/lib/rules/newline-after-var'>; +} +declare module 'eslint/lib/rules/newline-before-return.js' { + declare module.exports: $Exports<'eslint/lib/rules/newline-before-return'>; +} +declare module 'eslint/lib/rules/newline-per-chained-call.js' { + declare module.exports: $Exports<'eslint/lib/rules/newline-per-chained-call'>; +} +declare module 'eslint/lib/rules/no-alert.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-alert'>; +} +declare module 'eslint/lib/rules/no-array-constructor.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-array-constructor'>; +} +declare module 'eslint/lib/rules/no-await-in-loop.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-await-in-loop'>; +} +declare module 'eslint/lib/rules/no-bitwise.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-bitwise'>; +} +declare module 'eslint/lib/rules/no-buffer-constructor.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-buffer-constructor'>; +} +declare module 'eslint/lib/rules/no-caller.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-caller'>; +} +declare module 'eslint/lib/rules/no-case-declarations.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-case-declarations'>; +} +declare module 'eslint/lib/rules/no-catch-shadow.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-catch-shadow'>; +} +declare module 'eslint/lib/rules/no-class-assign.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-class-assign'>; +} +declare module 'eslint/lib/rules/no-compare-neg-zero.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-compare-neg-zero'>; +} +declare module 'eslint/lib/rules/no-cond-assign.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-cond-assign'>; +} +declare module 'eslint/lib/rules/no-confusing-arrow.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-confusing-arrow'>; +} +declare module 'eslint/lib/rules/no-console.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-console'>; +} +declare module 'eslint/lib/rules/no-const-assign.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-const-assign'>; +} +declare module 'eslint/lib/rules/no-constant-condition.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-constant-condition'>; +} +declare module 'eslint/lib/rules/no-continue.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-continue'>; +} +declare module 'eslint/lib/rules/no-control-regex.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-control-regex'>; +} +declare module 'eslint/lib/rules/no-debugger.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-debugger'>; +} +declare module 'eslint/lib/rules/no-delete-var.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-delete-var'>; +} +declare module 'eslint/lib/rules/no-div-regex.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-div-regex'>; +} +declare module 'eslint/lib/rules/no-dupe-args.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-dupe-args'>; +} +declare module 'eslint/lib/rules/no-dupe-class-members.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-dupe-class-members'>; +} +declare module 'eslint/lib/rules/no-dupe-keys.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-dupe-keys'>; +} +declare module 'eslint/lib/rules/no-duplicate-case.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-duplicate-case'>; +} +declare module 'eslint/lib/rules/no-duplicate-imports.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-duplicate-imports'>; +} +declare module 'eslint/lib/rules/no-else-return.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-else-return'>; +} +declare module 'eslint/lib/rules/no-empty-character-class.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-empty-character-class'>; +} +declare module 'eslint/lib/rules/no-empty-function.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-empty-function'>; +} +declare module 'eslint/lib/rules/no-empty-pattern.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-empty-pattern'>; +} +declare module 'eslint/lib/rules/no-empty.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-empty'>; +} +declare module 'eslint/lib/rules/no-eq-null.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-eq-null'>; +} +declare module 'eslint/lib/rules/no-eval.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-eval'>; +} +declare module 'eslint/lib/rules/no-ex-assign.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-ex-assign'>; +} +declare module 'eslint/lib/rules/no-extend-native.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-extend-native'>; +} +declare module 'eslint/lib/rules/no-extra-bind.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-extra-bind'>; +} +declare module 'eslint/lib/rules/no-extra-boolean-cast.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-extra-boolean-cast'>; +} +declare module 'eslint/lib/rules/no-extra-label.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-extra-label'>; +} +declare module 'eslint/lib/rules/no-extra-parens.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-extra-parens'>; +} +declare module 'eslint/lib/rules/no-extra-semi.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-extra-semi'>; +} +declare module 'eslint/lib/rules/no-fallthrough.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-fallthrough'>; +} +declare module 'eslint/lib/rules/no-floating-decimal.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-floating-decimal'>; +} +declare module 'eslint/lib/rules/no-func-assign.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-func-assign'>; +} +declare module 'eslint/lib/rules/no-global-assign.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-global-assign'>; +} +declare module 'eslint/lib/rules/no-implicit-coercion.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-implicit-coercion'>; +} +declare module 'eslint/lib/rules/no-implicit-globals.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-implicit-globals'>; +} +declare module 'eslint/lib/rules/no-implied-eval.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-implied-eval'>; +} +declare module 'eslint/lib/rules/no-inline-comments.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-inline-comments'>; +} +declare module 'eslint/lib/rules/no-inner-declarations.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-inner-declarations'>; +} +declare module 'eslint/lib/rules/no-invalid-regexp.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-invalid-regexp'>; +} +declare module 'eslint/lib/rules/no-invalid-this.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-invalid-this'>; +} +declare module 'eslint/lib/rules/no-irregular-whitespace.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-irregular-whitespace'>; +} +declare module 'eslint/lib/rules/no-iterator.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-iterator'>; +} +declare module 'eslint/lib/rules/no-label-var.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-label-var'>; +} +declare module 'eslint/lib/rules/no-labels.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-labels'>; +} +declare module 'eslint/lib/rules/no-lone-blocks.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-lone-blocks'>; +} +declare module 'eslint/lib/rules/no-lonely-if.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-lonely-if'>; +} +declare module 'eslint/lib/rules/no-loop-func.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-loop-func'>; +} +declare module 'eslint/lib/rules/no-magic-numbers.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-magic-numbers'>; +} +declare module 'eslint/lib/rules/no-mixed-operators.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-mixed-operators'>; +} +declare module 'eslint/lib/rules/no-mixed-requires.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-mixed-requires'>; +} +declare module 'eslint/lib/rules/no-mixed-spaces-and-tabs.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-mixed-spaces-and-tabs'>; +} +declare module 'eslint/lib/rules/no-multi-assign.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-multi-assign'>; +} +declare module 'eslint/lib/rules/no-multi-spaces.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-multi-spaces'>; +} +declare module 'eslint/lib/rules/no-multi-str.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-multi-str'>; +} +declare module 'eslint/lib/rules/no-multiple-empty-lines.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-multiple-empty-lines'>; +} +declare module 'eslint/lib/rules/no-native-reassign.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-native-reassign'>; +} +declare module 'eslint/lib/rules/no-negated-condition.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-negated-condition'>; +} +declare module 'eslint/lib/rules/no-negated-in-lhs.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-negated-in-lhs'>; +} +declare module 'eslint/lib/rules/no-nested-ternary.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-nested-ternary'>; +} +declare module 'eslint/lib/rules/no-new-func.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-new-func'>; +} +declare module 'eslint/lib/rules/no-new-object.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-new-object'>; +} +declare module 'eslint/lib/rules/no-new-require.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-new-require'>; +} +declare module 'eslint/lib/rules/no-new-symbol.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-new-symbol'>; +} +declare module 'eslint/lib/rules/no-new-wrappers.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-new-wrappers'>; +} +declare module 'eslint/lib/rules/no-new.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-new'>; +} +declare module 'eslint/lib/rules/no-obj-calls.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-obj-calls'>; +} +declare module 'eslint/lib/rules/no-octal-escape.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-octal-escape'>; +} +declare module 'eslint/lib/rules/no-octal.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-octal'>; +} +declare module 'eslint/lib/rules/no-param-reassign.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-param-reassign'>; +} +declare module 'eslint/lib/rules/no-path-concat.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-path-concat'>; +} +declare module 'eslint/lib/rules/no-plusplus.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-plusplus'>; +} +declare module 'eslint/lib/rules/no-process-env.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-process-env'>; +} +declare module 'eslint/lib/rules/no-process-exit.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-process-exit'>; +} +declare module 'eslint/lib/rules/no-proto.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-proto'>; +} +declare module 'eslint/lib/rules/no-prototype-builtins.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-prototype-builtins'>; +} +declare module 'eslint/lib/rules/no-redeclare.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-redeclare'>; +} +declare module 'eslint/lib/rules/no-regex-spaces.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-regex-spaces'>; +} +declare module 'eslint/lib/rules/no-restricted-globals.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-restricted-globals'>; +} +declare module 'eslint/lib/rules/no-restricted-imports.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-restricted-imports'>; +} +declare module 'eslint/lib/rules/no-restricted-modules.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-restricted-modules'>; +} +declare module 'eslint/lib/rules/no-restricted-properties.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-restricted-properties'>; +} +declare module 'eslint/lib/rules/no-restricted-syntax.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-restricted-syntax'>; +} +declare module 'eslint/lib/rules/no-return-assign.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-return-assign'>; +} +declare module 'eslint/lib/rules/no-return-await.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-return-await'>; +} +declare module 'eslint/lib/rules/no-script-url.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-script-url'>; +} +declare module 'eslint/lib/rules/no-self-assign.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-self-assign'>; +} +declare module 'eslint/lib/rules/no-self-compare.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-self-compare'>; +} +declare module 'eslint/lib/rules/no-sequences.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-sequences'>; +} +declare module 'eslint/lib/rules/no-shadow-restricted-names.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-shadow-restricted-names'>; +} +declare module 'eslint/lib/rules/no-shadow.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-shadow'>; +} +declare module 'eslint/lib/rules/no-spaced-func.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-spaced-func'>; +} +declare module 'eslint/lib/rules/no-sparse-arrays.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-sparse-arrays'>; +} +declare module 'eslint/lib/rules/no-sync.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-sync'>; +} +declare module 'eslint/lib/rules/no-tabs.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-tabs'>; +} +declare module 'eslint/lib/rules/no-template-curly-in-string.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-template-curly-in-string'>; +} +declare module 'eslint/lib/rules/no-ternary.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-ternary'>; +} +declare module 'eslint/lib/rules/no-this-before-super.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-this-before-super'>; +} +declare module 'eslint/lib/rules/no-throw-literal.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-throw-literal'>; +} +declare module 'eslint/lib/rules/no-trailing-spaces.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-trailing-spaces'>; +} +declare module 'eslint/lib/rules/no-undef-init.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-undef-init'>; +} +declare module 'eslint/lib/rules/no-undef.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-undef'>; +} +declare module 'eslint/lib/rules/no-undefined.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-undefined'>; +} +declare module 'eslint/lib/rules/no-underscore-dangle.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-underscore-dangle'>; +} +declare module 'eslint/lib/rules/no-unexpected-multiline.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-unexpected-multiline'>; +} +declare module 'eslint/lib/rules/no-unmodified-loop-condition.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-unmodified-loop-condition'>; +} +declare module 'eslint/lib/rules/no-unneeded-ternary.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-unneeded-ternary'>; +} +declare module 'eslint/lib/rules/no-unreachable.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-unreachable'>; +} +declare module 'eslint/lib/rules/no-unsafe-finally.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-unsafe-finally'>; +} +declare module 'eslint/lib/rules/no-unsafe-negation.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-unsafe-negation'>; +} +declare module 'eslint/lib/rules/no-unused-expressions.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-unused-expressions'>; +} +declare module 'eslint/lib/rules/no-unused-labels.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-unused-labels'>; +} +declare module 'eslint/lib/rules/no-unused-vars.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-unused-vars'>; +} +declare module 'eslint/lib/rules/no-use-before-define.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-use-before-define'>; +} +declare module 'eslint/lib/rules/no-useless-call.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-useless-call'>; +} +declare module 'eslint/lib/rules/no-useless-computed-key.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-useless-computed-key'>; +} +declare module 'eslint/lib/rules/no-useless-concat.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-useless-concat'>; +} +declare module 'eslint/lib/rules/no-useless-constructor.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-useless-constructor'>; +} +declare module 'eslint/lib/rules/no-useless-escape.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-useless-escape'>; +} +declare module 'eslint/lib/rules/no-useless-rename.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-useless-rename'>; +} +declare module 'eslint/lib/rules/no-useless-return.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-useless-return'>; +} +declare module 'eslint/lib/rules/no-var.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-var'>; +} +declare module 'eslint/lib/rules/no-void.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-void'>; +} +declare module 'eslint/lib/rules/no-warning-comments.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-warning-comments'>; +} +declare module 'eslint/lib/rules/no-whitespace-before-property.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-whitespace-before-property'>; +} +declare module 'eslint/lib/rules/no-with.js' { + declare module.exports: $Exports<'eslint/lib/rules/no-with'>; +} +declare module 'eslint/lib/rules/nonblock-statement-body-position.js' { + declare module.exports: $Exports<'eslint/lib/rules/nonblock-statement-body-position'>; +} +declare module 'eslint/lib/rules/object-curly-newline.js' { + declare module.exports: $Exports<'eslint/lib/rules/object-curly-newline'>; +} +declare module 'eslint/lib/rules/object-curly-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/object-curly-spacing'>; +} +declare module 'eslint/lib/rules/object-property-newline.js' { + declare module.exports: $Exports<'eslint/lib/rules/object-property-newline'>; +} +declare module 'eslint/lib/rules/object-shorthand.js' { + declare module.exports: $Exports<'eslint/lib/rules/object-shorthand'>; +} +declare module 'eslint/lib/rules/one-var-declaration-per-line.js' { + declare module.exports: $Exports<'eslint/lib/rules/one-var-declaration-per-line'>; +} +declare module 'eslint/lib/rules/one-var.js' { + declare module.exports: $Exports<'eslint/lib/rules/one-var'>; +} +declare module 'eslint/lib/rules/operator-assignment.js' { + declare module.exports: $Exports<'eslint/lib/rules/operator-assignment'>; +} +declare module 'eslint/lib/rules/operator-linebreak.js' { + declare module.exports: $Exports<'eslint/lib/rules/operator-linebreak'>; +} +declare module 'eslint/lib/rules/padded-blocks.js' { + declare module.exports: $Exports<'eslint/lib/rules/padded-blocks'>; +} +declare module 'eslint/lib/rules/padding-line-between-statements.js' { + declare module.exports: $Exports<'eslint/lib/rules/padding-line-between-statements'>; +} +declare module 'eslint/lib/rules/prefer-arrow-callback.js' { + declare module.exports: $Exports<'eslint/lib/rules/prefer-arrow-callback'>; +} +declare module 'eslint/lib/rules/prefer-const.js' { + declare module.exports: $Exports<'eslint/lib/rules/prefer-const'>; +} +declare module 'eslint/lib/rules/prefer-destructuring.js' { + declare module.exports: $Exports<'eslint/lib/rules/prefer-destructuring'>; +} +declare module 'eslint/lib/rules/prefer-numeric-literals.js' { + declare module.exports: $Exports<'eslint/lib/rules/prefer-numeric-literals'>; +} +declare module 'eslint/lib/rules/prefer-promise-reject-errors.js' { + declare module.exports: $Exports<'eslint/lib/rules/prefer-promise-reject-errors'>; +} +declare module 'eslint/lib/rules/prefer-reflect.js' { + declare module.exports: $Exports<'eslint/lib/rules/prefer-reflect'>; +} +declare module 'eslint/lib/rules/prefer-rest-params.js' { + declare module.exports: $Exports<'eslint/lib/rules/prefer-rest-params'>; +} +declare module 'eslint/lib/rules/prefer-spread.js' { + declare module.exports: $Exports<'eslint/lib/rules/prefer-spread'>; +} +declare module 'eslint/lib/rules/prefer-template.js' { + declare module.exports: $Exports<'eslint/lib/rules/prefer-template'>; +} +declare module 'eslint/lib/rules/quote-props.js' { + declare module.exports: $Exports<'eslint/lib/rules/quote-props'>; +} +declare module 'eslint/lib/rules/quotes.js' { + declare module.exports: $Exports<'eslint/lib/rules/quotes'>; +} +declare module 'eslint/lib/rules/radix.js' { + declare module.exports: $Exports<'eslint/lib/rules/radix'>; +} +declare module 'eslint/lib/rules/require-await.js' { + declare module.exports: $Exports<'eslint/lib/rules/require-await'>; +} +declare module 'eslint/lib/rules/require-jsdoc.js' { + declare module.exports: $Exports<'eslint/lib/rules/require-jsdoc'>; +} +declare module 'eslint/lib/rules/require-yield.js' { + declare module.exports: $Exports<'eslint/lib/rules/require-yield'>; +} +declare module 'eslint/lib/rules/rest-spread-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/rest-spread-spacing'>; +} +declare module 'eslint/lib/rules/semi-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/semi-spacing'>; +} +declare module 'eslint/lib/rules/semi-style.js' { + declare module.exports: $Exports<'eslint/lib/rules/semi-style'>; +} +declare module 'eslint/lib/rules/semi.js' { + declare module.exports: $Exports<'eslint/lib/rules/semi'>; +} +declare module 'eslint/lib/rules/sort-imports.js' { + declare module.exports: $Exports<'eslint/lib/rules/sort-imports'>; +} +declare module 'eslint/lib/rules/sort-keys.js' { + declare module.exports: $Exports<'eslint/lib/rules/sort-keys'>; +} +declare module 'eslint/lib/rules/sort-vars.js' { + declare module.exports: $Exports<'eslint/lib/rules/sort-vars'>; +} +declare module 'eslint/lib/rules/space-before-blocks.js' { + declare module.exports: $Exports<'eslint/lib/rules/space-before-blocks'>; +} +declare module 'eslint/lib/rules/space-before-function-paren.js' { + declare module.exports: $Exports<'eslint/lib/rules/space-before-function-paren'>; +} +declare module 'eslint/lib/rules/space-in-parens.js' { + declare module.exports: $Exports<'eslint/lib/rules/space-in-parens'>; +} +declare module 'eslint/lib/rules/space-infix-ops.js' { + declare module.exports: $Exports<'eslint/lib/rules/space-infix-ops'>; +} +declare module 'eslint/lib/rules/space-unary-ops.js' { + declare module.exports: $Exports<'eslint/lib/rules/space-unary-ops'>; +} +declare module 'eslint/lib/rules/spaced-comment.js' { + declare module.exports: $Exports<'eslint/lib/rules/spaced-comment'>; +} +declare module 'eslint/lib/rules/strict.js' { + declare module.exports: $Exports<'eslint/lib/rules/strict'>; +} +declare module 'eslint/lib/rules/switch-colon-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/switch-colon-spacing'>; +} +declare module 'eslint/lib/rules/symbol-description.js' { + declare module.exports: $Exports<'eslint/lib/rules/symbol-description'>; +} +declare module 'eslint/lib/rules/template-curly-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/template-curly-spacing'>; +} +declare module 'eslint/lib/rules/template-tag-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/template-tag-spacing'>; +} +declare module 'eslint/lib/rules/unicode-bom.js' { + declare module.exports: $Exports<'eslint/lib/rules/unicode-bom'>; +} +declare module 'eslint/lib/rules/use-isnan.js' { + declare module.exports: $Exports<'eslint/lib/rules/use-isnan'>; +} +declare module 'eslint/lib/rules/valid-jsdoc.js' { + declare module.exports: $Exports<'eslint/lib/rules/valid-jsdoc'>; +} +declare module 'eslint/lib/rules/valid-typeof.js' { + declare module.exports: $Exports<'eslint/lib/rules/valid-typeof'>; +} +declare module 'eslint/lib/rules/vars-on-top.js' { + declare module.exports: $Exports<'eslint/lib/rules/vars-on-top'>; +} +declare module 'eslint/lib/rules/wrap-iife.js' { + declare module.exports: $Exports<'eslint/lib/rules/wrap-iife'>; +} +declare module 'eslint/lib/rules/wrap-regex.js' { + declare module.exports: $Exports<'eslint/lib/rules/wrap-regex'>; +} +declare module 'eslint/lib/rules/yield-star-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/yield-star-spacing'>; +} +declare module 'eslint/lib/rules/yoda.js' { + declare module.exports: $Exports<'eslint/lib/rules/yoda'>; +} +declare module 'eslint/lib/testers/rule-tester.js' { + declare module.exports: $Exports<'eslint/lib/testers/rule-tester'>; +} +declare module 'eslint/lib/timing.js' { + declare module.exports: $Exports<'eslint/lib/timing'>; +} +declare module 'eslint/lib/token-store/backward-token-comment-cursor.js' { + declare module.exports: $Exports<'eslint/lib/token-store/backward-token-comment-cursor'>; +} +declare module 'eslint/lib/token-store/backward-token-cursor.js' { + declare module.exports: $Exports<'eslint/lib/token-store/backward-token-cursor'>; +} +declare module 'eslint/lib/token-store/cursor.js' { + declare module.exports: $Exports<'eslint/lib/token-store/cursor'>; +} +declare module 'eslint/lib/token-store/cursors.js' { + declare module.exports: $Exports<'eslint/lib/token-store/cursors'>; +} +declare module 'eslint/lib/token-store/decorative-cursor.js' { + declare module.exports: $Exports<'eslint/lib/token-store/decorative-cursor'>; +} +declare module 'eslint/lib/token-store/filter-cursor.js' { + declare module.exports: $Exports<'eslint/lib/token-store/filter-cursor'>; +} +declare module 'eslint/lib/token-store/forward-token-comment-cursor.js' { + declare module.exports: $Exports<'eslint/lib/token-store/forward-token-comment-cursor'>; +} +declare module 'eslint/lib/token-store/forward-token-cursor.js' { + declare module.exports: $Exports<'eslint/lib/token-store/forward-token-cursor'>; +} +declare module 'eslint/lib/token-store/index.js' { + declare module.exports: $Exports<'eslint/lib/token-store/index'>; +} +declare module 'eslint/lib/token-store/limit-cursor.js' { + declare module.exports: $Exports<'eslint/lib/token-store/limit-cursor'>; +} +declare module 'eslint/lib/token-store/padded-token-cursor.js' { + declare module.exports: $Exports<'eslint/lib/token-store/padded-token-cursor'>; +} +declare module 'eslint/lib/token-store/skip-cursor.js' { + declare module.exports: $Exports<'eslint/lib/token-store/skip-cursor'>; +} +declare module 'eslint/lib/token-store/utils.js' { + declare module.exports: $Exports<'eslint/lib/token-store/utils'>; +} +declare module 'eslint/lib/util/ajv.js' { + declare module.exports: $Exports<'eslint/lib/util/ajv'>; +} +declare module 'eslint/lib/util/apply-disable-directives.js' { + declare module.exports: $Exports<'eslint/lib/util/apply-disable-directives'>; +} +declare module 'eslint/lib/util/fix-tracker.js' { + declare module.exports: $Exports<'eslint/lib/util/fix-tracker'>; +} +declare module 'eslint/lib/util/glob-util.js' { + declare module.exports: $Exports<'eslint/lib/util/glob-util'>; +} +declare module 'eslint/lib/util/glob.js' { + declare module.exports: $Exports<'eslint/lib/util/glob'>; +} +declare module 'eslint/lib/util/hash.js' { + declare module.exports: $Exports<'eslint/lib/util/hash'>; +} +declare module 'eslint/lib/util/keywords.js' { + declare module.exports: $Exports<'eslint/lib/util/keywords'>; +} +declare module 'eslint/lib/util/module-resolver.js' { + declare module.exports: $Exports<'eslint/lib/util/module-resolver'>; +} +declare module 'eslint/lib/util/node-event-generator.js' { + declare module.exports: $Exports<'eslint/lib/util/node-event-generator'>; +} +declare module 'eslint/lib/util/npm-util.js' { + declare module.exports: $Exports<'eslint/lib/util/npm-util'>; +} +declare module 'eslint/lib/util/path-util.js' { + declare module.exports: $Exports<'eslint/lib/util/path-util'>; +} +declare module 'eslint/lib/util/patterns/letters.js' { + declare module.exports: $Exports<'eslint/lib/util/patterns/letters'>; +} +declare module 'eslint/lib/util/rule-fixer.js' { + declare module.exports: $Exports<'eslint/lib/util/rule-fixer'>; +} +declare module 'eslint/lib/util/safe-emitter.js' { + declare module.exports: $Exports<'eslint/lib/util/safe-emitter'>; +} +declare module 'eslint/lib/util/source-code-fixer.js' { + declare module.exports: $Exports<'eslint/lib/util/source-code-fixer'>; +} +declare module 'eslint/lib/util/source-code-util.js' { + declare module.exports: $Exports<'eslint/lib/util/source-code-util'>; +} +declare module 'eslint/lib/util/source-code.js' { + declare module.exports: $Exports<'eslint/lib/util/source-code'>; +} +declare module 'eslint/lib/util/traverser.js' { + declare module.exports: $Exports<'eslint/lib/util/traverser'>; +} +declare module 'eslint/lib/util/xml-escape.js' { + declare module.exports: $Exports<'eslint/lib/util/xml-escape'>; +} diff --git a/flow-typed/npm/flow-bin_v0.x.x.js b/flow-typed/npm/flow-bin_v0.x.x.js new file mode 100644 index 00000000..c538e208 --- /dev/null +++ b/flow-typed/npm/flow-bin_v0.x.x.js @@ -0,0 +1,6 @@ +// flow-typed signature: 6a5610678d4b01e13bbfbbc62bdaf583 +// flow-typed version: 3817bc6980/flow-bin_v0.x.x/flow_>=v0.25.x + +declare module "flow-bin" { + declare module.exports: string; +} diff --git a/flow-typed/npm/jest_v21.x.x.js b/flow-typed/npm/jest_v21.x.x.js new file mode 100644 index 00000000..9b84323b --- /dev/null +++ b/flow-typed/npm/jest_v21.x.x.js @@ -0,0 +1,579 @@ +// flow-typed signature: 65527f14a5f7e89fb28d0a29f45dc848 +// flow-typed version: c7c67b81c1/jest_v21.x.x/flow_>=v0.39.x + +type JestMockFn, TReturn> = { + (...args: TArguments): TReturn, + /** + * An object for introspecting mock calls + */ + mock: { + /** + * An array that represents all calls that have been made into this mock + * function. Each call is represented by an array of arguments that were + * passed during the call. + */ + calls: Array, + /** + * An array that contains all the object instances that have been + * instantiated from this mock function. + */ + instances: Array + }, + /** + * Resets all information stored in the mockFn.mock.calls and + * mockFn.mock.instances arrays. Often this is useful when you want to clean + * up a mock's usage data between two assertions. + */ + mockClear(): void, + /** + * Resets all information stored in the mock. This is useful when you want to + * completely restore a mock back to its initial state. + */ + mockReset(): void, + /** + * Removes the mock and restores the initial implementation. This is useful + * when you want to mock functions in certain test cases and restore the + * original implementation in others. Beware that mockFn.mockRestore only + * works when mock was created with jest.spyOn. Thus you have to take care of + * restoration yourself when manually assigning jest.fn(). + */ + mockRestore(): void, + /** + * Accepts a function that should be used as the implementation of the mock. + * The mock itself will still record all calls that go into and instances + * that come from itself -- the only difference is that the implementation + * will also be executed when the mock is called. + */ + mockImplementation( + fn: (...args: TArguments) => TReturn + ): JestMockFn, + /** + * Accepts a function that will be used as an implementation of the mock for + * one call to the mocked function. Can be chained so that multiple function + * calls produce different results. + */ + mockImplementationOnce( + fn: (...args: TArguments) => TReturn + ): JestMockFn, + /** + * Just a simple sugar function for returning `this` + */ + mockReturnThis(): void, + /** + * Deprecated: use jest.fn(() => value) instead + */ + mockReturnValue(value: TReturn): JestMockFn, + /** + * Sugar for only returning a value once inside your mock + */ + mockReturnValueOnce(value: TReturn): JestMockFn +}; + +type JestAsymmetricEqualityType = { + /** + * A custom Jasmine equality tester + */ + asymmetricMatch(value: mixed): boolean +}; + +type JestCallsType = { + allArgs(): mixed, + all(): mixed, + any(): boolean, + count(): number, + first(): mixed, + mostRecent(): mixed, + reset(): void +}; + +type JestClockType = { + install(): void, + mockDate(date: Date): void, + tick(milliseconds?: number): void, + uninstall(): void +}; + +type JestMatcherResult = { + message?: string | (() => string), + pass: boolean +}; + +type JestMatcher = (actual: any, expected: any) => JestMatcherResult; + +type JestPromiseType = { + /** + * Use rejects to unwrap the reason of a rejected promise so any other + * matcher can be chained. If the promise is fulfilled the assertion fails. + */ + rejects: JestExpectType, + /** + * Use resolves to unwrap the value of a fulfilled promise so any other + * matcher can be chained. If the promise is rejected the assertion fails. + */ + resolves: JestExpectType +}; + +/** + * Plugin: jest-enzyme + */ +type EnzymeMatchersType = { + toBeChecked(): void, + toBeDisabled(): void, + toBeEmpty(): void, + toBePresent(): void, + toContainReact(element: React$Element): void, + toHaveClassName(className: string): void, + toHaveHTML(html: string): void, + toHaveProp(propKey: string, propValue?: any): void, + toHaveRef(refName: string): void, + toHaveState(stateKey: string, stateValue?: any): void, + toHaveStyle(styleKey: string, styleValue?: any): void, + toHaveTagName(tagName: string): void, + toHaveText(text: string): void, + toIncludeText(text: string): void, + toHaveValue(value: any): void, + toMatchElement(element: React$Element): void, + toMatchSelector(selector: string): void +}; + +type JestExpectType = { + not: JestExpectType & EnzymeMatchersType, + /** + * If you have a mock function, you can use .lastCalledWith to test what + * arguments it was last called with. + */ + lastCalledWith(...args: Array): void, + /** + * toBe just checks that a value is what you expect. It uses === to check + * strict equality. + */ + toBe(value: any): void, + /** + * Use .toHaveBeenCalled to ensure that a mock function got called. + */ + toBeCalled(): void, + /** + * Use .toBeCalledWith to ensure that a mock function was called with + * specific arguments. + */ + toBeCalledWith(...args: Array): void, + /** + * Using exact equality with floating point numbers is a bad idea. Rounding + * means that intuitive things fail. + */ + toBeCloseTo(num: number, delta: any): void, + /** + * Use .toBeDefined to check that a variable is not undefined. + */ + toBeDefined(): void, + /** + * Use .toBeFalsy when you don't care what a value is, you just want to + * ensure a value is false in a boolean context. + */ + toBeFalsy(): void, + /** + * To compare floating point numbers, you can use toBeGreaterThan. + */ + toBeGreaterThan(number: number): void, + /** + * To compare floating point numbers, you can use toBeGreaterThanOrEqual. + */ + toBeGreaterThanOrEqual(number: number): void, + /** + * To compare floating point numbers, you can use toBeLessThan. + */ + toBeLessThan(number: number): void, + /** + * To compare floating point numbers, you can use toBeLessThanOrEqual. + */ + toBeLessThanOrEqual(number: number): void, + /** + * Use .toBeInstanceOf(Class) to check that an object is an instance of a + * class. + */ + toBeInstanceOf(cls: Class<*>): void, + /** + * .toBeNull() is the same as .toBe(null) but the error messages are a bit + * nicer. + */ + toBeNull(): void, + /** + * Use .toBeTruthy when you don't care what a value is, you just want to + * ensure a value is true in a boolean context. + */ + toBeTruthy(): void, + /** + * Use .toBeUndefined to check that a variable is undefined. + */ + toBeUndefined(): void, + /** + * Use .toContain when you want to check that an item is in a list. For + * testing the items in the list, this uses ===, a strict equality check. + */ + toContain(item: any): void, + /** + * Use .toContainEqual when you want to check that an item is in a list. For + * testing the items in the list, this matcher recursively checks the + * equality of all fields, rather than checking for object identity. + */ + toContainEqual(item: any): void, + /** + * Use .toEqual when you want to check that two objects have the same value. + * This matcher recursively checks the equality of all fields, rather than + * checking for object identity. + */ + toEqual(value: any): void, + /** + * Use .toHaveBeenCalled to ensure that a mock function got called. + */ + toHaveBeenCalled(): void, + /** + * Use .toHaveBeenCalledTimes to ensure that a mock function got called exact + * number of times. + */ + toHaveBeenCalledTimes(number: number): void, + /** + * Use .toHaveBeenCalledWith to ensure that a mock function was called with + * specific arguments. + */ + toHaveBeenCalledWith(...args: Array): void, + /** + * Use .toHaveBeenLastCalledWith to ensure that a mock function was last called + * with specific arguments. + */ + toHaveBeenLastCalledWith(...args: Array): void, + /** + * Check that an object has a .length property and it is set to a certain + * numeric value. + */ + toHaveLength(number: number): void, + /** + * + */ + toHaveProperty(propPath: string, value?: any): void, + /** + * Use .toMatch to check that a string matches a regular expression or string. + */ + toMatch(regexpOrString: RegExp | string): void, + /** + * Use .toMatchObject to check that a javascript object matches a subset of the properties of an object. + */ + toMatchObject(object: Object): void, + /** + * This ensures that a React component matches the most recent snapshot. + */ + toMatchSnapshot(name?: string): void, + /** + * Use .toThrow to test that a function throws when it is called. + * If you want to test that a specific error gets thrown, you can provide an + * argument to toThrow. The argument can be a string for the error message, + * a class for the error, or a regex that should match the error. + * + * Alias: .toThrowError + */ + toThrow(message?: string | Error | RegExp): void, + toThrowError(message?: string | Error | RegExp): void, + /** + * Use .toThrowErrorMatchingSnapshot to test that a function throws a error + * matching the most recent snapshot when it is called. + */ + toThrowErrorMatchingSnapshot(): void +}; + +type JestObjectType = { + /** + * Disables automatic mocking in the module loader. + * + * After this method is called, all `require()`s will return the real + * versions of each module (rather than a mocked version). + */ + disableAutomock(): JestObjectType, + /** + * An un-hoisted version of disableAutomock + */ + autoMockOff(): JestObjectType, + /** + * Enables automatic mocking in the module loader. + */ + enableAutomock(): JestObjectType, + /** + * An un-hoisted version of enableAutomock + */ + autoMockOn(): JestObjectType, + /** + * Clears the mock.calls and mock.instances properties of all mocks. + * Equivalent to calling .mockClear() on every mocked function. + */ + clearAllMocks(): JestObjectType, + /** + * Resets the state of all mocks. Equivalent to calling .mockReset() on every + * mocked function. + */ + resetAllMocks(): JestObjectType, + /** + * Removes any pending timers from the timer system. + */ + clearAllTimers(): void, + /** + * The same as `mock` but not moved to the top of the expectation by + * babel-jest. + */ + doMock(moduleName: string, moduleFactory?: any): JestObjectType, + /** + * The same as `unmock` but not moved to the top of the expectation by + * babel-jest. + */ + dontMock(moduleName: string): JestObjectType, + /** + * Returns a new, unused mock function. Optionally takes a mock + * implementation. + */ + fn, TReturn>( + implementation?: (...args: TArguments) => TReturn + ): JestMockFn, + /** + * Determines if the given function is a mocked function. + */ + isMockFunction(fn: Function): boolean, + /** + * Given the name of a module, use the automatic mocking system to generate a + * mocked version of the module for you. + */ + genMockFromModule(moduleName: string): any, + /** + * Mocks a module with an auto-mocked version when it is being required. + * + * The second argument can be used to specify an explicit module factory that + * is being run instead of using Jest's automocking feature. + * + * The third argument can be used to create virtual mocks -- mocks of modules + * that don't exist anywhere in the system. + */ + mock( + moduleName: string, + moduleFactory?: any, + options?: Object + ): JestObjectType, + /** + * Returns the actual module instead of a mock, bypassing all checks on + * whether the module should receive a mock implementation or not. + */ + requireActual(moduleName: string): any, + /** + * Returns a mock module instead of the actual module, bypassing all checks + * on whether the module should be required normally or not. + */ + requireMock(moduleName: string): any, + /** + * Resets the module registry - the cache of all required modules. This is + * useful to isolate modules where local state might conflict between tests. + */ + resetModules(): JestObjectType, + /** + * Exhausts the micro-task queue (usually interfaced in node via + * process.nextTick). + */ + runAllTicks(): void, + /** + * Exhausts the macro-task queue (i.e., all tasks queued by setTimeout(), + * setInterval(), and setImmediate()). + */ + runAllTimers(): void, + /** + * Exhausts all tasks queued by setImmediate(). + */ + runAllImmediates(): void, + /** + * Executes only the macro task queue (i.e. all tasks queued by setTimeout() + * or setInterval() and setImmediate()). + */ + runTimersToTime(msToRun: number): void, + /** + * Executes only the macro-tasks that are currently pending (i.e., only the + * tasks that have been queued by setTimeout() or setInterval() up to this + * point) + */ + runOnlyPendingTimers(): void, + /** + * Explicitly supplies the mock object that the module system should return + * for the specified module. Note: It is recommended to use jest.mock() + * instead. + */ + setMock(moduleName: string, moduleExports: any): JestObjectType, + /** + * Indicates that the module system should never return a mocked version of + * the specified module from require() (e.g. that it should always return the + * real module). + */ + unmock(moduleName: string): JestObjectType, + /** + * Instructs Jest to use fake versions of the standard timer functions + * (setTimeout, setInterval, clearTimeout, clearInterval, nextTick, + * setImmediate and clearImmediate). + */ + useFakeTimers(): JestObjectType, + /** + * Instructs Jest to use the real versions of the standard timer functions. + */ + useRealTimers(): JestObjectType, + /** + * Creates a mock function similar to jest.fn but also tracks calls to + * object[methodName]. + */ + spyOn(object: Object, methodName: string): JestMockFn +}; + +type JestSpyType = { + calls: JestCallsType +}; + +/** Runs this function after every test inside this context */ +declare function afterEach( + fn: (done: () => void) => ?Promise, + timeout?: number +): void; +/** Runs this function before every test inside this context */ +declare function beforeEach( + fn: (done: () => void) => ?Promise, + timeout?: number +): void; +/** Runs this function after all tests have finished inside this context */ +declare function afterAll( + fn: (done: () => void) => ?Promise, + timeout?: number +): void; +/** Runs this function before any tests have started inside this context */ +declare function beforeAll( + fn: (done: () => void) => ?Promise, + timeout?: number +): void; + +/** A context for grouping tests together */ +declare var describe: { + /** + * Creates a block that groups together several related tests in one "test suite" + */ + (name: string, fn: () => void): void, + + /** + * Only run this describe block + */ + only(name: string, fn: () => void): void, + + /** + * Skip running this describe block + */ + skip(name: string, fn: () => void): void +}; + +/** An individual test unit */ +declare var it: { + /** + * An individual test unit + * + * @param {string} Name of Test + * @param {Function} Test + * @param {number} Timeout for the test, in milliseconds. + */ + ( + name: string, + fn?: (done: () => void) => ?Promise, + timeout?: number + ): void, + /** + * Only run this test + * + * @param {string} Name of Test + * @param {Function} Test + * @param {number} Timeout for the test, in milliseconds. + */ + only( + name: string, + fn?: (done: () => void) => ?Promise, + timeout?: number + ): void, + /** + * Skip running this test + * + * @param {string} Name of Test + * @param {Function} Test + * @param {number} Timeout for the test, in milliseconds. + */ + skip( + name: string, + fn?: (done: () => void) => ?Promise, + timeout?: number + ): void, + /** + * Run the test concurrently + * + * @param {string} Name of Test + * @param {Function} Test + * @param {number} Timeout for the test, in milliseconds. + */ + concurrent( + name: string, + fn?: (done: () => void) => ?Promise, + timeout?: number + ): void +}; +declare function fit( + name: string, + fn: (done: () => void) => ?Promise, + timeout?: number +): void; +/** An individual test unit */ +declare var test: typeof it; +/** A disabled group of tests */ +declare var xdescribe: typeof describe; +/** A focused group of tests */ +declare var fdescribe: typeof describe; +/** A disabled individual test */ +declare var xit: typeof it; +/** A disabled individual test */ +declare var xtest: typeof it; + +/** The expect function is used every time you want to test a value */ +declare var expect: { + /** The object that you want to make assertions against */ + (value: any): JestExpectType & JestPromiseType & EnzymeMatchersType, + /** Add additional Jasmine matchers to Jest's roster */ + extend(matchers: { [name: string]: JestMatcher }): void, + /** Add a module that formats application-specific data structures. */ + addSnapshotSerializer(serializer: (input: Object) => string): void, + assertions(expectedAssertions: number): void, + hasAssertions(): void, + any(value: mixed): JestAsymmetricEqualityType, + anything(): void, + arrayContaining(value: Array): void, + objectContaining(value: Object): void, + /** Matches any received string that contains the exact expected string. */ + stringContaining(value: string): void, + stringMatching(value: string | RegExp): void +}; + +// TODO handle return type +// http://jasmine.github.io/2.4/introduction.html#section-Spies +declare function spyOn(value: mixed, method: string): Object; + +/** Holds all functions related to manipulating test runner */ +declare var jest: JestObjectType; + +/** + * The global Jasmine object, this is generally not exposed as the public API, + * using features inside here could break in later versions of Jest. + */ +declare var jasmine: { + DEFAULT_TIMEOUT_INTERVAL: number, + any(value: mixed): JestAsymmetricEqualityType, + anything(): void, + arrayContaining(value: Array): void, + clock(): JestClockType, + createSpy(name: string): JestSpyType, + createSpyObj( + baseName: string, + methodNames: Array + ): { [methodName: string]: JestSpyType }, + objectContaining(value: Object): void, + stringMatching(value: string): void +}; diff --git a/flow-typed/npm/localtunnel_vx.x.x.js b/flow-typed/npm/localtunnel_vx.x.x.js new file mode 100644 index 00000000..c084621f --- /dev/null +++ b/flow-typed/npm/localtunnel_vx.x.x.js @@ -0,0 +1,74 @@ +// flow-typed signature: e4deecce8c92d8a5f4dd936a9efeaa16 +// flow-typed version: <>/localtunnel_v^1.8.3/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'localtunnel' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'localtunnel' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'localtunnel/client' { + declare module.exports: any; +} + +declare module 'localtunnel/fail' { + declare module.exports: any; +} + +declare module 'localtunnel/lib/HeaderHostTransformer' { + declare module.exports: any; +} + +declare module 'localtunnel/lib/Tunnel' { + declare module.exports: any; +} + +declare module 'localtunnel/lib/TunnelCluster' { + declare module.exports: any; +} + +declare module 'localtunnel/request' { + declare module.exports: any; +} + +declare module 'localtunnel/test/index' { + declare module.exports: any; +} + +// Filename aliases +declare module 'localtunnel/client.js' { + declare module.exports: $Exports<'localtunnel/client'>; +} +declare module 'localtunnel/fail.js' { + declare module.exports: $Exports<'localtunnel/fail'>; +} +declare module 'localtunnel/lib/HeaderHostTransformer.js' { + declare module.exports: $Exports<'localtunnel/lib/HeaderHostTransformer'>; +} +declare module 'localtunnel/lib/Tunnel.js' { + declare module.exports: $Exports<'localtunnel/lib/Tunnel'>; +} +declare module 'localtunnel/lib/TunnelCluster.js' { + declare module.exports: $Exports<'localtunnel/lib/TunnelCluster'>; +} +declare module 'localtunnel/request.js' { + declare module.exports: $Exports<'localtunnel/request'>; +} +declare module 'localtunnel/test/index.js' { + declare module.exports: $Exports<'localtunnel/test/index'>; +} diff --git a/flow-typed/npm/nodemon_vx.x.x.js b/flow-typed/npm/nodemon_vx.x.x.js new file mode 100644 index 00000000..ef6c25b1 --- /dev/null +++ b/flow-typed/npm/nodemon_vx.x.x.js @@ -0,0 +1,221 @@ +// flow-typed signature: 1e46801d22bef6a4ce8290d76fb09147 +// flow-typed version: <>/nodemon_v^1.12.1/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'nodemon' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'nodemon' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'nodemon/bin/nodemon' { + declare module.exports: any; +} + +declare module 'nodemon/commitlint.config' { + declare module.exports: any; +} + +declare module 'nodemon/docs/index' { + declare module.exports: any; +} + +declare module 'nodemon/lib/cli/index' { + declare module.exports: any; +} + +declare module 'nodemon/lib/cli/parse' { + declare module.exports: any; +} + +declare module 'nodemon/lib/config/command' { + declare module.exports: any; +} + +declare module 'nodemon/lib/config/defaults' { + declare module.exports: any; +} + +declare module 'nodemon/lib/config/exec' { + declare module.exports: any; +} + +declare module 'nodemon/lib/config/index' { + declare module.exports: any; +} + +declare module 'nodemon/lib/config/load' { + declare module.exports: any; +} + +declare module 'nodemon/lib/help/index' { + declare module.exports: any; +} + +declare module 'nodemon/lib/index' { + declare module.exports: any; +} + +declare module 'nodemon/lib/monitor/index' { + declare module.exports: any; +} + +declare module 'nodemon/lib/monitor/match' { + declare module.exports: any; +} + +declare module 'nodemon/lib/monitor/run' { + declare module.exports: any; +} + +declare module 'nodemon/lib/monitor/watch' { + declare module.exports: any; +} + +declare module 'nodemon/lib/nodemon' { + declare module.exports: any; +} + +declare module 'nodemon/lib/rules/add' { + declare module.exports: any; +} + +declare module 'nodemon/lib/rules/index' { + declare module.exports: any; +} + +declare module 'nodemon/lib/rules/parse' { + declare module.exports: any; +} + +declare module 'nodemon/lib/spawn' { + declare module.exports: any; +} + +declare module 'nodemon/lib/utils/bus' { + declare module.exports: any; +} + +declare module 'nodemon/lib/utils/clone' { + declare module.exports: any; +} + +declare module 'nodemon/lib/utils/colour' { + declare module.exports: any; +} + +declare module 'nodemon/lib/utils/index' { + declare module.exports: any; +} + +declare module 'nodemon/lib/utils/log' { + declare module.exports: any; +} + +declare module 'nodemon/lib/utils/merge' { + declare module.exports: any; +} + +declare module 'nodemon/lib/version' { + declare module.exports: any; +} + +// Filename aliases +declare module 'nodemon/bin/nodemon.js' { + declare module.exports: $Exports<'nodemon/bin/nodemon'>; +} +declare module 'nodemon/commitlint.config.js' { + declare module.exports: $Exports<'nodemon/commitlint.config'>; +} +declare module 'nodemon/docs/index.js' { + declare module.exports: $Exports<'nodemon/docs/index'>; +} +declare module 'nodemon/lib/cli/index.js' { + declare module.exports: $Exports<'nodemon/lib/cli/index'>; +} +declare module 'nodemon/lib/cli/parse.js' { + declare module.exports: $Exports<'nodemon/lib/cli/parse'>; +} +declare module 'nodemon/lib/config/command.js' { + declare module.exports: $Exports<'nodemon/lib/config/command'>; +} +declare module 'nodemon/lib/config/defaults.js' { + declare module.exports: $Exports<'nodemon/lib/config/defaults'>; +} +declare module 'nodemon/lib/config/exec.js' { + declare module.exports: $Exports<'nodemon/lib/config/exec'>; +} +declare module 'nodemon/lib/config/index.js' { + declare module.exports: $Exports<'nodemon/lib/config/index'>; +} +declare module 'nodemon/lib/config/load.js' { + declare module.exports: $Exports<'nodemon/lib/config/load'>; +} +declare module 'nodemon/lib/help/index.js' { + declare module.exports: $Exports<'nodemon/lib/help/index'>; +} +declare module 'nodemon/lib/index.js' { + declare module.exports: $Exports<'nodemon/lib/index'>; +} +declare module 'nodemon/lib/monitor/index.js' { + declare module.exports: $Exports<'nodemon/lib/monitor/index'>; +} +declare module 'nodemon/lib/monitor/match.js' { + declare module.exports: $Exports<'nodemon/lib/monitor/match'>; +} +declare module 'nodemon/lib/monitor/run.js' { + declare module.exports: $Exports<'nodemon/lib/monitor/run'>; +} +declare module 'nodemon/lib/monitor/watch.js' { + declare module.exports: $Exports<'nodemon/lib/monitor/watch'>; +} +declare module 'nodemon/lib/nodemon.js' { + declare module.exports: $Exports<'nodemon/lib/nodemon'>; +} +declare module 'nodemon/lib/rules/add.js' { + declare module.exports: $Exports<'nodemon/lib/rules/add'>; +} +declare module 'nodemon/lib/rules/index.js' { + declare module.exports: $Exports<'nodemon/lib/rules/index'>; +} +declare module 'nodemon/lib/rules/parse.js' { + declare module.exports: $Exports<'nodemon/lib/rules/parse'>; +} +declare module 'nodemon/lib/spawn.js' { + declare module.exports: $Exports<'nodemon/lib/spawn'>; +} +declare module 'nodemon/lib/utils/bus.js' { + declare module.exports: $Exports<'nodemon/lib/utils/bus'>; +} +declare module 'nodemon/lib/utils/clone.js' { + declare module.exports: $Exports<'nodemon/lib/utils/clone'>; +} +declare module 'nodemon/lib/utils/colour.js' { + declare module.exports: $Exports<'nodemon/lib/utils/colour'>; +} +declare module 'nodemon/lib/utils/index.js' { + declare module.exports: $Exports<'nodemon/lib/utils/index'>; +} +declare module 'nodemon/lib/utils/log.js' { + declare module.exports: $Exports<'nodemon/lib/utils/log'>; +} +declare module 'nodemon/lib/utils/merge.js' { + declare module.exports: $Exports<'nodemon/lib/utils/merge'>; +} +declare module 'nodemon/lib/version.js' { + declare module.exports: $Exports<'nodemon/lib/version'>; +} diff --git a/flow-typed/npm/now_vx.x.x.js b/flow-typed/npm/now_vx.x.x.js new file mode 100644 index 00000000..73eabd13 --- /dev/null +++ b/flow-typed/npm/now_vx.x.x.js @@ -0,0 +1,39 @@ +// flow-typed signature: f363534529e5833348f2512d05efc997 +// flow-typed version: <>/now_v^8.3.11/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'now' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'now' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'now/download/dist/download' { + declare module.exports: any; +} + +declare module 'now/download/install' { + declare module.exports: any; +} + +// Filename aliases +declare module 'now/download/dist/download.js' { + declare module.exports: $Exports<'now/download/dist/download'>; +} +declare module 'now/download/install.js' { + declare module.exports: $Exports<'now/download/install'>; +} diff --git a/flow-typed/npm/prettier_vx.x.x.js b/flow-typed/npm/prettier_vx.x.x.js new file mode 100644 index 00000000..7804ea51 --- /dev/null +++ b/flow-typed/npm/prettier_vx.x.x.js @@ -0,0 +1,80 @@ +// flow-typed signature: b3094f28e9fccdabf3915f52972b4259 +// flow-typed version: <>/prettier_v^1.7.4/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'prettier' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'prettier' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'prettier/bin/prettier' { + declare module.exports: any; +} + +declare module 'prettier/parser-babylon' { + declare module.exports: any; +} + +declare module 'prettier/parser-flow' { + declare module.exports: any; +} + +declare module 'prettier/parser-graphql' { + declare module.exports: any; +} + +declare module 'prettier/parser-parse5' { + declare module.exports: any; +} + +declare module 'prettier/parser-postcss' { + declare module.exports: any; +} + +declare module 'prettier/parser-typescript' { + declare module.exports: any; +} + +// Filename aliases +declare module 'prettier/bin/prettier.js' { + declare module.exports: $Exports<'prettier/bin/prettier'>; +} +declare module 'prettier/index' { + declare module.exports: $Exports<'prettier'>; +} +declare module 'prettier/index.js' { + declare module.exports: $Exports<'prettier'>; +} +declare module 'prettier/parser-babylon.js' { + declare module.exports: $Exports<'prettier/parser-babylon'>; +} +declare module 'prettier/parser-flow.js' { + declare module.exports: $Exports<'prettier/parser-flow'>; +} +declare module 'prettier/parser-graphql.js' { + declare module.exports: $Exports<'prettier/parser-graphql'>; +} +declare module 'prettier/parser-parse5.js' { + declare module.exports: $Exports<'prettier/parser-parse5'>; +} +declare module 'prettier/parser-postcss.js' { + declare module.exports: $Exports<'prettier/parser-postcss'>; +} +declare module 'prettier/parser-typescript.js' { + declare module.exports: $Exports<'prettier/parser-typescript'>; +} diff --git a/flow-typed/npm/probot_vx.x.x.js b/flow-typed/npm/probot_vx.x.x.js new file mode 100644 index 00000000..d2acc000 --- /dev/null +++ b/flow-typed/npm/probot_vx.x.x.js @@ -0,0 +1,213 @@ +// flow-typed signature: dbc2576d107b9aab4482d7e48bb3f1e3 +// flow-typed version: <>/probot_v^3.0.1/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'probot' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'probot' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'probot/bin/probot-run' { + declare module.exports: any; +} + +declare module 'probot/bin/probot-simulate' { + declare module.exports: any; +} + +declare module 'probot/bin/probot' { + declare module.exports: any; +} + +declare module 'probot/lib/context' { + declare module.exports: any; +} + +declare module 'probot/lib/paginate' { + declare module.exports: any; +} + +declare module 'probot/lib/plugins/default' { + declare module.exports: any; +} + +declare module 'probot/lib/plugins/stats' { + declare module.exports: any; +} + +declare module 'probot/lib/private-key' { + declare module.exports: any; +} + +declare module 'probot/lib/resolver' { + declare module.exports: any; +} + +declare module 'probot/lib/robot' { + declare module.exports: any; +} + +declare module 'probot/lib/serializers' { + declare module.exports: any; +} + +declare module 'probot/lib/server' { + declare module.exports: any; +} + +declare module 'probot/lib/tunnel' { + declare module.exports: any; +} + +declare module 'probot/test/context' { + declare module.exports: any; +} + +declare module 'probot/test/fixtures/example' { + declare module.exports: any; +} + +declare module 'probot/test/fixtures/plugin/stub-plugin' { + declare module.exports: any; +} + +declare module 'probot/test/index' { + declare module.exports: any; +} + +declare module 'probot/test/plugins/default' { + declare module.exports: any; +} + +declare module 'probot/test/plugins/helper' { + declare module.exports: any; +} + +declare module 'probot/test/plugins/stats' { + declare module.exports: any; +} + +declare module 'probot/test/private-key' { + declare module.exports: any; +} + +declare module 'probot/test/resolver' { + declare module.exports: any; +} + +declare module 'probot/test/robot' { + declare module.exports: any; +} + +declare module 'probot/test/serializers' { + declare module.exports: any; +} + +declare module 'probot/test/server' { + declare module.exports: any; +} + +declare module 'probot/test/setup' { + declare module.exports: any; +} + +// Filename aliases +declare module 'probot/bin/probot-run.js' { + declare module.exports: $Exports<'probot/bin/probot-run'>; +} +declare module 'probot/bin/probot-simulate.js' { + declare module.exports: $Exports<'probot/bin/probot-simulate'>; +} +declare module 'probot/bin/probot.js' { + declare module.exports: $Exports<'probot/bin/probot'>; +} +declare module 'probot/index' { + declare module.exports: $Exports<'probot'>; +} +declare module 'probot/index.js' { + declare module.exports: $Exports<'probot'>; +} +declare module 'probot/lib/context.js' { + declare module.exports: $Exports<'probot/lib/context'>; +} +declare module 'probot/lib/paginate.js' { + declare module.exports: $Exports<'probot/lib/paginate'>; +} +declare module 'probot/lib/plugins/default.js' { + declare module.exports: $Exports<'probot/lib/plugins/default'>; +} +declare module 'probot/lib/plugins/stats.js' { + declare module.exports: $Exports<'probot/lib/plugins/stats'>; +} +declare module 'probot/lib/private-key.js' { + declare module.exports: $Exports<'probot/lib/private-key'>; +} +declare module 'probot/lib/resolver.js' { + declare module.exports: $Exports<'probot/lib/resolver'>; +} +declare module 'probot/lib/robot.js' { + declare module.exports: $Exports<'probot/lib/robot'>; +} +declare module 'probot/lib/serializers.js' { + declare module.exports: $Exports<'probot/lib/serializers'>; +} +declare module 'probot/lib/server.js' { + declare module.exports: $Exports<'probot/lib/server'>; +} +declare module 'probot/lib/tunnel.js' { + declare module.exports: $Exports<'probot/lib/tunnel'>; +} +declare module 'probot/test/context.js' { + declare module.exports: $Exports<'probot/test/context'>; +} +declare module 'probot/test/fixtures/example.js' { + declare module.exports: $Exports<'probot/test/fixtures/example'>; +} +declare module 'probot/test/fixtures/plugin/stub-plugin.js' { + declare module.exports: $Exports<'probot/test/fixtures/plugin/stub-plugin'>; +} +declare module 'probot/test/index.js' { + declare module.exports: $Exports<'probot/test/index'>; +} +declare module 'probot/test/plugins/default.js' { + declare module.exports: $Exports<'probot/test/plugins/default'>; +} +declare module 'probot/test/plugins/helper.js' { + declare module.exports: $Exports<'probot/test/plugins/helper'>; +} +declare module 'probot/test/plugins/stats.js' { + declare module.exports: $Exports<'probot/test/plugins/stats'>; +} +declare module 'probot/test/private-key.js' { + declare module.exports: $Exports<'probot/test/private-key'>; +} +declare module 'probot/test/resolver.js' { + declare module.exports: $Exports<'probot/test/resolver'>; +} +declare module 'probot/test/robot.js' { + declare module.exports: $Exports<'probot/test/robot'>; +} +declare module 'probot/test/serializers.js' { + declare module.exports: $Exports<'probot/test/serializers'>; +} +declare module 'probot/test/server.js' { + declare module.exports: $Exports<'probot/test/server'>; +} +declare module 'probot/test/setup.js' { + declare module.exports: $Exports<'probot/test/setup'>; +} diff --git a/flow-typed/npm/ramda_v0.x.x.js b/flow-typed/npm/ramda_v0.x.x.js new file mode 100644 index 00000000..2832e8d1 --- /dev/null +++ b/flow-typed/npm/ramda_v0.x.x.js @@ -0,0 +1,1828 @@ +// flow-typed signature: 5d481558cc234f09af44ab9616b7ec13 +// flow-typed version: 0bdbd3d3e8/ramda_v0.x.x/flow_>=v0.39.x + +/* eslint-disable no-unused-vars, no-redeclare */ + +type Transformer = { + "@@transducer/step": (r: A, a: *) => R, + "@@transducer/init": () => A, + "@@transducer/result": (result: *) => B +}; + +declare type $npm$ramda$Placeholder = { "@@functional/placeholder": true }; + +declare module ramda { + declare type UnaryFn = (a: A) => R; + declare type BinaryFn = ((a: A, b: B) => R) & + ((a: A) => (b: B) => R); + declare type UnarySameTypeFn = UnaryFn; + declare type BinarySameTypeFn = BinaryFn; + declare type NestedObject = { [k: string]: T | NestedObject }; + declare type UnaryPredicateFn = (x: T) => boolean; + declare type BinaryPredicateFn = (x: T, y: T) => boolean; + declare type BinaryPredicateFn2 = (x: T, y: S) => boolean; + + declare interface ObjPredicate { + (value: any, key: string): boolean + } + + declare type __CurriedFunction1 = (...r: [AA]) => R; + declare type CurriedFunction1 = __CurriedFunction1; + + declare type __CurriedFunction2 = (( + ...r: [AA] + ) => CurriedFunction1) & + ((...r: [AA, BB]) => R); + declare type CurriedFunction2 = __CurriedFunction2; + + declare type __CurriedFunction3 = (( + ...r: [AA] + ) => CurriedFunction2) & + ((...r: [AA, BB]) => CurriedFunction1) & + ((...r: [AA, BB, CC]) => R); + declare type CurriedFunction3 = __CurriedFunction3< + A, + B, + C, + R, + *, + *, + * + >; + + declare type __CurriedFunction4< + A, + B, + C, + D, + R, + AA: A, + BB: B, + CC: C, + DD: D + > = ((...r: [AA]) => CurriedFunction3) & + ((...r: [AA, BB]) => CurriedFunction2) & + ((...r: [AA, BB, CC]) => CurriedFunction1) & + ((...r: [AA, BB, CC, DD]) => R); + declare type CurriedFunction4 = __CurriedFunction4< + A, + B, + C, + D, + R, + *, + *, + *, + * + >; + + declare type __CurriedFunction5< + A, + B, + C, + D, + E, + R, + AA: A, + BB: B, + CC: C, + DD: D, + EE: E + > = ((...r: [AA]) => CurriedFunction4) & + ((...r: [AA, BB]) => CurriedFunction3) & + ((...r: [AA, BB, CC]) => CurriedFunction2) & + ((...r: [AA, BB, CC, DD]) => CurriedFunction1) & + ((...r: [AA, BB, CC, DD, EE]) => R); + declare type CurriedFunction5 = __CurriedFunction5< + A, + B, + C, + D, + E, + R, + *, + *, + *, + *, + * + >; + + declare type __CurriedFunction6< + A, + B, + C, + D, + E, + F, + R, + AA: A, + BB: B, + CC: C, + DD: D, + EE: E, + FF: F + > = ((...r: [AA]) => CurriedFunction5) & + ((...r: [AA, BB]) => CurriedFunction4) & + ((...r: [AA, BB, CC]) => CurriedFunction3) & + ((...r: [AA, BB, CC, DD]) => CurriedFunction2) & + ((...r: [AA, BB, CC, DD, EE]) => CurriedFunction1) & + ((...r: [AA, BB, CC, DD, EE, FF]) => R); + declare type CurriedFunction6 = __CurriedFunction6< + A, + B, + C, + D, + E, + F, + R, + *, + *, + *, + *, + *, + * + >; + + declare type Curry = (((...r: [A]) => R) => CurriedFunction1) & + (((...r: [A, B]) => R) => CurriedFunction2) & + (((...r: [A, B, C]) => R) => CurriedFunction3) & + (( + (...r: [A, B, C, D]) => R + ) => CurriedFunction4) & + (( + (...r: [A, B, C, D, E]) => R + ) => CurriedFunction5) & + (( + (...r: [A, B, C, D, E, F]) => R + ) => CurriedFunction6); + + declare type Partial = (((...r: [A]) => R, args: [A]) => () => R) & + (((...r: [A, B]) => R, args: [A]) => CurriedFunction1) & + (((...r: [A, B]) => R, args: [A, B]) => () => R) & + (( + (...r: [A, B, C]) => R, + args: [A] + ) => CurriedFunction2) & + (( + (...r: [A, B, C]) => R, + args: [A, B] + ) => CurriedFunction1) & + (((...r: [A, B, C]) => R, args: [A, B, C]) => () => R) & + (( + (...r: [A, B, C, D]) => R, + args: [A] + ) => CurriedFunction3) & + (( + (...r: [A, B, C, D]) => R, + args: [A, B] + ) => CurriedFunction2) & + (( + (...r: [A, B, C, D]) => R, + args: [A, B, C] + ) => CurriedFunction1) & + (( + (...r: [A, B, C, D]) => R, + args: [A, B, C, D] + ) => () => R) & + (( + (...r: [A, B, C, D, E]) => R, + args: [A] + ) => CurriedFunction4) & + (( + (...r: [A, B, C, D, E]) => R, + args: [A, B] + ) => CurriedFunction3) & + (( + (...r: [A, B, C, D, E]) => R, + args: [A, B, C] + ) => CurriedFunction2) & + (( + (...r: [A, B, C, D, E]) => R, + args: [A, B, C, D] + ) => CurriedFunction1) & + (( + (...r: [A, B, C, D, E]) => R, + args: [A, B, C, D, E] + ) => () => R) & + (( + (...r: [A, B, C, D, E, F]) => R, + args: [A] + ) => CurriedFunction5) & + (( + (...r: [A, B, C, D, E, F]) => R, + args: [A, B] + ) => CurriedFunction4) & + (( + (...r: [A, B, C, D, E, F]) => R, + args: [A, B, C] + ) => CurriedFunction3) & + (( + (...r: [A, B, C, D, E, F]) => R, + args: [A, B, C, D] + ) => CurriedFunction2) & + (( + (...r: [A, B, C, D, E, F]) => R, + args: [A, B, C, D, E] + ) => CurriedFunction1) & + (( + (...r: [A, B, C, D, E, F]) => R, + args: [A, B, C, D, E, F] + ) => () => R); + + declare type Pipe = (( + ab: UnaryFn, + bc: UnaryFn, + cd: UnaryFn, + de: UnaryFn, + ef: UnaryFn, + fg: UnaryFn, + ...rest: Array + ) => UnaryFn) & + (( + ab: UnaryFn, + bc: UnaryFn, + cd: UnaryFn, + de: UnaryFn, + ef: UnaryFn, + ...rest: Array + ) => UnaryFn) & + (( + ab: UnaryFn, + bc: UnaryFn, + cd: UnaryFn, + de: UnaryFn, + ...rest: Array + ) => UnaryFn) & + (( + ab: UnaryFn, + bc: UnaryFn, + cd: UnaryFn, + ...rest: Array + ) => UnaryFn) & + (( + ab: UnaryFn, + bc: UnaryFn, + ...rest: Array + ) => UnaryFn) & + ((ab: UnaryFn, ...rest: Array) => UnaryFn); + + declare type Compose = (( + fg: UnaryFn, + ef: UnaryFn, + de: UnaryFn, + cd: UnaryFn, + bc: UnaryFn, + ab: UnaryFn, + ...rest: Array + ) => UnaryFn) & + (( + ef: UnaryFn, + de: UnaryFn, + cd: UnaryFn, + bc: UnaryFn, + ab: UnaryFn, + ...rest: Array + ) => UnaryFn) & + (( + de: UnaryFn, + cd: UnaryFn, + bc: UnaryFn, + ab: UnaryFn, + ...rest: Array + ) => UnaryFn) & + (( + cd: UnaryFn, + bc: UnaryFn, + ab: UnaryFn, + ...rest: Array + ) => UnaryFn) & + (( + bc: UnaryFn, + ab: UnaryFn, + ...rest: Array + ) => UnaryFn) & + ((ab: UnaryFn, ...rest: Array) => UnaryFn); + + declare type Filter = ( | { [key: K]: V }>( + fn: UnaryPredicateFn, + xs: T + ) => T) & + ( | { [key: K]: V }>( + fn: UnaryPredicateFn + ) => (xs: T) => T); + + declare class Monad { + chain: Function + } + + declare class Semigroup {} + + declare class Chain { + chain | Array>(fn: (a: T) => V, x: V): V, + chain | Array>(fn: (a: T) => V): (x: V) => V + } + + declare class GenericContructor { + constructor(x: T): GenericContructor + } + + declare class GenericContructorMulti { + constructor(...args: Array): GenericContructor + } + + /** + * DONE: + * Function* + * List* + * Logic + * Math + * Object* + * Relation + * String + * Type + */ + + declare var compose: Compose; + declare var pipe: Pipe; + declare var curry: Curry; + declare function curryN( + length: number, + fn: (...args: Array) => any + ): Function; + + // *Math + declare var add: CurriedFunction2; + declare var inc: UnaryFn; + declare var dec: UnaryFn; + declare var mean: UnaryFn, number>; + declare var divide: CurriedFunction2; + declare var mathMod: CurriedFunction2; + declare var median: UnaryFn, number>; + declare var modulo: CurriedFunction2; + declare var multiply: CurriedFunction2; + declare var negate: UnaryFn; + declare var product: UnaryFn, number>; + declare var subtract: CurriedFunction2; + declare var sum: UnaryFn, number>; + + // Filter + declare var filter: Filter; + declare var reject: Filter; + + // *String + declare var match: CurriedFunction2>; + declare var replace: CurriedFunction3< + RegExp | string, + string, + string, + string + >; + declare var split: CurriedFunction2>; + declare var test: CurriedFunction2; + declare function toLower(a: string): string; + declare function toString(a: any): string; + declare function toUpper(a: string): string; + declare function trim(a: string): string; + + // *Type + declare function is(t: T, ...rest: Array): (v: any) => boolean; + declare function is(t: T, v: any): boolean; + declare var propIs: CurriedFunction3; + declare function type(x: ?any): string; + declare function isArrayLike(x: any): boolean; + + declare function isNil(x: void | null): true; + declare function isNil(x: mixed): false; + + // *List + declare function adjust( + fn: (a: T) => T, + ...rest: Array + ): (index: number, ...rest: Array) => (src: Array) => Array; + declare function adjust( + fn: (a: T) => T, + index: number, + ...rest: Array + ): (src: Array) => Array; + declare function adjust( + fn: (a: T) => T, + index: number, + src: Array + ): Array; + + declare function all(fn: UnaryPredicateFn, xs: Array): boolean; + declare function all( + fn: UnaryPredicateFn, + ...rest: Array + ): (xs: Array) => boolean; + + declare function any(fn: UnaryPredicateFn, xs: Array): boolean; + declare function any( + fn: UnaryPredicateFn, + ...rest: Array + ): (xs: Array) => boolean; + + declare function aperture(n: number, xs: Array): Array>; + declare function aperture( + n: number, + ...rest: Array + ): (xs: Array) => Array>; + + declare function append(x: E, xs: Array): Array; + declare function append( + x: E, + ...rest: Array + ): (xs: Array) => Array; + + declare function prepend(x: E, xs: Array): Array; + declare function prepend( + x: E, + ...rest: Array + ): (xs: Array) => Array; + + declare function concat | string>(x: T, y: T): T; + declare function concat | string>(x: T): (y: T) => T; + + declare function contains | string>(x: E, xs: T): boolean; + declare function contains | string>( + x: E, + ...rest: Array + ): (xs: T) => boolean; + + declare function drop | string>( + n: number, + ...rest: Array + ): (xs: T) => T; + declare function drop | string>(n: number, xs: T): T; + + declare function dropLast | string>( + n: number, + ...rest: Array + ): (xs: T) => T; + declare function dropLast | string>(n: number, xs: T): T; + + declare function dropLastWhile>( + fn: UnaryPredicateFn, + ...rest: Array + ): (xs: T) => T; + declare function dropLastWhile>( + fn: UnaryPredicateFn, + xs: T + ): T; + + declare function dropWhile>( + fn: UnaryPredicateFn, + ...rest: Array + ): (xs: T) => T; + declare function dropWhile>(fn: UnaryPredicateFn, xs: T): T; + + declare function dropRepeats>(xs: T): T; + + declare function dropRepeatsWith>( + fn: BinaryPredicateFn, + ...rest: Array + ): (xs: T) => T; + declare function dropRepeatsWith>( + fn: BinaryPredicateFn, + xs: T + ): T; + + declare function groupBy( + fn: (x: T) => string, + xs: Array + ): { [key: string]: Array }; + declare function groupBy( + fn: (x: T) => string, + ...rest: Array + ): (xs: Array) => { [key: string]: Array }; + + declare function groupWith | string>( + fn: BinaryPredicateFn, + xs: V + ): Array; + declare function groupWith | string>( + fn: BinaryPredicateFn, + ...rest: Array + ): (xs: V) => Array; + + declare function head>(xs: V): ?T; + declare function head(xs: V): V; + + declare function into, R: Array<*> | string | Object>( + accum: R, + xf: (a: A) => I, + input: A + ): R; + declare function into, R>( + accum: Transformer, + xf: (a: A) => R, + input: A + ): R; + + declare function indexOf(x: E, xs: Array): number; + declare function indexOf( + x: E, + ...rest: Array + ): (xs: Array) => number; + + declare function indexBy( + fn: (x: T) => string, + ...rest: Array + ): (xs: Array) => { [key: string]: T }; + declare function indexBy( + fn: (x: T) => string, + xs: Array + ): { [key: string]: T }; + + declare function insert( + index: number, + ...rest: Array + ): (elem: T) => (src: Array) => Array; + declare function insert( + index: number, + elem: T, + ...rest: Array + ): (src: Array) => Array; + declare function insert(index: number, elem: T, src: Array): Array; + + declare function insertAll( + index: number, + ...rest: Array + ): (elem: Array) => (src: Array) => Array; + declare function insertAll( + index: number, + elems: Array, + ...rest: Array + ): (src: Array) => Array; + declare function insertAll( + index: number, + elems: Array, + src: Array + ): Array; + + declare function join(x: string, xs: Array): string; + declare function join( + x: string, + ...rest: Array + ): (xs: Array) => string; + + declare function last>(xs: V): ?T; + declare function last(xs: V): V; + + declare function none(fn: UnaryPredicateFn, xs: Array): boolean; + declare function none( + fn: UnaryPredicateFn, + ...rest: Array + ): (xs: Array) => boolean; + + declare function nth>(i: number, xs: T): ?V; + declare function nth | string>( + i: number, + ...rest: Array + ): ((xs: string) => string) & ((xs: T) => ?V); + declare function nth(i: number, xs: T): T; + + declare function find | O>( + fn: UnaryPredicateFn, + ...rest: Array + ): (xs: T | O) => ?V | O; + declare function find | O>( + fn: UnaryPredicateFn, + xs: T | O + ): ?V | O; + declare function findLast | O>( + fn: UnaryPredicateFn, + ...rest: Array + ): (xs: T | O) => ?V | O; + declare function findLast | O>( + fn: UnaryPredicateFn, + xs: T | O + ): ?V | O; + + declare function findIndex | { [key: K]: V }>( + fn: UnaryPredicateFn, + ...rest: Array + ): (xs: T) => number; + declare function findIndex | { [key: K]: V }>( + fn: UnaryPredicateFn, + xs: T + ): number; + declare function findLastIndex | { [key: K]: V }>( + fn: UnaryPredicateFn, + ...rest: Array + ): (xs: T) => number; + declare function findLastIndex | { [key: K]: V }>( + fn: UnaryPredicateFn, + xs: T + ): number; + + declare function forEach(fn: (x: T) => ?V, xs: Array): Array; + declare function forEach( + fn: (x: T) => ?V, + ...rest: Array + ): (xs: Array) => Array; + + declare function lastIndexOf(x: E, xs: Array): number; + declare function lastIndexOf( + x: E, + ...rest: Array + ): (xs: Array) => number; + + declare function map(fn: (x: T) => R, xs: Array): Array; + declare function map(fn: (x: T) => R, xs: S): S; + declare function map( + fn: (x: T) => R, + ...rest: Array + ): ((xs: { [key: string]: T }) => { [key: string]: R }) & + ((xs: Array) => Array); + declare function map( + fn: (x: T) => R, + ...rest: Array + ): ((xs: S) => S) & ((xs: S) => S); + declare function map( + fn: (x: T) => R, + xs: { [key: string]: T } + ): { [key: string]: R }; + + declare type AccumIterator = (acc: R, x: A) => [R, B]; + declare function mapAccum( + fn: AccumIterator, + acc: R, + xs: Array + ): [R, Array]; + declare function mapAccum( + fn: AccumIterator, + ...rest: Array + ): (acc: R, xs: Array) => [R, Array]; + + declare function mapAccumRight( + fn: AccumIterator, + acc: R, + xs: Array + ): [R, Array]; + declare function mapAccumRight( + fn: AccumIterator, + ...rest: Array + ): (acc: R, xs: Array) => [R, Array]; + + declare function intersperse(x: E, xs: Array): Array; + declare function intersperse( + x: E, + ...rest: Array + ): (xs: Array) => Array; + + declare function pair(a: A, b: B): [A, B]; + declare function pair(a: A, ...rest: Array): (b: B) => [A, B]; + + declare function partition | { [key: K]: V }>( + fn: UnaryPredicateFn, + xs: T + ): [T, T]; + declare function partition | { [key: K]: V }>( + fn: UnaryPredicateFn, + ...rest: Array + ): (xs: T) => [T, T]; + + declare function pluck< + V, + K: string | number, + T: Array | { [key: string]: V }> + >( + k: K, + xs: T + ): Array; + declare function pluck< + V, + K: string | number, + T: Array | { [key: string]: V }> + >( + k: K, + ...rest: Array + ): (xs: T) => Array; + + declare var range: CurriedFunction2>; + + declare function remove( + from: number, + ...rest: Array + ): ((to: number, ...rest: Array) => (src: Array) => Array) & + ((to: number, src: Array) => Array); + declare function remove( + from: number, + to: number, + ...rest: Array + ): (src: Array) => Array; + declare function remove(from: number, to: number, src: Array): Array; + + declare function repeat(x: T, times: number): Array; + declare function repeat( + x: T, + ...rest: Array + ): (times: number) => Array; + + declare function slice | string>( + from: number, + ...rest: Array + ): ((to: number, ...rest: Array) => (src: T) => T) & + ((to: number, src: T) => T); + declare function slice | string>( + from: number, + to: number, + ...rest: Array + ): (src: T) => T; + declare function slice | string>( + from: number, + to: number, + src: T + ): T; + + declare function sort>(fn: (a: V, b: V) => number, xs: T): T; + declare function sort>( + fn: (a: V, b: V) => number, + ...rest: Array + ): (xs: T) => T; + + declare function times(fn: (i: number) => T, n: number): Array; + declare function times( + fn: (i: number) => T, + ...rest: Array + ): (n: number) => Array; + + declare function take | string>(n: number, xs: T): T; + declare function take | string>(n: number): (xs: T) => T; + + declare function takeLast | string>(n: number, xs: T): T; + declare function takeLast | string>(n: number): (xs: T) => T; + + declare function takeLastWhile>( + fn: UnaryPredicateFn, + xs: T + ): T; + declare function takeLastWhile>( + fn: UnaryPredicateFn + ): (xs: T) => T; + + declare function takeWhile>(fn: UnaryPredicateFn, xs: T): T; + declare function takeWhile>( + fn: UnaryPredicateFn + ): (xs: T) => T; + + declare function unfold( + fn: (seed: T) => [R, T] | boolean, + ...rest: Array + ): (seed: T) => Array; + declare function unfold( + fn: (seed: T) => [R, T] | boolean, + seed: T + ): Array; + + declare function uniqBy( + fn: (x: T) => V, + ...rest: Array + ): (xs: Array) => Array; + declare function uniqBy(fn: (x: T) => V, xs: Array): Array; + + declare function uniqWith( + fn: BinaryPredicateFn, + ...rest: Array + ): (xs: Array) => Array; + declare function uniqWith( + fn: BinaryPredicateFn, + xs: Array + ): Array; + + declare function update( + index: number, + ...rest: Array + ): ((elem: T, ...rest: Array) => (src: Array) => Array) & + ((elem: T, src: Array) => Array); + declare function update( + index: number, + elem: T, + ...rest: Array + ): (src: Array) => Array; + declare function update(index: number, elem: T, src: Array): Array; + + // TODO `without` as a transducer + declare function without(xs: Array, src: Array): Array; + declare function without( + xs: Array, + ...rest: Array + ): (src: Array) => Array; + + declare function xprod(xs: Array, ys: Array): Array<[T, S]>; + declare function xprod( + xs: Array, + ...rest: Array + ): (ys: Array) => Array<[T, S]>; + + declare function zip(xs: Array, ys: Array): Array<[T, S]>; + declare function zip( + xs: Array, + ...rest: Array + ): (ys: Array) => Array<[T, S]>; + + declare function zipObj( + xs: Array, + ys: Array + ): { [key: T]: S }; + declare function zipObj( + xs: Array, + ...rest: Array + ): (ys: Array) => { [key: T]: S }; + + declare type NestedArray = Array>; + declare function flatten(xs: NestedArray): Array; + + declare function fromPairs(pair: Array<[T, V]>): { [key: string]: V }; + + declare function init | string>(xs: V): V; + + declare function length(xs: Array): number; + + declare function mergeAll( + objs: Array<{ [key: string]: any }> + ): { [key: string]: any }; + + declare function reverse | string>(xs: V): V; + + declare function reduce( + fn: (acc: A, elem: B) => A, + ...rest: Array + ): ((init: A, xs: Array) => A) & + ((init: A, ...rest: Array) => (xs: Array) => A); + declare function reduce( + fn: (acc: A, elem: B) => A, + init: A, + ...rest: Array + ): (xs: Array) => A; + declare function reduce( + fn: (acc: A, elem: B) => A, + init: A, + xs: Array + ): A; + + declare function reduceBy( + fn: (acc: B, elem: A) => B, + ...rest: Array + ): (( + acc: B, + ...rest: Array + ) => (( + keyFn: (elem: A) => string, + ...rest: Array + ) => (xs: Array) => { [key: string]: B }) & + ((keyFn: (elem: A) => string, xs: Array) => { [key: string]: B })) & + (( + acc: B, + keyFn: (elem: A) => string, + ...rest: Array + ) => (xs: Array) => { [key: string]: B }) & + (( + acc: B, + keyFn: (elem: A) => string, + xs: Array + ) => { [key: string]: B }); + declare function reduceBy( + fn: (acc: B, elem: A) => B, + acc: B, + ...rest: Array + ): (( + keyFn: (elem: A) => string, + ...rest: Array + ) => (xs: Array) => { [key: string]: B }) & + ((keyFn: (elem: A) => string, xs: Array) => { [key: string]: B }); + declare function reduceBy( + fn: (acc: B, elem: A) => B, + acc: B, + keyFn: (elem: A) => string + ): (xs: Array) => { [key: string]: B }; + declare function reduceBy( + fn: (acc: B, elem: A) => B, + acc: B, + keyFn: (elem: A) => string, + xs: Array + ): { [key: string]: B }; + + declare function reduceRight( + fn: (acc: A, elem: B) => A, + ...rest: Array + ): ((init: A, xs: Array) => A) & + ((init: A, ...rest: Array) => (xs: Array) => A); + declare function reduceRight( + fn: (acc: A, elem: B) => A, + init: A, + ...rest: Array + ): (xs: Array) => A; + declare function reduceRight( + fn: (acc: A, elem: B) => A, + init: A, + xs: Array + ): A; + + declare function scan( + fn: (acc: A, elem: B) => A, + ...rest: Array + ): ((init: A, xs: Array) => Array) & + ((init: A, ...rest: Array) => (xs: Array) => Array); + declare function scan( + fn: (acc: A, elem: B) => A, + init: A, + ...rest: Array + ): (xs: Array) => Array; + declare function scan( + fn: (acc: A, elem: B) => A, + init: A, + xs: Array + ): Array; + + declare function splitAt | string>(i: number, xs: T): [T, T]; + declare function splitAt | string>( + i: number + ): (xs: T) => [T, T]; + declare function splitEvery | string>( + i: number, + xs: T + ): Array; + declare function splitEvery | string>( + i: number + ): (xs: T) => Array; + declare function splitWhen>( + fn: UnaryPredicateFn, + xs: T + ): [T, T]; + declare function splitWhen>( + fn: UnaryPredicateFn + ): (xs: T) => [T, T]; + + declare function tail | string>(xs: V): V; + + declare function transpose(xs: Array>): Array>; + + declare function uniq(xs: Array): Array; + + declare function unnest(xs: NestedArray): NestedArray; + + declare function zipWith( + fn: (a: T, b: S) => R, + ...rest: Array + ): ((xs: Array, ys: Array) => Array) & + ((xs: Array, ...rest: Array) => (ys: Array) => Array); + declare function zipWith( + fn: (a: T, b: S) => R, + xs: Array, + ...rest: Array + ): (ys: Array) => Array; + declare function zipWith( + fn: (a: T, b: S) => R, + xs: Array, + ys: Array + ): Array; + + // *Relation + declare function equals(x: T, ...rest: Array): (y: T) => boolean; + declare function equals(x: T, y: T): boolean; + + declare function eqBy( + fn: (x: A) => B, + ...rest: Array + ): ((x: A, y: A) => boolean) & + ((x: A, ...rest: Array) => (y: A) => boolean); + declare function eqBy( + fn: (x: A) => B, + x: A, + ...rest: Array + ): (y: A) => boolean; + declare function eqBy(fn: (x: A) => B, x: A, y: A): boolean; + + declare function propEq( + prop: string, + ...rest: Array + ): ((val: *, o: { [k: string]: * }) => boolean) & + ((val: *, ...rest: Array) => (o: { [k: string]: * }) => boolean); + declare function propEq( + prop: string, + val: *, + ...rest: Array + ): (o: { [k: string]: * }) => boolean; + declare function propEq(prop: string, val: *, o: { [k: string]: * }): boolean; + + declare function pathEq( + path: Array, + ...rest: Array + ): ((val: any, o: Object) => boolean) & + ((val: any, ...rest: Array) => (o: Object) => boolean); + declare function pathEq( + path: Array, + val: any, + ...rest: Array + ): (o: Object) => boolean; + declare function pathEq(path: Array, val: any, o: Object): boolean; + + declare function clamp( + min: T, + ...rest: Array + ): ((max: T, ...rest: Array) => (v: T) => T) & ((max: T, v: T) => T); + declare function clamp( + min: T, + max: T, + ...rest: Array + ): (v: T) => T; + declare function clamp(min: T, max: T, v: T): T; + + declare function countBy( + fn: (x: T) => string, + ...rest: Array + ): (list: Array) => { [key: string]: number }; + declare function countBy( + fn: (x: T) => string, + list: Array + ): { [key: string]: number }; + + declare function difference( + xs1: Array, + ...rest: Array + ): (xs2: Array) => Array; + declare function difference(xs1: Array, xs2: Array): Array; + + declare function differenceWith( + fn: BinaryPredicateFn, + ...rest: Array + ): ((xs1: Array) => (xs2: Array) => Array) & + ((xs1: Array, xs2: Array) => Array); + declare function differenceWith( + fn: BinaryPredicateFn, + xs1: Array, + ...rest: Array + ): (xs2: Array) => Array; + declare function differenceWith( + fn: BinaryPredicateFn, + xs1: Array, + xs2: Array + ): Array; + + declare function eqBy(fn: (x: T) => T, x: T, y: T): boolean; + declare function eqBy(fn: (x: T) => T): (x: T, y: T) => boolean; + declare function eqBy(fn: (x: T) => T, x: T): (y: T) => boolean; + declare function eqBy(fn: (x: T) => T): (x: T) => (y: T) => boolean; + + declare function gt(x: T, ...rest: Array): (y: T) => boolean; + declare function gt(x: T, y: T): boolean; + + declare function gte(x: T, ...rest: Array): (y: T) => boolean; + declare function gte(x: T, y: T): boolean; + + declare function identical(x: T, ...rest: Array): (y: T) => boolean; + declare function identical(x: T, y: T): boolean; + + declare function intersection(x: Array, y: Array): Array; + declare function intersection(x: Array): (y: Array) => Array; + + declare function intersectionWith( + fn: BinaryPredicateFn, + ...rest: Array + ): ((x: Array, y: Array) => Array) & + ((x: Array) => (y: Array) => Array); + declare function intersectionWith( + fn: BinaryPredicateFn, + x: Array, + ...rest: Array + ): (y: Array) => Array; + declare function intersectionWith( + fn: BinaryPredicateFn, + x: Array, + y: Array + ): Array; + + declare function lt(x: T, ...rest: Array): (y: T) => boolean; + declare function lt(x: T, y: T): boolean; + + declare function lte(x: T, ...rest: Array): (y: T) => boolean; + declare function lte(x: T, y: T): boolean; + + declare function max(x: T, ...rest: Array): (y: T) => T; + declare function max(x: T, y: T): T; + + declare function maxBy( + fn: (x: T) => V, + ...rest: Array + ): ((x: T, y: T) => T) & ((x: T) => (y: T) => T); + declare function maxBy( + fn: (x: T) => V, + x: T, + ...rest: Array + ): (y: T) => T; + declare function maxBy(fn: (x: T) => V, x: T, y: T): T; + + declare function min(x: T, ...rest: Array): (y: T) => T; + declare function min(x: T, y: T): T; + + declare function minBy( + fn: (x: T) => V, + ...rest: Array + ): ((x: T, y: T) => T) & ((x: T) => (y: T) => T); + declare function minBy( + fn: (x: T) => V, + x: T, + ...rest: Array + ): (y: T) => T; + declare function minBy(fn: (x: T) => V, x: T, y: T): T; + + declare function sortBy( + fn: (x: T) => V, + ...rest: Array + ): (x: Array) => Array; + declare function sortBy(fn: (x: T) => V, x: Array): Array; + + declare function symmetricDifference( + x: Array, + ...rest: Array + ): (y: Array) => Array; + declare function symmetricDifference(x: Array, y: Array): Array; + + declare function symmetricDifferenceWith( + fn: BinaryPredicateFn, + ...rest: Array + ): ((x: Array, ...rest: Array) => (y: Array) => Array) & + ((x: Array, y: Array) => Array); + declare function symmetricDifferenceWith( + fn: BinaryPredicateFn, + x: Array, + ...rest: Array + ): (y: Array) => Array; + declare function symmetricDifferenceWith( + fn: BinaryPredicateFn, + x: Array, + y: Array + ): Array; + + declare function union( + x: Array, + ...rest: Array + ): (y: Array) => Array; + declare function union(x: Array, y: Array): Array; + + declare function unionWith( + fn: BinaryPredicateFn, + ...rest: Array + ): ((x: Array, ...rest: Array) => (y: Array) => Array) & + ((x: Array, y: Array) => Array); + declare function unionWith( + fn: BinaryPredicateFn, + x: Array, + ...rest: Array + ): (y: Array) => Array; + declare function unionWith( + fn: BinaryPredicateFn, + x: Array, + y: Array + ): Array; + + // *Object + declare function assoc( + key: string, + ...args: Array + ): ((val: T, ...rest: Array) => (src: S) => { [k: string]: T }) & + ((val: T, src: S) => { [k: string]: T } & S); + declare function assoc( + key: string, + val: T, + ...args: Array + ): (src: S) => { [k: string]: T } & S; + declare function assoc( + key: string, + val: T, + src: S + ): { [k: string]: T } & S; + + declare function assocPath( + key: Array, + ...args: Array + ): ((val: T, ...rest: Array) => (src: S) => { [k: string]: T }) & + ((val: T) => (src: S) => { [k: string]: T } & S); + declare function assocPath( + key: Array, + val: T, + ...args: Array + ): (src: S) => { [k: string]: T } & S; + declare function assocPath( + key: Array, + val: T, + src: S + ): { [k: string]: T } & S; + + declare function clone(src: T): $Shape; + + declare function dissoc( + key: string, + ...args: Array + ): (src: { [k: string]: T }) => { [k: string]: T }; + declare function dissoc( + key: string, + src: { [k: string]: T } + ): { [k: string]: T }; + + declare function dissocPath( + key: Array, + ...args: Array + ): (src: { [k: string]: T }) => { [k: string]: T }; + declare function dissocPath( + key: Array, + src: { [k: string]: T } + ): { [k: string]: T }; + + // TODO: Started failing in v31... (Attempt to fix below) + // declare type __UnwrapNestedObjectR U>> = U + // declare type UnwrapNestedObjectR = UnwrapNestedObjectR<*, *, T> + // + // declare function evolve R>>(fn: T, ...rest: Array): (src: NestedObject) => UnwrapNestedObjectR; + // declare function evolve R>>(fn: T, src: NestedObject): UnwrapNestedObjectR; + + declare function eqProps( + key: string, + ...args: Array + ): ((o1: Object, ...rest: Array) => (o2: Object) => boolean) & + ((o1: Object, o2: Object) => boolean); + declare function eqProps( + key: string, + o1: Object, + ...args: Array + ): (o2: Object) => boolean; + declare function eqProps(key: string, o1: Object, o2: Object): boolean; + + declare function has(key: string, o: Object): boolean; + declare function has(key: string): (o: Object) => boolean; + + declare function hasIn(key: string, o: Object): boolean; + declare function hasIn(key: string): (o: Object) => boolean; + + declare function invert(o: Object): { [k: string]: Array }; + declare function invertObj(o: Object): { [k: string]: string }; + + declare function keys(o: Object): Array; + + /* TODO + lens + lensIndex + lensPath + lensProp + */ + + declare function mapObjIndexed( + fn: (val: A, key: string, o: Object) => B, + o: { [key: string]: A } + ): { [key: string]: B }; + declare function mapObjIndexed( + fn: (val: A, key: string, o: Object) => B, + ...args: Array + ): (o: { [key: string]: A }) => { [key: string]: B }; + + declare function merge(o1: A, ...rest: Array): (o2: B) => A & B; + declare function merge(o1: A, o2: B): A & B; + + declare function mergeAll( + os: Array<{ [k: string]: T }> + ): { [k: string]: T }; + + declare function mergeWith< + T, + S, + R, + A: { [k: string]: T }, + B: { [k: string]: S } + >( + fn: (v1: T, v2: S) => R + ): ((o1: A, ...rest: Array) => (o2: B) => A & B) & + ((o1: A, o2: B) => A & B); + declare function mergeWith< + T, + S, + R, + A: { [k: string]: T }, + B: { [k: string]: S } + >( + fn: (v1: T, v2: S) => R, + o1: A, + o2: B + ): A & B; + declare function mergeWith< + T, + S, + R, + A: { [k: string]: T }, + B: { [k: string]: S } + >( + fn: (v1: T, v2: S) => R, + o1: A, + ...rest: Array + ): (o2: B) => A & B; + + declare function mergeWithKey< + T, + S, + R, + A: { [k: string]: T }, + B: { [k: string]: S } + >( + fn: (key: $Keys, v1: T, v2: S) => R + ): ((o1: A, ...rest: Array) => (o2: B) => A & B) & + ((o1: A, o2: B) => A & B); + declare function mergeWithKey< + T, + S, + R, + A: { [k: string]: T }, + B: { [k: string]: S } + >( + fn: (key: $Keys, v1: T, v2: S) => R, + o1: A, + o2: B + ): A & B; + declare function mergeWithKey< + T, + S, + R, + A: { [k: string]: T }, + B: { [k: string]: S } + >( + fn: (key: $Keys, v1: T, v2: S) => R, + o1: A, + ...rest: Array + ): (o2: B) => A & B; + + declare function objOf( + key: string, + ...rest: Array + ): (val: T) => { [key: string]: T }; + declare function objOf(key: string, val: T): { [key: string]: T }; + + declare function omit( + keys: Array<$Keys>, + ...rest: Array + ): (val: T) => Object; + declare function omit(keys: Array<$Keys>, val: T): Object; + + // TODO over + + declare function path( + p: Array, + ...rest: Array + ): (o: NestedObject) => V; + declare function path( + p: Array, + ...rest: Array + ): (o: null | void) => void; + declare function path( + p: Array, + ...rest: Array + ): (o: mixed) => ?V; + declare function path>(p: Array, o: A): V; + declare function path(p: Array, o: A): void; + declare function path(p: Array, o: A): ?V; + + declare function path( + p: Array, + ...rest: Array + ): (o: NestedObject) => V; + declare function path( + p: Array, + ...rest: Array + ): (o: null | void) => void; + declare function path( + p: Array, + ...rest: Array + ): (o: mixed) => ?V; + declare function path>(p: Array, o: A): V; + declare function path(p: Array, o: A): void; + declare function path(p: Array, o: A): ?V; + + declare function pathOr>( + or: T, + ...rest: Array + ): ((p: Array, ...rest: Array) => (o: ?A) => V | T) & + ((p: Array, o: ?A) => V | T); + declare function pathOr>( + or: T, + p: Array, + ...rest: Array + ): (o: ?A) => V | T; + declare function pathOr>( + or: T, + p: Array, + o: ?A + ): V | T; + + declare function pick( + keys: Array, + ...rest: Array + ): (val: { [key: string]: A }) => { [key: string]: A }; + declare function pick( + keys: Array, + val: { [key: string]: A } + ): { [key: string]: A }; + + declare function pickAll( + keys: Array, + ...rest: Array + ): (val: { [key: string]: A }) => { [key: string]: ?A }; + declare function pickAll( + keys: Array, + val: { [key: string]: A } + ): { [key: string]: ?A }; + + declare function pickBy( + fn: BinaryPredicateFn2, + ...rest: Array + ): (val: { [key: string]: A }) => { [key: string]: A }; + declare function pickBy( + fn: BinaryPredicateFn2, + val: { [key: string]: A } + ): { [key: string]: A }; + + declare function project( + keys: Array, + ...rest: Array + ): (val: Array<{ [key: string]: T }>) => Array<{ [key: string]: T }>; + declare function project( + keys: Array, + val: Array<{ [key: string]: T }> + ): Array<{ [key: string]: T }>; + + declare function prop( + key: $Keys, + ...rest: Array + ): (o: O) => ?T; + declare function prop( + __: $npm$ramda$Placeholder, + o: O + ): (key: $Keys) => ?T; + declare function prop(key: $Keys, o: O): ?T; + + declare function propOr( + or: T, + ...rest: Array + ): ((p: $Keys, ...rest: Array) => (o: A) => V | T) & + ((p: $Keys, o: A) => V | T); + declare function propOr( + or: T, + p: $Keys, + ...rest: Array + ): (o: A) => V | T; + declare function propOr( + or: T, + p: $Keys, + o: A + ): V | T; + + declare function keysIn(o: Object): Array; + + declare function props( + keys: Array<$Keys>, + ...rest: Array + ): (o: O) => Array; + declare function props( + keys: Array<$Keys>, + o: O + ): Array; + + // TODO set + + declare function toPairs( + o: O + ): Array<[$Keys, T]>; + + declare function toPairsIn( + o: O + ): Array<[string, T]>; + + declare function values(o: O): Array; + + declare function valuesIn(o: O): Array; + + declare function where( + predObj: { [key: string]: UnaryPredicateFn }, + ...rest: Array + ): (o: { [k: string]: T }) => boolean; + declare function where( + predObj: { [key: string]: UnaryPredicateFn }, + o: { [k: string]: T } + ): boolean; + + declare function whereEq( + predObj: O, + ...rest: Array + ): (o: $Shape) => boolean; + declare function whereEq( + predObj: O, + o: $Shape + ): boolean; + + // TODO view + + // *Function + declare var __: $npm$ramda$Placeholder; + + declare var T: (_: any) => true; + declare var F: (_: any) => false; + + declare function addIndex( + iterFn: (fn: (x: A) => B, xs: Array) => Array + ): (fn: (x: A, idx: number, xs: Array) => B, xs: Array) => Array; + + declare function always(x: T): (x: any) => T; + + declare function ap( + fns: Array<(x: T) => V>, + ...rest: Array + ): (xs: Array) => Array; + declare function ap(fns: Array<(x: T) => V>, xs: Array): Array; + + declare function apply( + fn: (...args: Array) => V, + ...rest: Array + ): (xs: Array) => V; + declare function apply(fn: (...args: Array) => V, xs: Array): V; + + declare function applySpec< + V, + S, + A: Array, + T: NestedObject<(...args: A) => S> + >( + spec: T + ): (...args: A) => NestedObject; + + declare function binary( + fn: (...args: Array) => T + ): (x: any, y: any) => T; + + declare function bind( + fn: (...args: Array) => any, + thisObj: T + ): (...args: Array) => any; + + declare function call( + fn: (...args: Array) => T, + ...args: Array + ): T; + + declare function comparator( + fn: BinaryPredicateFn + ): (x: T, y: T) => number; + + // TODO add tests + declare function construct( + ctor: Class> + ): (x: T) => GenericContructor; + + // TODO add tests + declare function constructN( + n: number, + ctor: Class> + ): (...args: any) => GenericContructorMulti; + + // TODO make less generic + declare function converge(after: Function, fns: Array): Function; + + declare function empty(x: T): T; + + declare function flip( + fn: (arg0: A, arg1: B) => TResult + ): CurriedFunction2; + declare function flip( + fn: (arg0: A, arg1: B, arg2: C) => TResult + ): ((arg0: B, arg1: A, ...rest: Array) => (arg2: C) => TResult) & + ((arg0: B, arg1: A, arg2: C) => TResult); + declare function flip( + fn: (arg0: A, arg1: B, arg2: C, arg3: D) => TResult + ): (( + arg1: B, + arg0: A, + ...rest: Array + ) => (arg2: C, arg3: D) => TResult) & + ((arg1: B, arg0: A, arg2: C, arg3: D) => TResult); + declare function flip( + fn: (arg0: A, arg1: B, arg2: C, arg3: D, arg4: E) => TResult + ): (( + arg1: B, + arg0: A, + ...rest: Array + ) => (arg2: C, arg3: D, arg4: E) => TResult) & + ((arg1: B, arg0: A, arg2: C, arg3: D, arg4: E) => TResult); + + declare function identity(x: T): T; + + declare function invoker( + arity: number, + name: $Enum + ): CurriedFunction2 & + CurriedFunction3 & + CurriedFunction4; + + declare function juxt( + fns: Array<(...args: Array) => T> + ): (...args: Array) => Array; + + // TODO lift + + // TODO liftN + + declare function memoize) => B>(fn: T): T; + + declare function nAry( + arity: number, + fn: (...args: Array) => T + ): (...args: Array) => T; + + declare function nthArg(n: number): (...args: Array) => T; + + declare function of(x: T): Array; + + declare function once) => B>(fn: T): T; + + declare var partial: Partial; + // TODO partialRight + // TODO pipeK + // TODO pipeP + + declare function tap(fn: (x: T) => any, ...rest: Array): (x: T) => T; + declare function tap(fn: (x: T) => any, x: T): T; + + // TODO tryCatch + + declare function unapply( + fn: (xs: Array) => V + ): (...args: Array) => V; + + declare function unary(fn: (...args: Array) => T): (x: any) => T; + + declare var uncurryN: ((2, (A) => B => C) => (A, B) => C) & + ((3, (A) => B => C => D) => (A, B, C) => D) & + ((4, (A) => B => C => D => E) => (A, B, C, D) => E) & + (( + 5, + (A) => B => C => D => E => F + ) => (A, B, C, D, E) => F) & + (( + 6, + (A) => B => C => D => E => F => G + ) => (A, B, C, D, E, F) => G) & + (( + 7, + (A) => B => C => D => E => F => G => H + ) => (A, B, C, D, E, F, G) => H) & + (( + 8, + (A) => B => C => D => E => F => G => H => I + ) => (A, B, C, D, E, F, G, H) => I); + + //TODO useWith + + declare function wrap) => B>( + fn: F, + fn2: (fn: F, ...args: Array) => D + ): (...args: Array) => D; + + // *Logic + + declare function allPass( + fns: Array<(...args: Array) => boolean> + ): (...args: Array) => boolean; + + declare function and( + x: boolean, + ...rest: Array + ): (y: boolean) => boolean; + declare function and(x: boolean, y: boolean): boolean; + + declare function anyPass( + fns: Array<(...args: Array) => boolean> + ): (...args: Array) => boolean; + + declare function both( + x: (...args: Array) => boolean, + ...rest: Array + ): (y: (...args: Array) => boolean) => (...args: Array) => boolean; + declare function both( + x: (...args: Array) => boolean, + y: (...args: Array) => boolean + ): (...args: Array) => boolean; + + declare function complement( + x: (...args: Array) => boolean + ): (...args: Array) => boolean; + + declare function cond( + fns: Array<[(...args: Array) => boolean, (...args: Array) => B]> + ): (...args: Array) => B; + + declare function defaultTo( + d: T, + ...rest: Array + ): (x: ?V) => V | T; + declare function defaultTo(d: T, x: ?V): V | T; + + declare function either( + x: (...args: Array) => *, + ...rest: Array + ): (y: (...args: Array) => *) => (...args: Array) => *; + declare function either( + x: (...args: Array) => *, + y: (...args: Array) => * + ): (...args: Array) => *; + + declare function ifElse( + cond: (...args: Array) => boolean, + ...rest: Array + ): (( + f1: (...args: Array) => B, + ...rest: Array + ) => (f2: (...args: Array) => C) => (...args: Array) => B | C) & + (( + f1: (...args: Array) => B, + f2: (...args: Array) => C + ) => (...args: Array) => B | C); + declare function ifElse( + cond: (...args: Array) => boolean, + f1: (...args: Array) => B, + f2: (...args: Array) => C + ): (...args: Array) => B | C; + + declare function isEmpty(x: ?Array | Object | string): boolean; + + declare function not(x: boolean): boolean; + + declare function or(x: boolean, y: boolean): boolean; + declare function or(x: boolean): (y: boolean) => boolean; + + // TODO: pathSatisfies: Started failing in v39... + // declare function pathSatisfies(cond: (x: T) => boolean, path: Array, o: NestedObject): boolean; + // declare function pathSatisfies(cond: (x: T) => boolean, path: Array, ...rest: Array): (o: NestedObject) => boolean; + // declare function pathSatisfies(cond: (x: T) => boolean, ...rest: Array): + // ((path: Array, ...rest: Array) => (o: NestedObject) => boolean) + // & ((path: Array, o: NestedObject) => boolean) + + declare function propSatisfies( + cond: (x: T) => boolean, + prop: string, + o: NestedObject + ): boolean; + declare function propSatisfies( + cond: (x: T) => boolean, + prop: string, + ...rest: Array + ): (o: NestedObject) => boolean; + declare function propSatisfies( + cond: (x: T) => boolean, + ...rest: Array + ): ((prop: string, ...rest: Array) => (o: NestedObject) => boolean) & + ((prop: string, o: NestedObject) => boolean); + + declare function unless( + pred: UnaryPredicateFn, + ...rest: Array + ): ((fn: (x: S) => V, ...rest: Array) => (x: T | S) => T | V) & + ((fn: (x: S) => V, x: T | S) => T | V); + declare function unless( + pred: UnaryPredicateFn, + fn: (x: S) => V, + ...rest: Array + ): (x: T | S) => V | T; + declare function unless( + pred: UnaryPredicateFn, + fn: (x: S) => V, + x: T | S + ): T | V; + + declare function until( + pred: UnaryPredicateFn, + ...rest: Array + ): ((fn: (x: T) => T, ...rest: Array) => (x: T) => T) & + ((fn: (x: T) => T, x: T) => T); + declare function until( + pred: UnaryPredicateFn, + fn: (x: T) => T, + ...rest: Array + ): (x: T) => T; + declare function until( + pred: UnaryPredicateFn, + fn: (x: T) => T, + x: T + ): T; + + declare function when( + pred: UnaryPredicateFn, + ...rest: Array + ): ((fn: (x: S) => V, ...rest: Array) => (x: T | S) => T | V) & + ((fn: (x: S) => V, x: T | S) => T | V); + declare function when( + pred: UnaryPredicateFn, + fn: (x: S) => V, + ...rest: Array + ): (x: T | S) => V | T; + declare function when( + pred: UnaryPredicateFn, + fn: (x: S) => V, + x: T | S + ): T | V; +} diff --git a/flow-typed/npm/request-promise_vx.x.x.js b/flow-typed/npm/request-promise_vx.x.x.js new file mode 100644 index 00000000..c5e89178 --- /dev/null +++ b/flow-typed/npm/request-promise_vx.x.x.js @@ -0,0 +1,39 @@ +// flow-typed signature: 9d0b84dfbf804f42491f5a0311fbc038 +// flow-typed version: <>/request-promise_v^4.2.2/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'request-promise' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'request-promise' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'request-promise/errors' { + declare module.exports: any; +} + +declare module 'request-promise/lib/rp' { + declare module.exports: any; +} + +// Filename aliases +declare module 'request-promise/errors.js' { + declare module.exports: $Exports<'request-promise/errors'>; +} +declare module 'request-promise/lib/rp.js' { + declare module.exports: $Exports<'request-promise/lib/rp'>; +} diff --git a/flow-typed/npm/request_vx.x.x.js b/flow-typed/npm/request_vx.x.x.js new file mode 100644 index 00000000..e2624ca4 --- /dev/null +++ b/flow-typed/npm/request_vx.x.x.js @@ -0,0 +1,108 @@ +// flow-typed signature: 9514582ff8f421ab70a5b6b9ac0d16fd +// flow-typed version: <>/request_v^2.83.0/flow_v0.58.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'request' + * + * Fill this stub out by replacing all the `any` types. + * + * Once filled out, we encourage you to share your work with the + * community by sending a pull request to: + * https://github.com/flowtype/flow-typed + */ + +declare module 'request' { + declare module.exports: any; +} + +/** + * We include stubs for each file inside this npm package in case you need to + * require those files directly. Feel free to delete any files that aren't + * needed. + */ +declare module 'request/lib/auth' { + declare module.exports: any; +} + +declare module 'request/lib/cookies' { + declare module.exports: any; +} + +declare module 'request/lib/getProxyFromURI' { + declare module.exports: any; +} + +declare module 'request/lib/har' { + declare module.exports: any; +} + +declare module 'request/lib/helpers' { + declare module.exports: any; +} + +declare module 'request/lib/multipart' { + declare module.exports: any; +} + +declare module 'request/lib/oauth' { + declare module.exports: any; +} + +declare module 'request/lib/querystring' { + declare module.exports: any; +} + +declare module 'request/lib/redirect' { + declare module.exports: any; +} + +declare module 'request/lib/tunnel' { + declare module.exports: any; +} + +declare module 'request/request' { + declare module.exports: any; +} + +// Filename aliases +declare module 'request/index' { + declare module.exports: $Exports<'request'>; +} +declare module 'request/index.js' { + declare module.exports: $Exports<'request'>; +} +declare module 'request/lib/auth.js' { + declare module.exports: $Exports<'request/lib/auth'>; +} +declare module 'request/lib/cookies.js' { + declare module.exports: $Exports<'request/lib/cookies'>; +} +declare module 'request/lib/getProxyFromURI.js' { + declare module.exports: $Exports<'request/lib/getProxyFromURI'>; +} +declare module 'request/lib/har.js' { + declare module.exports: $Exports<'request/lib/har'>; +} +declare module 'request/lib/helpers.js' { + declare module.exports: $Exports<'request/lib/helpers'>; +} +declare module 'request/lib/multipart.js' { + declare module.exports: $Exports<'request/lib/multipart'>; +} +declare module 'request/lib/oauth.js' { + declare module.exports: $Exports<'request/lib/oauth'>; +} +declare module 'request/lib/querystring.js' { + declare module.exports: $Exports<'request/lib/querystring'>; +} +declare module 'request/lib/redirect.js' { + declare module.exports: $Exports<'request/lib/redirect'>; +} +declare module 'request/lib/tunnel.js' { + declare module.exports: $Exports<'request/lib/tunnel'>; +} +declare module 'request/request.js' { + declare module.exports: $Exports<'request/request'>; +} diff --git a/package.json b/package.json index e2fe7200..151e18a7 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,8 @@ "test": "NODE_ENV='test' TZ='UTC' jest --coverage --runInBand --forceExit", "test:watch": "npm run test -- --watch", "eslint": "eslint ./", - "format": "prettier --write 'src/**/*.js'" + "format": "prettier --write 'src/**/*.js'", + "flow": "flow" }, "now": { "type": "npm", @@ -22,7 +23,7 @@ }, "dependencies": { "argv-split": "^2.0.1", - "probot": "^3.0.1", + "probot": "^3.0.2", "ramda": "^0.25.0", "request": "^2.83.0", "request-promise": "^4.2.2" @@ -41,6 +42,7 @@ "eslint-plugin-jsx-a11y": "^5.1.1", "eslint-plugin-prettier": "^2.3.1", "eslint-plugin-react": "^7.4.0", + "flow-bin": "^0.58.0", "jest": "^21.2.1", "localtunnel": "^1.8.3", "nodemon": "^1.12.1", diff --git a/src/__tests__/index.test.js b/src/__tests__/index.test.js index 6f02a0ab..5c6ae4e1 100644 --- a/src/__tests__/index.test.js +++ b/src/__tests__/index.test.js @@ -1,28 +1,10 @@ -// // const { createRobot } = require('probot'); -// const { EventEmitter } = require('events'); -// const main = require('../index'); - -// function createIssuePayload(text) { -// return { payload: { issue: { body: text } } }; -// } - -// describe('Robot', () => { -// let mockProbot; - -// beforeEach(() => { -// callback = jest.fn(); -// mockProbot = new EventEmitter(); -// main(mockProbot); -// }); - -// it('should return ', async () => { -// console.log(createIssuePayload('123')) -// mockProbot.emit('issues.opened', createIssuePayload('123')); - -// // expect(callback).toHaveBeenCalled() -// // expect(callback.mock.calls[0][1]).toEqual({ name: 'foo', arguments: 'bar' }) -// }); -// }); -it('should resolve id with API response', async () => { - // expect(await API.addPoll(['1', '2'])).toMatchSnapshot(); +// @flow +const main = require('../index'); + +it('should call on', () => { + const mockRobot = { + on: jest.fn(), + }; + main(mockRobot); + expect(mockRobot.on).toHaveBeenCalled(); }); diff --git a/src/index.js b/src/index.js index 83cc15a7..880eba28 100644 --- a/src/index.js +++ b/src/index.js @@ -1,5 +1,6 @@ +// @flow const { addPollListener } = require('./listener'); -module.exports = robot => { +module.exports = (robot /* : any */) => { robot.on(['issues.opened', 'issues.edited'], addPollListener); }; diff --git a/src/listener.js b/src/listener.js index fd3c6691..099d248a 100644 --- a/src/listener.js +++ b/src/listener.js @@ -1,10 +1,11 @@ +// @flow const split = require('argv-split'); const getCommand = require('./utils/getCommand'); const { addPoll } = require('./utils/API'); const toMarkdown = require('./utils/toMarkdown'); const { LABEL } = require('./utils/config'); -const addPollListener = async context => { +const addPollListener = async (context /* : any */) => { const { body, labels } = context.payload.issue; const [command, argument] = getCommand(body); const options = split(argument); diff --git a/src/utils/API.js b/src/utils/API.js index 1fd6fea8..12578546 100644 --- a/src/utils/API.js +++ b/src/utils/API.js @@ -1,7 +1,8 @@ +// @flow const request = require('request-promise'); const { BASE_URL } = require('./config'); -const addPoll = async options => { +async function addPoll(options /* : string[] */) /* : Promise */ { const res = await request({ method: 'POST', uri: `${BASE_URL}/poll`, @@ -10,8 +11,9 @@ const addPoll = async options => { }, json: true, }); + return res.id; -}; +} module.exports = { addPoll, diff --git a/src/utils/__tests__/API.test.js b/src/utils/__tests__/API.test.js index 8f5fa88d..3f8a902b 100644 --- a/src/utils/__tests__/API.test.js +++ b/src/utils/__tests__/API.test.js @@ -1,3 +1,4 @@ +// @flow const API = require('../API'); jest.mock('request-promise', () => () => ({ id: 'MOCK_ID' })); diff --git a/src/utils/__tests__/config.test.js b/src/utils/__tests__/config.test.js index d2a8b702..ff135653 100644 --- a/src/utils/__tests__/config.test.js +++ b/src/utils/__tests__/config.test.js @@ -1,3 +1,4 @@ +// @flow const config = require('../config'); it('should return config', () => { diff --git a/src/utils/__tests__/getCommand.test.js b/src/utils/__tests__/getCommand.test.js index d0e006b1..d472fb7a 100644 --- a/src/utils/__tests__/getCommand.test.js +++ b/src/utils/__tests__/getCommand.test.js @@ -1,3 +1,4 @@ +// @flow const getCommand = require('../getCommand'); it('should return command with body content', () => { diff --git a/src/utils/__tests__/toMarkdown.test.js b/src/utils/__tests__/toMarkdown.test.js index fa1158cc..883f33eb 100644 --- a/src/utils/__tests__/toMarkdown.test.js +++ b/src/utils/__tests__/toMarkdown.test.js @@ -1,3 +1,4 @@ +// @flow const toMarkdown = require('../toMarkdown'); it('should return markdown', () => { diff --git a/src/utils/config.js b/src/utils/config.js index 95fc3d58..30f494d8 100644 --- a/src/utils/config.js +++ b/src/utils/config.js @@ -1,8 +1,11 @@ +// @flow + /** * ref: https://github.com/srph/gh-polls-web/blob/master/src/config.js */ -const BASE_URL = 'https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod'; -const LABEL = 'Polls'; +const BASE_URL /* : string */ = + 'https://m131jyck4m.execute-api.us-west-2.amazonaws.com/prod'; +const LABEL /* : string */ = 'Polls'; module.exports = { BASE_URL, diff --git a/src/utils/getCommand.js b/src/utils/getCommand.js index 8079dbf0..496be97f 100644 --- a/src/utils/getCommand.js +++ b/src/utils/getCommand.js @@ -1,8 +1,11 @@ +// @flow const R = require('ramda'); /** * ref: https://github.com/probot/commands/blob/master/index.js#L8 */ -const getCommand = R.match(/^\/[\w]+\b *(.*)?$/m); +const getCommand /* : (string) => Array */ = R.match( + /^\/[\w]+\b *(.*)?$/m, +); module.exports = getCommand; diff --git a/src/utils/toMarkdown.js b/src/utils/toMarkdown.js index 00ed5ab1..eabb49e5 100644 --- a/src/utils/toMarkdown.js +++ b/src/utils/toMarkdown.js @@ -1,11 +1,11 @@ +// @flow const R = require('ramda'); const { BASE_URL } = require('./config'); /** * ref: https://github.com/srph/gh-polls-web/blob/7c8c3a445e994e0307e6d2fef6d9eddd070173f2/src/App.vue#L123 - * @param {string} id */ -const toMarkdown = id => +const toMarkdown /* : (string) => (string[]) => string */ = id => R.pipe( R.map(option => { const name = encodeURIComponent(option); diff --git a/yarn.lock b/yarn.lock index de73836f..22325cde 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1530,6 +1530,10 @@ flat-cache@^1.2.1: graceful-fs "^4.1.2" write "^0.2.1" +flow-bin@^0.58.0: + version "0.58.0" + resolved "https://registry.yarnpkg.com/flow-bin/-/flow-bin-0.58.0.tgz#62d5a776589419e5656800a0e5230a5e585ca65e" + follow-redirects@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-0.0.7.tgz#34b90bab2a911aa347571da90f22bd36ecd8a919" @@ -3350,9 +3354,9 @@ private@^0.1.7: version "0.1.8" resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" -probot@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/probot/-/probot-3.0.1.tgz#ab5bb1882cbae3b1ccadfe7d94a7a4b3d12eb383" +probot@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/probot/-/probot-3.0.2.tgz#449b8d70c8d1c4b6f3cc3b60e466c5e4fbdc03a1" dependencies: bottleneck "^1.16.0" bunyan "^1.8.12"