diff --git a/.flowconfig b/.flowconfig new file mode 100644 index 0000000..3cf493d --- /dev/null +++ b/.flowconfig @@ -0,0 +1,46 @@ +[ignore] +; We fork some components by platform +.*/*[.]android.js + +; Ignore "BUCK" generated dirs +/\.buckd/ + +; Ignore unexpected extra "@providesModule" +.*/node_modules/.*/node_modules/fbjs/.* + +; Ignore duplicate module providers +; For RN Apps installed via npm, "Libraries" folder is inside +; "node_modules/react-native" but in the source repo it is in the root +.*/Libraries/react-native/React.js +.*/Libraries/react-native/ReactNative.js + +[include] + +[libs] +node_modules/react-native/Libraries/react-native/react-native-interface.js +node_modules/react-native/flow +flow/ + +[options] +emoji=true + +module.system=haste + +experimental.strict_type_args=true + +munge_underscores=true + +module.name_mapper='^[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\)$' -> 'RelativeImageStub' + +suppress_type=$FlowIssue +suppress_type=$FlowFixMe +suppress_type=$FixMe + +suppress_comment=\\(.\\|\n\\)*\\$FlowFixMe\\($\\|[^(]\\|(\\(>=0\\.\\(3[0-8]\\|[1-2][0-9]\\|[0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\) +suppress_comment=\\(.\\|\n\\)*\\$FlowIssue\\((\\(>=0\\.\\(3[0-8]\\|1[0-9]\\|[1-2][0-9]\\).[0-9]\\)? *\\(site=[a-z,_]*react_native[a-z,_]*\\)?)\\)?:? #[0-9]+ +suppress_comment=\\(.\\|\n\\)*\\$FlowFixedInNextDeploy + +unsafe.enable_getters_and_setters=true + +[version] +0.39.0 diff --git a/__tests__/scenes/Info/components/CodeOfConduct.test.js b/__tests__/scenes/Info/components/CodeOfConduct.test.js index debee1f..adca98c 100644 --- a/__tests__/scenes/Info/components/CodeOfConduct.test.js +++ b/__tests__/scenes/Info/components/CodeOfConduct.test.js @@ -1,3 +1,4 @@ +// @flow import 'react-native'; import React from 'react'; import renderer from 'react-test-renderer'; diff --git a/__tests__/scenes/Info/components/Organiser.test.js b/__tests__/scenes/Info/components/Organiser.test.js index fe8859d..63ce322 100644 --- a/__tests__/scenes/Info/components/Organiser.test.js +++ b/__tests__/scenes/Info/components/Organiser.test.js @@ -1,3 +1,4 @@ +// @flow import 'react-native'; import React from 'react'; import renderer from 'react-test-renderer'; diff --git a/__tests__/scenes/Info/index.test.js b/__tests__/scenes/Info/index.test.js index bbf2cad..e183a56 100644 --- a/__tests__/scenes/Info/index.test.js +++ b/__tests__/scenes/Info/index.test.js @@ -1,3 +1,4 @@ +// @flow import 'react-native'; import React from 'react'; import renderer from 'react-test-renderer'; diff --git a/__tests__/scenes/Schedule/components/Break.test.js b/__tests__/scenes/Schedule/components/Break.test.js index a3cf9ef..f35a198 100644 --- a/__tests__/scenes/Schedule/components/Break.test.js +++ b/__tests__/scenes/Schedule/components/Break.test.js @@ -1,3 +1,4 @@ +// @flow import 'react-native'; import React from 'react'; import renderer from 'react-test-renderer'; @@ -7,7 +8,7 @@ import Break from '../../../../app/scenes/Schedule/components/Break'; describe('Schedule - Break', () => { it('renders correctly', () => { const tree = renderer.create( - + ).toJSON(); expect(tree).toMatchSnapshot(); diff --git a/__tests__/scenes/Schedule/components/NowButton.test.js b/__tests__/scenes/Schedule/components/NowButton.test.js index 5944d56..897ab54 100644 --- a/__tests__/scenes/Schedule/components/NowButton.test.js +++ b/__tests__/scenes/Schedule/components/NowButton.test.js @@ -1,3 +1,4 @@ +// @flow import 'react-native'; import React from 'react'; import renderer from 'react-test-renderer'; diff --git a/__tests__/scenes/Schedule/components/SplashScreen.test.js b/__tests__/scenes/Schedule/components/SplashScreen.test.js index 7a1c31e..93b0180 100644 --- a/__tests__/scenes/Schedule/components/SplashScreen.test.js +++ b/__tests__/scenes/Schedule/components/SplashScreen.test.js @@ -1,3 +1,4 @@ +// @flow import 'react-native'; import React from 'react'; import renderer from 'react-test-renderer'; diff --git a/__tests__/scenes/Schedule/components/Talk.test.js b/__tests__/scenes/Schedule/components/Talk.test.js index 99f69f1..78d027f 100644 --- a/__tests__/scenes/Schedule/components/Talk.test.js +++ b/__tests__/scenes/Schedule/components/Talk.test.js @@ -1,3 +1,4 @@ +// @flow import 'react-native'; import React from 'react'; import renderer from 'react-test-renderer'; @@ -7,7 +8,12 @@ import Talk from '../../../../app/scenes/Schedule/components/Talk'; describe('Schedule - Talk', () => { it('renders correctly', () => { const tree = renderer.create( - {}} /> + {}} + speakerAvatarUri="" + speakerName="" + startTime="" + status="present" + title=""/> ).toJSON(); expect(tree).toMatchSnapshot(); diff --git a/__tests__/scenes/Schedule/index.test.js b/__tests__/scenes/Schedule/index.test.js index eee2fd0..6c64033 100644 --- a/__tests__/scenes/Schedule/index.test.js +++ b/__tests__/scenes/Schedule/index.test.js @@ -1,3 +1,4 @@ +// @flow import 'react-native'; import React from 'react'; import renderer from 'react-test-renderer'; diff --git a/__tests__/scenes/Talk/components/Hint.test.js b/__tests__/scenes/Talk/components/Hint.test.js index 0c9ec11..6637192 100644 --- a/__tests__/scenes/Talk/components/Hint.test.js +++ b/__tests__/scenes/Talk/components/Hint.test.js @@ -1,3 +1,4 @@ +// @flow import 'react-native'; import React from 'react'; import renderer from 'react-test-renderer'; @@ -7,7 +8,7 @@ import Hint from '../../../../app/scenes/Talk/components/Hint'; describe('Talk - Hint', () => { it('renders correctly', () => { const tree = renderer.create( - + {}} /> ).toJSON(); expect(tree).toMatchSnapshot(); diff --git a/__tests__/scenes/Talk/components/Pane.test.js b/__tests__/scenes/Talk/components/Pane.test.js index daf5caf..165c3a7 100644 --- a/__tests__/scenes/Talk/components/Pane.test.js +++ b/__tests__/scenes/Talk/components/Pane.test.js @@ -1,3 +1,4 @@ +// @flow import 'react-native'; import React from 'react'; import renderer from 'react-test-renderer'; diff --git a/__tests__/scenes/Talk/components/Preview.test.js b/__tests__/scenes/Talk/components/Preview.test.js index 2da58fb..4039c88 100644 --- a/__tests__/scenes/Talk/components/Preview.test.js +++ b/__tests__/scenes/Talk/components/Preview.test.js @@ -1,3 +1,4 @@ +// @flow import 'react-native'; import React from 'react'; import renderer from 'react-test-renderer'; diff --git a/__tests__/scenes/Talk/components/Speaker.test.js b/__tests__/scenes/Talk/components/Speaker.test.js index 91e2011..7dbe8f0 100644 --- a/__tests__/scenes/Talk/components/Speaker.test.js +++ b/__tests__/scenes/Talk/components/Speaker.test.js @@ -1,3 +1,4 @@ +// @flow import 'react-native'; import React from 'react'; import renderer from 'react-test-renderer'; diff --git a/__tests__/scenes/Talk/index.test.js b/__tests__/scenes/Talk/index.test.js index 68d3827..750a514 100644 --- a/__tests__/scenes/Talk/index.test.js +++ b/__tests__/scenes/Talk/index.test.js @@ -1,13 +1,35 @@ +// @flow import 'react-native'; import React from 'react'; import renderer from 'react-test-renderer'; import Talk from '../../../app/scenes/Talk'; +const talk = { + id: "", + summary: "", + title: "", + speaker: { + avatar: "", + github: "", + name: "", + twitter: "", + summary: "", + }, + time: { + start: new Date, + end: new Date, + }, +}; + describe('Talk', () => { it('renders correctly', () => { const tree = renderer.create( - + ).toJSON(); expect(tree).toMatchSnapshot(); diff --git a/__tests__/setup.js b/__tests__/setup.js index 4507acd..111518d 100644 --- a/__tests__/setup.js +++ b/__tests__/setup.js @@ -1,3 +1,4 @@ +// @flow import React from 'react'; import { View } from 'react-native'; @@ -12,6 +13,7 @@ mockdate.set(1422778155399, -660); // React Native Built-Ins // ------------------------ // React Native UI Manager needs a focus function. +// $FlowFixMe import { UIManager } from 'NativeModules'; UIManager.focus = jest.fn(); UIManager.createView = jest.fn(() => ); diff --git a/app/ReactConf2017.js b/app/ReactConf2017.js index 13de998..2eca746 100644 --- a/app/ReactConf2017.js +++ b/app/ReactConf2017.js @@ -1,3 +1,4 @@ +// @flow import React, { Component } from 'react'; import { AppState, Navigator, StatusBar, StyleSheet } from 'react-native'; import codePush from 'react-native-code-push'; @@ -9,12 +10,6 @@ const Scenes = { Info, Schedule, Talk }; const DEFAULT_VIEW = 'Schedule'; class ReactConf2017 extends Component { - constructor () { - super(); - - this.handleAppStateChange = this.handleAppStateChange.bind(this); - this.syncAppVersion = this.syncAppVersion.bind(this); - } componentDidMount () { this.syncAppVersion(); StatusBar.setBarStyle('light-content', true); @@ -23,14 +18,17 @@ class ReactConf2017 extends Component { componentWillUnmount () { AppState.removeEventListener('change', this.handleAppStateChange); } - handleAppStateChange (currentAppState) { + + handleAppStateChange = (currentAppState: string) => { if (currentAppState === 'active') { this.syncAppVersion(); } - } - syncAppVersion () { + }; + + syncAppVersion = () => { codePush.sync({ mandatoryInstallMode: codePush.InstallMode.IMMEDIATE }); - } + }; + render () { const renderScene = (route, navigator) => { const SceneComponent = Scenes[route.scene]; diff --git a/app/components/Avatar/index.js b/app/components/Avatar/index.js index 1c9a024..981b1f2 100644 --- a/app/components/Avatar/index.js +++ b/app/components/Avatar/index.js @@ -1,9 +1,15 @@ +// @flow import React, { PropTypes } from 'react'; import { Image, View } from 'react-native'; import theme from '../../theme'; -export default function Avatar ({ size, source }) { +type Props = { + size?: number, + source: string, +}; + +export default function Avatar ({ size = 44, source }: Props) { const styles = { wrapper: { backgroundColor: theme.color.sceneBg, @@ -27,11 +33,3 @@ export default function Avatar ({ size, source }) { ); }; - -Avatar.propTypes = { - size: PropTypes.number, - source: PropTypes.string, -}; -Avatar.defaultProps = { - size: 44, -}; diff --git a/app/components/DraggableView/index.js b/app/components/DraggableView/index.js index d5d227b..8db1159 100644 --- a/app/components/DraggableView/index.js +++ b/app/components/DraggableView/index.js @@ -1,10 +1,34 @@ +// @flow import React, { Component, PropTypes } from 'react'; import { Animated, PanResponder } from 'react-native'; const SWIPE_THRESHOLD = 80; +type Props = { + allowX: boolean, + allowY: boolean, + onMove?: () => mixed, + onRelease: () => mixed, + children?: Array>, +}; + +type State = { + pan: Animated.Value, +}; + export default class DraggableView extends Component { - constructor (props) { + props: Props; + state: State; + + _panResponder: PanResponder; + + static defaultProps = { + allowX: true, + allowY: true, + style: {}, + }; + + constructor (props: Props) { super(props); this.state = { @@ -54,15 +78,3 @@ export default class DraggableView extends Component { ); } }; - -DraggableView.propTypes = { - allowX: PropTypes.bool, - allowY: PropTypes.bool, - onMove: PropTypes.func, - onRelease: PropTypes.func, -}; -DraggableView.defaultProps = { - allowX: true, - allowY: true, - style: {}, -}; diff --git a/app/components/ListTitle/index.js b/app/components/ListTitle/index.js index 2be60af..35472a6 100644 --- a/app/components/ListTitle/index.js +++ b/app/components/ListTitle/index.js @@ -1,9 +1,15 @@ +// @flow import React, { PropTypes } from 'react'; import { PixelRatio, Text, View } from 'react-native'; import theme from '../../theme'; -export default function ListTitle ({ bordered, text }) { +type Props = { + bordered?: boolean, + text: string, +}; + +export default function ListTitle ({ bordered, text }: Props) { const styles = { text: { color: theme.color.text, @@ -31,8 +37,3 @@ export default function ListTitle ({ bordered, text }) { ); }; - -ListTitle.propTypes = { - bordered: PropTypes.bool, - text: PropTypes.string.isRequired, -}; diff --git a/app/components/Modal/index.js b/app/components/Modal/index.js index c44c303..606fe6e 100644 --- a/app/components/Modal/index.js +++ b/app/components/Modal/index.js @@ -1,7 +1,18 @@ +// @flow import React, { cloneElement, Component, PropTypes } from 'react'; import { Animated, Dimensions, Modal as RNModal, StyleSheet, TouchableOpacity } from 'react-native'; import { BlurView } from 'react-native-blur'; +type Props = { + align: 'bottom' | 'center' | 'top', + blurAmount: number, + blurType: 'dark' | 'light' | 'xlight', + onClose: () => mixed, + + style?: {}, + children?: React.Element<{ onClose?: () => mixed }>, +}; + function animateToValueWithOptions (val) { return { toValue: val, @@ -16,11 +27,24 @@ const MODAL_ALIGNMENT = { center: 'center', }; +type State = { + animValue: Animated.Value, +}; + export default class Modal extends Component { - constructor (props) { - super(props); + props: Props; + state: State; + + static defaultProps = { + align: 'center', + blurAmount: 12, + blurType: 'dark', + }; - this.onClose = this.onClose.bind(this); + __isClosed: boolean | void; + + constructor (props: Props) { + super(props); this.state = { animValue: new Animated.Value(0), @@ -29,7 +53,7 @@ export default class Modal extends Component { componentDidMount () { Animated.spring(this.state.animValue, animateToValueWithOptions(1)).start(); } - onClose () { + onClose = () => { const { animValue } = this.state; const { onClose } = this.props; @@ -38,8 +62,10 @@ export default class Modal extends Component { this.__isClosed = true; Animated.spring(animValue, animateToValueWithOptions(0)).start(onClose); - } + }; + renderChildren () { + // $FlowFixMe: https://github.com/facebook/flow/issues/1964 return cloneElement(this.props.children, { onClose: this.onClose, }); @@ -84,18 +110,6 @@ export default class Modal extends Component { } }; -Modal.propTypes = { - align: PropTypes.oneOf(['bottom', 'center', 'top']), - blurAmount: PropTypes.number, - blurType: PropTypes.oneOf(['dark', 'light', 'xlight']), - onClose: PropTypes.func.isRequired, -}; -Modal.defaultProps = { - align: 'center', - blurAmount: 12, - blurType: 'dark', -}; - const fillSpace = { height: Dimensions.get('window').height, left: 0, diff --git a/app/components/Navbar/index.js b/app/components/Navbar/index.js index 14c3547..2338890 100644 --- a/app/components/Navbar/index.js +++ b/app/components/Navbar/index.js @@ -1,3 +1,4 @@ +// @flow import React, { PropTypes } from 'react'; import { Dimensions, @@ -11,8 +12,25 @@ import Icon from 'react-native-vector-icons/Ionicons'; import theme from '../../theme'; +type Props = { + backgroundColor?: string, + buttonColor?: string, + leftButtonDisabled?: boolean, + leftButtonIconName?: string, + leftButtonOnPress?: () => mixed, + leftButtonText?: string, + rightButtonDisabled?: boolean, + rightButtonIconName?: string, + rightButtonOnPress?: () => mixed, + rightButtonText?: string, + textColor?: string, + title: string, + titleRenderer?: () => mixed, +}; + export default function Navbar ({ - backgroundColor, + backgroundColor = theme.navbar.backgroundColor, + buttonColor = theme.navbar.buttonColor, leftButtonDisabled, leftButtonIconName, leftButtonOnPress, @@ -21,11 +39,11 @@ export default function Navbar ({ rightButtonIconName, rightButtonOnPress, rightButtonText, - textColor, + textColor = theme.navbar.textColor, title, titleRenderer, ...props -}) { +}: Props) { return ( @@ -79,26 +97,6 @@ export default function Navbar ({ ); }; -Navbar.propTypes = { - backgroundColor: PropTypes.string, - leftButtonDisabled: PropTypes.bool, - leftButtonIconName: PropTypes.string, - leftButtonOnPress: PropTypes.func, - leftButtonText: PropTypes.string, - rightButtonDisabled: PropTypes.bool, - rightButtonIconName: PropTypes.string, - rightButtonOnPress: PropTypes.func, - rightButtonText: PropTypes.string, - textColor: PropTypes.string, - title: PropTypes.string, - titleRenderer: PropTypes.func, -}; -Navbar.defaultProps = { - backgroundColor: theme.navbar.backgroundColor, - buttonColor: theme.navbar.button, - textColor: theme.navbar.textColor, -}; - const styles = StyleSheet.create({ container: { alignItems: 'stretch', diff --git a/app/components/Scene/index.js b/app/components/Scene/index.js index 7fd098d..8a26ecc 100644 --- a/app/components/Scene/index.js +++ b/app/components/Scene/index.js @@ -1,13 +1,15 @@ +// @flow import React, { PropTypes } from 'react'; import { ScrollView, View } from 'react-native'; -export default function Scene ({ scroll, style, ...props }) { +type Props = { + scroll?: boolean, + style?: Object +}; + +export default function Scene ({ scroll, style, ...props }: Props) { const styles = [{ flex: 1 }, style]; const Tag = scroll ? ScrollView : View; return ; }; - -Scene.propTypes = { - scroll: PropTypes.bool, -}; diff --git a/app/constants.js b/app/constants.js index 88e4bae..84f2d28 100644 --- a/app/constants.js +++ b/app/constants.js @@ -1,3 +1,4 @@ +// @flow const TIME_FORMAT = 'h:mma'; export { diff --git a/app/data/organisers.js b/app/data/organisers.js index 02fb85a..fed6b02 100644 --- a/app/data/organisers.js +++ b/app/data/organisers.js @@ -1,3 +1,4 @@ +// @flow export const list = [ { avatar: 'https://www.gravatar.com/avatar/30840890815ed0044146eb2da203276e?s=128', diff --git a/app/data/talks.js b/app/data/talks.js index 773e612..3c5ff8d 100644 --- a/app/data/talks.js +++ b/app/data/talks.js @@ -1,5 +1,8 @@ +// @flow import moment from 'moment'; +import type {ScheduleTalk} from '../types'; + /* TODO: Use the actual conference start time once we've got the schedule info For now, we use the current day and add talks by duration in order to demo @@ -496,13 +499,14 @@ function sortByStartTime (a, b) { const list = Object.keys(data) .sort(sortByStartTime) - .map(k => Object.assign(data[k], { id: k })); + .map(k => Object.assign({}, data[k], { id: k })); -export function getIndexFromId (ID) { +export function getIndexFromId (ID: string): number | null { const idx = list.map(t => t.id).indexOf(ID); if (idx === -1) { - return console.error('No talk found for ID', ID); + console.error('No talk found for ID', ID) + return null; } return idx; @@ -510,32 +514,35 @@ export function getIndexFromId (ID) { // Exposed -export function getNextTalkFromId (ID) { +export function getNextTalkFromId (ID: string): ScheduleTalk | null { const idx = getIndexFromId(ID); + if (idx === null) return null; // skip over breaks - let talk = list[idx + 1]; - if (talk && talk.break) talk = list[idx + 2]; + let search = idx + 1; + let talk = list[search]; + if (talk && talk.break) talk = list[++search]; if (!talk) { - return console.info('This is the last talk.'); + console.info('This is the last talk.') + return null; } return talk; }; -export function getPrevTalkFromId (ID) { +export function getPrevTalkFromId (ID: string): ScheduleTalk | null { const idx = getIndexFromId(ID); + if (idx === null) return null; // skip over breaks - let talk = list[idx - 1]; - if (talk && talk.break) talk = list[idx - 2]; - // allow two breaks together - // TODO: this is pretty brittle, should really be in a loop - if (talk && talk.break) talk = list[idx - 3]; + let search = idx - 1; + let talk = list[search]; + while (talk && talk.break) talk = list[--search]; if (!talk) { - return console.info('This is the first talk.'); + console.info('This is the first talk.') + return null; } return talk; diff --git a/app/scenes/Info/components/CodeOfConduct/index.js b/app/scenes/Info/components/CodeOfConduct/index.js index dcf2a4d..4bb3930 100644 --- a/app/scenes/Info/components/CodeOfConduct/index.js +++ b/app/scenes/Info/components/CodeOfConduct/index.js @@ -1,3 +1,4 @@ +// @flow import React, { Component, PropTypes } from 'react'; import Icon from 'react-native-vector-icons/Ionicons'; import { @@ -12,6 +13,10 @@ import theme from '../../../../theme'; import Modal from '../../../../components/Modal'; export default class CodeOfConduct extends Component { + props: { + onClose: () => mixed, + }; + render () { const { onClose } = this.props; @@ -54,10 +59,6 @@ export default class CodeOfConduct extends Component { } }; -CodeOfConduct.propTypes = { - onClose: PropTypes.func.isRequired, -}; - const BORDER_RADIUS = 6; const styles = StyleSheet.create({ diff --git a/app/scenes/Info/components/Organiser/index.js b/app/scenes/Info/components/Organiser/index.js index 9d0e034..3d9e4b5 100644 --- a/app/scenes/Info/components/Organiser/index.js +++ b/app/scenes/Info/components/Organiser/index.js @@ -1,3 +1,4 @@ +// @flow import React, { PropTypes } from 'react'; import { PixelRatio, @@ -10,12 +11,19 @@ import { import Avatar from '../../../../components/Avatar'; import theme from '../../../../theme'; +type Props = { + avatar: string, + name: string, + onPress: () => mixed, + summary: string, +}; + export default function Organiser ({ avatar, name, onPress, summary, -}) { +}: Props) { const touchableProps = { activeOpacity: 1, onPress: onPress, @@ -36,13 +44,6 @@ export default function Organiser ({ ); }; -Organiser.propTypes = { - avatar: PropTypes.string.isRequired, - name: PropTypes.string.isRequired, - onPress: PropTypes.func.isRequired, - summary: PropTypes.string.isRequired, -}; - const styles = StyleSheet.create({ touchable: { backgroundColor: 'white', diff --git a/app/scenes/Info/index.js b/app/scenes/Info/index.js index 987cf46..27ba7ce 100644 --- a/app/scenes/Info/index.js +++ b/app/scenes/Info/index.js @@ -1,3 +1,4 @@ +// @flow import React, { Component, PropTypes } from 'react'; import { Image, @@ -30,20 +31,34 @@ const mapRegion = { longitudeDelta: 0.01, }; +type Props = { + navigator: Object, + organisers: typeof organiserList, +}; + +type State = { + modalIsOpen: boolean, +}; + export default class Info extends Component { - constructor (props) { - super(props); + props: Props; + state: State; - this.toggleModal = this.toggleModal.bind(this); + static defaultProps = { + organisers: organiserList, + }; + + constructor (props: Props) { + super(props); this.state = { modalIsOpen: false, }; } - toggleModal () { + toggleModal = () => { LayoutAnimation.easeInEaseOut(); this.setState({ modalIsOpen: !this.state.modalIsOpen }); - } + }; openMap () { const url = `http://maps.apple.com/?ll=${mapRegion.latitude},${mapRegion.longitude}`; @@ -127,14 +142,6 @@ export default class Info extends Component { } }; -Info.propTypes = { - navigator: PropTypes.object.isRequired, - organisers: PropTypes.array.isRequired, -}; -Info.defaultProps = { - organisers: organiserList, -}; - const styles = StyleSheet.create({ map: { flex: 1, diff --git a/app/scenes/Schedule/components/Break/index.js b/app/scenes/Schedule/components/Break/index.js index d400148..6455791 100644 --- a/app/scenes/Schedule/components/Break/index.js +++ b/app/scenes/Schedule/components/Break/index.js @@ -1,3 +1,4 @@ +// @flow import React, { Component, PropTypes } from 'react'; import { StyleSheet, Text, View } from 'react-native'; import LinearGradient from 'react-native-linear-gradient'; @@ -9,6 +10,12 @@ const gradientSteps = 14; const gradientJump = 1.05; export default class Break extends Component { + props: { + endTime?: string, + startTime?: string, + status: 'future' | 'past' | 'present', + }; + render () { const { startTime, status } = this.props; const title = this.props.title || 'Break'; @@ -32,11 +39,6 @@ export default class Break extends Component { } }; -Break.propTypes = { - startTime: PropTypes.string, - status: PropTypes.oneOf(['future', 'past', 'present']), -}; - function generateGradientLocations (steps) { let locations = []; diff --git a/app/scenes/Schedule/components/NowButton/index.js b/app/scenes/Schedule/components/NowButton/index.js index f3e7b97..47b6f30 100644 --- a/app/scenes/Schedule/components/NowButton/index.js +++ b/app/scenes/Schedule/components/NowButton/index.js @@ -1,3 +1,4 @@ +// @flow import React, { Component, PropTypes } from 'react'; import { Animated, StyleSheet, Text, TouchableWithoutFeedback } from 'react-native'; import LinearGradient from 'react-native-linear-gradient'; @@ -5,13 +6,24 @@ import LinearGradient from 'react-native-linear-gradient'; import theme from '../../../../theme'; import { lighten, darken } from '../../../../utils/color'; +type Props = { + onPress: () => mixed, +}; + +type State = { + animValue: Animated.Value, +}; + export default class NowButton extends Component { - constructor (props) { + props: Props; + state: State; + + constructor (props: Props) { super(props); this.state = { animValue: new Animated.Value(0) }; } - springToValue (val) { + springToValue (val: number) { Animated.spring(this.state.animValue, { toValue: val, friction: 3, @@ -56,10 +68,6 @@ export default class NowButton extends Component { } }; -NowButton.propTypes = { - onPress: PropTypes.func.isRequired, -}; - const styles = StyleSheet.create({ layout: { alignItems: 'center', diff --git a/app/scenes/Schedule/components/SplashScreen/index.js b/app/scenes/Schedule/components/SplashScreen/index.js index 4864fbf..e1224d7 100644 --- a/app/scenes/Schedule/components/SplashScreen/index.js +++ b/app/scenes/Schedule/components/SplashScreen/index.js @@ -1,3 +1,4 @@ +// @flow import React, { Component, PropTypes } from 'react'; import { Animated, @@ -21,11 +22,28 @@ const SKEW_DOWN = 5; Animated.TouchableHighlight = Animated.createAnimatedComponent(TouchableHighlight); +type Props = { + animated?: boolean, + onAnimationComplete?: () => mixed, + onLogoPress?: () => mixed, +}; + +type State = { + height: Animated.Value, + logoOffset: Animated.Value, + logoScale: Animated.Value, + leftTriangleSkew: Animated.Value, + rightTriangleSkew: Animated.Value, +}; + export default class SplashScreen extends Component { - constructor (props) { - super(props); + props: Props; + state: State; - this.queueTriangleAnimation = this.queueIdleAnimation.bind(this); + skewed: boolean; + + constructor (props: Props) { + super(props); this.state = { height: new Animated.Value(props.animated ? windowHeight + SLIDE_FINAL_HEIGHT : SLIDE_FINAL_HEIGHT), @@ -59,7 +77,7 @@ export default class SplashScreen extends Component { this.queueIdleAnimation(); } } - queueIdleAnimation () { + queueIdleAnimation = () => { const { leftTriangleSkew, rightTriangleSkew } = this.state; const animateTo = (toValue) => { @@ -136,12 +154,6 @@ export default class SplashScreen extends Component { } }; -SplashScreen.PropTypes = { - animated: PropTypes.bool, - onAnimationComplete: PropTypes.func, - onLogoPress: PropTypes.func, -}; - const styles = StyleSheet.create({ wrapper: { zIndex: 2, diff --git a/app/scenes/Schedule/components/Talk/index.js b/app/scenes/Schedule/components/Talk/index.js index 2ecba70..007cf13 100644 --- a/app/scenes/Schedule/components/Talk/index.js +++ b/app/scenes/Schedule/components/Talk/index.js @@ -1,3 +1,4 @@ +// @flow import React, { Component, PropTypes } from 'react'; import { Animated, @@ -14,11 +15,13 @@ import Avatar from '../../../../components/Avatar'; import theme from '../../../../theme'; import { lighten } from '../../../../utils/color'; +type Status = 'past' | 'present' | 'future'; + // ============================== // TALK SEPARATOR // ============================== -export function TalkSeparator ({ status }) { +export function TalkSeparator ({ status }: { status: Status }) { let barColor = theme.color.gray20; if (status === 'past') barColor = lighten(theme.color.blue, 40); else if (status === 'present') barColor = theme.color.blue; @@ -40,7 +43,7 @@ export function TalkSeparator ({ status }) { // TALK STATUSBAR // ============================== -export function TalkStatusBar ({ status, ...props }) { +export function TalkStatusBar ({ status, ...props }: { status: Status }) { let barColor = theme.color.gray20; if (status === 'past') barColor = lighten(theme.color.blue, 40); if (status === 'present') barColor = theme.color.blue; @@ -57,6 +60,15 @@ export function TalkStatusBar ({ status, ...props }) { // TALK ROW // ============================== +type Props = { + onPress: () => mixed, + speakerAvatarUri: string, + speakerName: string, + startTime: string, + status: Status, + title: string, +}; + const animationDefault = (val) => ({ toValue: val, duration: 666, @@ -64,7 +76,14 @@ const animationDefault = (val) => ({ }); export default class Talk extends Component { - constructor (props) { + props: Props; + animValue: Animated.Value; + + static defaultProps = { + status: 'future', + }; + + constructor (props: Props) { super(props); this.animValue = new Animated.Value(0); @@ -148,18 +167,6 @@ export default class Talk extends Component { } }; -Talk.propTypes = { - onPress: PropTypes.func.isRequired, - speakerAvatarUri: PropTypes.string, - speakerName: PropTypes.string, - startTime: PropTypes.string, - status: PropTypes.oneOf(['future', 'past', 'present']), - title: PropTypes.string, -}; -Talk.defaultProps = { - status: 'future', -}; - const styles = StyleSheet.create({ touchable: { backgroundColor: 'white', diff --git a/app/scenes/Schedule/index.js b/app/scenes/Schedule/index.js index 670e5cf..4aa3e7d 100644 --- a/app/scenes/Schedule/index.js +++ b/app/scenes/Schedule/index.js @@ -1,3 +1,4 @@ +// @flow import React, { Component, PropTypes } from 'react'; import { Animated, @@ -12,6 +13,8 @@ import { } from 'react-native'; import moment from 'moment'; +import type {ScheduleTalk} from '../../types'; + import Splash from 'react-native-smart-splash-screen'; import { TIME_FORMAT } from '../../constants'; @@ -28,8 +31,44 @@ import NowButton from './components/NowButton'; import Talk, { TalkSeparator } from './components/Talk'; import SplashScreen from './components/SplashScreen'; +type Props = { + navigator: Object, + talks: Array, +}; + +type State = { + animatingSplash: boolean, + dataSource: Object, + scrollY: Animated.Value, + showNowButton?: boolean, + activeTalkLayout?: { + height: number, + position: number, + } +}; + +type VisibleRows = { + [sectionID: string]: { + [rowID: string]: true, + }, +}; + +type ChangedRows = { + [sectionID: string]: { + [rowID: string]: true | false, + }, +}; + export default class Schedule extends Component { - constructor (props) { + props: Props; + state: State; + _navigatorWillFocusSubscription: any; + + static defaultProps = { + talks: talks, + }; + + constructor (props: Props) { super(props); bindMethods.call(this, [ @@ -100,7 +139,7 @@ export default class Schedule extends Component { scene: 'Info', }); } - onChangeVisibleRows (visibleRows, changedRows) { + onChangeVisibleRows (visibleRows: VisibleRows, changedRows: ChangedRows) { // Now button const now = moment(); const currentTalk = this.props.talks.find(talk => { @@ -120,6 +159,7 @@ export default class Schedule extends Component { } scrolltoActiveTalk () { const { activeTalkLayout } = this.state; + if (!activeTalkLayout) return; const { contentLength } = this.refs.listview.scrollProperties; const sceneHeight = Dimensions.get('window').height; const maxScroll = contentLength - (sceneHeight + theme.navbar.height); @@ -129,7 +169,7 @@ export default class Schedule extends Component { this.refs.listview.scrollTo({ y: scrollToY, animated: true }); } - toggleNowButton (showNowButton) { + toggleNowButton (showNowButton: boolean) { LayoutAnimation.easeInEaseOut(); this.setState({ showNowButton }); } @@ -212,16 +252,19 @@ export default class Schedule extends Component { } // methods on Talk - const onPress = () => navigator.push({ - enableSwipeToPop: true, - scene: 'Talk', - props: { - introduceUI: getIndexFromId(talk.id) < (talks.length - 1), - nextTalk: getNextTalkFromId(talk.id), - prevTalk: getPrevTalkFromId(talk.id), - talk, - }, - }); + const onPress = () => { + let talkIdx = getIndexFromId(talk.id); + navigator.push({ + enableSwipeToPop: true, + scene: 'Talk', + props: { + introduceUI: talkIdx && talkIdx < (talks.length - 1), + nextTalk: getNextTalkFromId(talk.id), + prevTalk: getPrevTalkFromId(talk.id), + talk, + }, + }); + }; const onLayout = status === 'present' ? ({ nativeEvent: { layout } }) => { @@ -263,14 +306,6 @@ export default class Schedule extends Component { } }; -Schedule.propTypes = { - navigator: PropTypes.object.isRequired, - talks: PropTypes.array.isRequired, -}; -Schedule.defaultProps = { - talks: talks, -}; - const styles = StyleSheet.create({ navbar: { position: 'absolute', diff --git a/app/scenes/Talk/components/Hint/index.js b/app/scenes/Talk/components/Hint/index.js index 2254b1b..16f2994 100644 --- a/app/scenes/Talk/components/Hint/index.js +++ b/app/scenes/Talk/components/Hint/index.js @@ -1,3 +1,4 @@ +// @flow import React, { Component } from 'react'; import { Animated, @@ -12,6 +13,15 @@ const Gradient = Animated.createAnimatedComponent(LinearGradient); import theme from '../../../../theme'; import { fade } from '../../../../utils/color'; +type Props = { + onClose: () => mixed +}; + +type State = { + arrowVal: Animated.Value, + containerVal: Animated.Value, +}; + const animationDefault = (val) => ({ toValue: val, duration: 550, @@ -19,7 +29,12 @@ const animationDefault = (val) => ({ }); export default class Hint extends Component { - constructor (props) { + props: Props; + state: State; + + _isMounted: boolean | void; + + constructor (props: Props) { super(props); this.state = { diff --git a/app/scenes/Talk/components/Pane/index.js b/app/scenes/Talk/components/Pane/index.js index d4e0114..c3d21aa 100644 --- a/app/scenes/Talk/components/Pane/index.js +++ b/app/scenes/Talk/components/Pane/index.js @@ -1,3 +1,4 @@ +// @flow import React, { Component, PropTypes } from 'react'; import { Animated, @@ -10,6 +11,8 @@ import { } from 'react-native'; import moment from 'moment'; +import type {ScheduleTalk} from '../../../../types'; + import { TIME_FORMAT } from '../../../../constants'; import theme from '../../../../theme'; import Avatar from '../../../../components/Avatar'; @@ -17,6 +20,18 @@ import Avatar from '../../../../components/Avatar'; import Preview from '../Preview'; export default class TalkPane extends Component { + props: { + nextTalk?: ScheduleTalk | null, + nextTalkPreviewIsEngaged?: boolean, + onHeroLayout?: (Object) => mixed, + onScroll?: (Object) => mixed, + onScrollEndDrag?: () => mixed, + prevTalk?: ScheduleTalk | null, + prevTalkPreviewIsEngaged?: boolean, + showSpeakerModal?: () => mixed, + visibleTalk: ScheduleTalk, + }; + render () { const { nextTalk, @@ -83,17 +98,6 @@ export default class TalkPane extends Component { ); } }; -TalkPane.propTypes = { - nextTalk: PropTypes.object, - nextTalkPreviewIsEngaged: PropTypes.bool, - onHeroLayout: PropTypes.func, // isRequired - onScroll: PropTypes.func, // isRequired - onScrollEndDrag: PropTypes.func, // isRequired - prevTalk: PropTypes.object, - prevTalkPreviewIsEngaged: PropTypes.bool, - showSpeakerModal: PropTypes.func, // isRequired - visibleTalk: PropTypes.object, // isRequired -}; const styles = StyleSheet.create({ hero: { diff --git a/app/scenes/Talk/components/Preview/index.js b/app/scenes/Talk/components/Preview/index.js index 436ae53..a4df535 100644 --- a/app/scenes/Talk/components/Preview/index.js +++ b/app/scenes/Talk/components/Preview/index.js @@ -1,9 +1,21 @@ +// @flow import React, { Component, PropTypes } from 'react'; import { Animated, Dimensions, StyleSheet, Text, View } from 'react-native'; import Icon from 'react-native-vector-icons/Ionicons'; import theme from '../../../../theme'; +type Props = { + isActive?: boolean, + position: 'top' | 'bottom', + subtitle: string, + title: string, +}; + +type State = { + animValue: Animated.Value, +}; + const ICON_VARIANT = { bottom: 'ios-arrow-up', top: 'ios-arrow-down', @@ -15,14 +27,17 @@ const animateToValue = (val) => ({ }); export default class Preview extends Component { - constructor (props) { + props: Props; + state: State; + + constructor (props: Props) { super(props); this.state = { animValue: new Animated.Value(0), }; } - componentWillReceiveProps (nextProps) { + componentWillReceiveProps (nextProps: Props) { if (!this.props.isActive && nextProps.isActive) { this.tada(); } @@ -88,13 +103,6 @@ export default class Preview extends Component { } }; -Preview.propTypes = { - isActive: PropTypes.bool, - position: PropTypes.oneOf(['bottom', 'top']), - subtitle: PropTypes.string.isRequired, - title: PropTypes.string.isRequired, -}; - const styles = StyleSheet.create({ base: { alignItems: 'center', diff --git a/app/scenes/Talk/components/Speaker/index.js b/app/scenes/Talk/components/Speaker/index.js index 654ec44..73e45f9 100644 --- a/app/scenes/Talk/components/Speaker/index.js +++ b/app/scenes/Talk/components/Speaker/index.js @@ -1,3 +1,4 @@ +// @flow import React, { Component, PropTypes } from 'react'; import { PixelRatio, @@ -49,14 +50,22 @@ Button.propTypes = { }; export default class Speaker extends Component { - constructor (props) { - super(props); + props: { + avatar: string, + github?: string, + name: string, + onClose: () => mixed, + summary: string, + twitter?: string, + }; - this.handleClose = this.handleClose.bind(this); - } - handleClose () { + static defaultProps = { + onPress() {}, + }; + + handleClose = () => { this.refs.modal.onClose(); - } + }; render () { const { avatar, @@ -115,18 +124,6 @@ export default class Speaker extends Component { } }; -Speaker.propTypes = { - avatar: PropTypes.string.isRequired, - github: PropTypes.string, - name: PropTypes.string.isRequired, - onClose: PropTypes.func.isRequired, - summary: PropTypes.string.isRequired, - twitter: PropTypes.string, -}; -Speaker.defaultProps = { - onPress: () => {}, -}; - const styles = StyleSheet.create({ wrapper: { backgroundColor: 'white', diff --git a/app/scenes/Talk/index.js b/app/scenes/Talk/index.js index 302b0f4..6aad87f 100644 --- a/app/scenes/Talk/index.js +++ b/app/scenes/Talk/index.js @@ -1,7 +1,9 @@ +// @flow import React, { Component, PropTypes } from 'react'; import { ActionSheetIOS, Animated, Dimensions } from 'react-native'; import moment from 'moment'; +import type {ScheduleTalk} from '../../types'; import { TIME_FORMAT } from '../../constants'; import Navbar from '../../components/Navbar'; import Scene from '../../components/Scene'; @@ -14,8 +16,63 @@ import Hint from './components/Hint'; import Speaker from './components/Speaker'; import TalkPane from './components/Pane'; +type Props = { + navigator: Object, + nextTalk: ScheduleTalk | null, + prevTalk: ScheduleTalk | null, + talk: ScheduleTalk, + introduceUI: boolean, +}; + +type TransitionDirection = 'prev' | 'next'; + +type State = { + animValue: Animated.Value, + modalIsOpen: boolean, + nextTalk: ScheduleTalk | null, + prevTalk: ScheduleTalk | null, + showIntro: boolean, + talk: ScheduleTalk, + incomingTalk?: ScheduleTalk | null, + transitionDirection?: TransitionDirection, +}; + +type SetTalksState = { + talk: ScheduleTalk, + nextTalk: ScheduleTalk | null, + prevTalk: ScheduleTalk | null, +}; + export default class Talk extends Component { - constructor (props) { + sceneHeight: number; + sceneWidth: number; + + talkpane: $FlowFixMe; // https://github.com/facebook/flow/issues/2202 + transitionpane: $FlowFixMe; // https://github.com/facebook/flow/issues/2202 + + state: State; + props: Props; + + static defaultProps = { + talk: { + id: 'max-stoiber', + summary: 'What if we took the best of JavaScript and the best of CSS, and combined them together to create the ultimate styling solution for React? Glen Maddern (CSS Modules co-creator) and I sat down and starting thinking about this. Let\'s talk about what we thought about and why we arrived where we did – 💅 styled-components.', + title: 'The Road to Styled Components', + speaker: { + avatar: 'https://www.gravatar.com/avatar/48619fc17b3ab68472aebd56c0106278?s=128', + github: 'mxstbr', + name: 'Max Stoiber', + twitter: 'mxstbr', + summary: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi a finibus ligula, sed congue eros. Proin nunc nunc, facilisis sit amet tempor et, finibus eu turpis.', + }, + time: { + start: new Date('2017-02-26T22:30:00.000Z'), + end: new Date('2017-02-26T23:30:00.000Z'), + }, + }, + }; + + constructor (props: Props) { super(props); bindMethods.call(this, [ @@ -36,7 +93,7 @@ export default class Talk extends Component { talk: props.talk, }; } - handleLayout ({ height }) { + handleLayout ({ height }: { height: number }) { const availableHeight = this.sceneHeight - (height); this.talkpane.refs.summary.measure((left, top, width, height) => { @@ -46,7 +103,7 @@ export default class Talk extends Component { }); } - handleScroll ({ nativeEvent }) { + handleScroll ({ nativeEvent }: Object) { const contentHeight = nativeEvent.contentSize.height; const viewHeight = nativeEvent.layoutMeasurement.height; const scrollY = nativeEvent.contentOffset.y; @@ -88,7 +145,9 @@ export default class Talk extends Component { : null; const prevTalk = this.state.talk; - this.setTalks({ nextTalk, prevTalk, talk }, 'next'); + if (talk !== null) { + this.setTalks({ nextTalk, prevTalk, talk }, 'next'); + } } renderPrevTalk () { const talk = this.state.prevTalk; @@ -97,9 +156,11 @@ export default class Talk extends Component { ? getPrevTalkFromId(this.state.prevTalk.id) : null; - this.setTalks({ nextTalk, prevTalk, talk }, 'prev'); + if (talk !== null) { + this.setTalks({ nextTalk, prevTalk, talk }, 'prev'); + } } - setTalks (newState, transitionDirection) { + setTalks (newState: SetTalksState, transitionDirection: TransitionDirection) { this.setState({ incomingTalk: newState.talk, transitionDirection, @@ -109,7 +170,7 @@ export default class Talk extends Component { friction: 7, tension: 30, }).start(() => { - this.setState(Object.assign(newState, { incomingTalk: null }), () => { + this.setState(Object.assign({}, newState, { incomingTalk: null }), () => { this.state.animValue.setValue(0); this.talkpane.refs.scrollview.setNativeProps({ bounces: true, @@ -136,7 +197,7 @@ export default class Talk extends Component { console.log(result); }); } - toggleSpeakerModal (modalIsOpen) { + toggleSpeakerModal (modalIsOpen: boolean) { this.setState({ modalIsOpen }); } render () { @@ -238,26 +299,3 @@ export default class Talk extends Component { ); } }; - -Talk.propTypes = { - navigator: PropTypes.object.isRequired, - talk: PropTypes.object.isRequired, -}; -Talk.defaultProps = { - talk: { - id: 'max-stoiber', - summary: 'What if we took the best of JavaScript and the best of CSS, and combined them together to create the ultimate styling solution for React? Glen Maddern (CSS Modules co-creator) and I sat down and starting thinking about this. Let\'s talk about what we thought about and why we arrived where we did – 💅 styled-components.', - title: 'The Road to Styled Components', - speaker: { - avatar: 'https://www.gravatar.com/avatar/48619fc17b3ab68472aebd56c0106278?s=128', - github: 'mxstbr', - name: 'Max Stoiber', - twitter: 'mxstbr', - summary: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi a finibus ligula, sed congue eros. Proin nunc nunc, facilisis sit amet tempor et, finibus eu turpis.', - }, - time: { - start: new Date('2017-02-26T22:30:00.000Z'), - end: new Date('2017-02-26T23:30:00.000Z'), - }, - }, -}; diff --git a/app/scenes/index.js b/app/scenes/index.js index 43a74d7..8c89495 100644 --- a/app/scenes/index.js +++ b/app/scenes/index.js @@ -1,3 +1,4 @@ +// @flow export { default as Info } from './Info'; export { default as Schedule } from './Schedule'; export { default as Talk } from './Talk'; diff --git a/app/theme.js b/app/theme.js index 1342933..e1cf6e8 100644 --- a/app/theme.js +++ b/app/theme.js @@ -1,3 +1,4 @@ +// @flow // ============================== // APP STYLE CONSTANTS // ============================== diff --git a/app/types.js b/app/types.js new file mode 100644 index 0000000..b5f8a02 --- /dev/null +++ b/app/types.js @@ -0,0 +1,30 @@ +// @flow + +export type ScheduleTimeRange = { + start: Date, + end: Date, +}; + +export type ScheduleTalk = { + id: string, + summary: string, + title: string, + speaker: { + avatar: string, + github?: string, + name: string, + twitter?: string, + summary: string, + }, + time: ScheduleTimeRange, +}; + +export type ScheduleBreak = { + break: true, + time: ScheduleTimeRange, + title: string, +}; + +export type Schedule = { + [string]: ScheduleTalk | ScheduleBreak, +}; diff --git a/app/utils/attemptToOpenUrl.js b/app/utils/attemptToOpenUrl.js index 1fafd16..46f906a 100644 --- a/app/utils/attemptToOpenUrl.js +++ b/app/utils/attemptToOpenUrl.js @@ -1,6 +1,7 @@ +// @flow import { Linking } from 'react-native'; -export default function attemptToOpenUrl (url) { +export default function attemptToOpenUrl (url: string) { if (!url) return console.error('Invalid URL supplied.'); Linking.canOpenURL(url).then(supported => { diff --git a/app/utils/bindMethods.js b/app/utils/bindMethods.js index 0c24f4a..826635e 100644 --- a/app/utils/bindMethods.js +++ b/app/utils/bindMethods.js @@ -1,3 +1,4 @@ +// @flow /* Bind your component's methods @@ -7,6 +8,6 @@ } */ -export default function bindMethods (functions) { +export default function bindMethods (functions: Array) { functions.forEach(f => (this[f] = this[f].bind(this))); }; diff --git a/app/utils/color.js b/app/utils/color.js index a89fa81..001e430 100644 --- a/app/utils/color.js +++ b/app/utils/color.js @@ -1,3 +1,4 @@ +// @flow /** Validate Hex ============================== @@ -34,7 +35,7 @@ function validateHex (color) { 2. combine and add alpha channel */ -function fade (color, opacity = 100) { +function fade (color: string, opacity: number = 100) { const decimalFraction = opacity / 100; const hex = validateHex(color); @@ -68,7 +69,7 @@ function fade (color, opacity = 100) { 2. combine back into a hex value */ -function shade (color, percent) { +function shade (color: string, percent: number) { const decimalFraction = percent / 100; const hex = validateHex(color); @@ -90,7 +91,7 @@ function shade (color, percent) { // shade helpers const lighten = shade; -function darken (color, percent) { +function darken (color: string, percent: number) { return shade(color, percent * -1); }; @@ -109,7 +110,7 @@ function darken (color, percent) { 2. combine back into a hex value */ -function blend (color1, color2, percent) { +function blend (color1: string, color2: string, percent: number) { const decimalFraction = percent / 100; const hex1 = validateHex(color1); const hex2 = validateHex(color2); diff --git a/app/utils/index.js b/app/utils/index.js index 68688c2..4dfabec 100644 --- a/app/utils/index.js +++ b/app/utils/index.js @@ -1,2 +1,3 @@ +// @flow export { default as attemptToOpenUrl } from './attemptToOpenUrl'; export { default as bindMethods } from './bindMethods'; diff --git a/flow-typed/npm/babel-jest_vx.x.x.js b/flow-typed/npm/babel-jest_vx.x.x.js new file mode 100644 index 0000000..716243b --- /dev/null +++ b/flow-typed/npm/babel-jest_vx.x.x.js @@ -0,0 +1,32 @@ +// flow-typed signature: 74511df48de059eeeba179aa7e1b1af5 +// flow-typed version: <>/babel-jest_v^19.0.0/flow_v0.40.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'babel-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 'babel-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 'babel-jest/build/index' { + declare module.exports: any; +} + +// Filename aliases +declare module 'babel-jest/build/index.js' { + declare module.exports: $Exports<'babel-jest/build/index'>; +} diff --git a/flow-typed/npm/babel-preset-react-native_vx.x.x.js b/flow-typed/npm/babel-preset-react-native_vx.x.x.js new file mode 100644 index 0000000..da07faa --- /dev/null +++ b/flow-typed/npm/babel-preset-react-native_vx.x.x.js @@ -0,0 +1,73 @@ +// flow-typed signature: 6f250f42dcd85ba1b2ad060e5d1a068b +// flow-typed version: <>/babel-preset-react-native_v1.9.1/flow_v0.40.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'babel-preset-react-native' + * + * 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-preset-react-native' { + 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-preset-react-native/configs/hmr' { + declare module.exports: any; +} + +declare module 'babel-preset-react-native/configs/internal' { + declare module.exports: any; +} + +declare module 'babel-preset-react-native/configs/main' { + declare module.exports: any; +} + +declare module 'babel-preset-react-native/lib/resolvePlugins' { + declare module.exports: any; +} + +declare module 'babel-preset-react-native/plugins' { + declare module.exports: any; +} + +declare module 'babel-preset-react-native/transforms/transform-symbol-member' { + declare module.exports: any; +} + +// Filename aliases +declare module 'babel-preset-react-native/configs/hmr.js' { + declare module.exports: $Exports<'babel-preset-react-native/configs/hmr'>; +} +declare module 'babel-preset-react-native/configs/internal.js' { + declare module.exports: $Exports<'babel-preset-react-native/configs/internal'>; +} +declare module 'babel-preset-react-native/configs/main.js' { + declare module.exports: $Exports<'babel-preset-react-native/configs/main'>; +} +declare module 'babel-preset-react-native/index' { + declare module.exports: $Exports<'babel-preset-react-native'>; +} +declare module 'babel-preset-react-native/index.js' { + declare module.exports: $Exports<'babel-preset-react-native'>; +} +declare module 'babel-preset-react-native/lib/resolvePlugins.js' { + declare module.exports: $Exports<'babel-preset-react-native/lib/resolvePlugins'>; +} +declare module 'babel-preset-react-native/plugins.js' { + declare module.exports: $Exports<'babel-preset-react-native/plugins'>; +} +declare module 'babel-preset-react-native/transforms/transform-symbol-member.js' { + declare module.exports: $Exports<'babel-preset-react-native/transforms/transform-symbol-member'>; +} diff --git a/flow-typed/npm/eslint-config-keystone-react_vx.x.x.js b/flow-typed/npm/eslint-config-keystone-react_vx.x.x.js new file mode 100644 index 0000000..c7e26e1 --- /dev/null +++ b/flow-typed/npm/eslint-config-keystone-react_vx.x.x.js @@ -0,0 +1,33 @@ +// flow-typed signature: fb06a789f80d5e0fc31c32afd7cc964b +// flow-typed version: <>/eslint-config-keystone-react_v^1.0.0/flow_v0.40.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'eslint-config-keystone-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-config-keystone-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. + */ + + +// Filename aliases +declare module 'eslint-config-keystone-react/index' { + declare module.exports: $Exports<'eslint-config-keystone-react'>; +} +declare module 'eslint-config-keystone-react/index.js' { + declare module.exports: $Exports<'eslint-config-keystone-react'>; +} diff --git a/flow-typed/npm/eslint-config-keystone_vx.x.x.js b/flow-typed/npm/eslint-config-keystone_vx.x.x.js new file mode 100644 index 0000000..3c4c5e8 --- /dev/null +++ b/flow-typed/npm/eslint-config-keystone_vx.x.x.js @@ -0,0 +1,33 @@ +// flow-typed signature: 1d0c9c219fbfc2aab5304f9721d321ef +// flow-typed version: <>/eslint-config-keystone_v^3.0.0/flow_v0.40.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'eslint-config-keystone' + * + * 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-keystone' { + 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-keystone/index' { + declare module.exports: $Exports<'eslint-config-keystone'>; +} +declare module 'eslint-config-keystone/index.js' { + declare module.exports: $Exports<'eslint-config-keystone'>; +} 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 0000000..8b02e13 --- /dev/null +++ b/flow-typed/npm/eslint-plugin-react_vx.x.x.js @@ -0,0 +1,500 @@ +// flow-typed signature: 4bf6c5bcc81d7ffcf58618217b0116a8 +// flow-typed version: <>/eslint-plugin-react_v^6.10.0/flow_v0.40.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/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-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-comment-textnodes' { + 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-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-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/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-extension' { + 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/rules/wrap-multilines' { + 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/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/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-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-comment-textnodes.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/no-comment-textnodes'>; +} +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-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-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/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-extension.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/require-extension'>; +} +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/rules/wrap-multilines.js' { + declare module.exports: $Exports<'eslint-plugin-react/lib/rules/wrap-multilines'>; +} +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/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 0000000..f5e8290 --- /dev/null +++ b/flow-typed/npm/eslint_vx.x.x.js @@ -0,0 +1,2181 @@ +// flow-typed signature: d1a185a21d3eb409ef89bf011d2126a7 +// flow-typed version: <>/eslint_v^3.15.0/flow_v0.40.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/cli-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/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-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/eslint' { + 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/internal-rules/internal-consistent-docs-description' { + declare module.exports: any; +} + +declare module 'eslint/lib/internal-rules/internal-no-invalid-meta' { + 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/rule-context' { + 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-spacing' { + declare module.exports: any; +} + +declare module 'eslint/lib/rules/array-callback-return' { + 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/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/generator-star-spacing' { + 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' { + 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/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-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-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-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/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/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' { + 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/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/event-generator-tester' { + 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' { + declare module.exports: any; +} + +declare module 'eslint/lib/util/comment-event-generator' { + 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/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/cli-options.js' { + declare module.exports: $Exports<'eslint/conf/cli-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/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-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/eslint.js' { + declare module.exports: $Exports<'eslint/lib/eslint'>; +} +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/internal-rules/internal-consistent-docs-description.js' { + declare module.exports: $Exports<'eslint/lib/internal-rules/internal-consistent-docs-description'>; +} +declare module 'eslint/lib/internal-rules/internal-no-invalid-meta.js' { + declare module.exports: $Exports<'eslint/lib/internal-rules/internal-no-invalid-meta'>; +} +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/rule-context.js' { + declare module.exports: $Exports<'eslint/lib/rule-context'>; +} +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-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/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/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/generator-star-spacing.js' { + declare module.exports: $Exports<'eslint/lib/rules/generator-star-spacing'>; +} +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.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/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-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-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-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/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/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.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/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/event-generator-tester.js' { + declare module.exports: $Exports<'eslint/lib/testers/event-generator-tester'>; +} +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.js' { + declare module.exports: $Exports<'eslint/lib/token-store'>; +} +declare module 'eslint/lib/util/comment-event-generator.js' { + declare module.exports: $Exports<'eslint/lib/util/comment-event-generator'>; +} +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/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 0000000..c538e20 --- /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/flow-typed_vx.x.x.js b/flow-typed/npm/flow-typed_vx.x.x.js new file mode 100644 index 0000000..c50fed1 --- /dev/null +++ b/flow-typed/npm/flow-typed_vx.x.x.js @@ -0,0 +1,158 @@ +// flow-typed signature: bbf613c42782dd3512e2351962b309ba +// flow-typed version: <>/flow-typed_v^2.0.0/flow_v0.40.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'flow-typed' + * + * 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 'flow-typed' { + 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 'flow-typed/dist/cli' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/commands/create-stub' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/commands/install' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/commands/runTests' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/commands/search' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/commands/update-cache' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/commands/update' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/commands/validateDefs' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/commands/version' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/lib/codeSign' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/lib/fileUtils' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/lib/flowProjectUtils' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/lib/git' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/lib/github' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/lib/libDefs' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/lib/node' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/lib/npmProjectUtils' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/lib/semver' { + declare module.exports: any; +} + +declare module 'flow-typed/dist/lib/stubUtils' { + declare module.exports: any; +} + +// Filename aliases +declare module 'flow-typed/dist/cli.js' { + declare module.exports: $Exports<'flow-typed/dist/cli'>; +} +declare module 'flow-typed/dist/commands/create-stub.js' { + declare module.exports: $Exports<'flow-typed/dist/commands/create-stub'>; +} +declare module 'flow-typed/dist/commands/install.js' { + declare module.exports: $Exports<'flow-typed/dist/commands/install'>; +} +declare module 'flow-typed/dist/commands/runTests.js' { + declare module.exports: $Exports<'flow-typed/dist/commands/runTests'>; +} +declare module 'flow-typed/dist/commands/search.js' { + declare module.exports: $Exports<'flow-typed/dist/commands/search'>; +} +declare module 'flow-typed/dist/commands/update-cache.js' { + declare module.exports: $Exports<'flow-typed/dist/commands/update-cache'>; +} +declare module 'flow-typed/dist/commands/update.js' { + declare module.exports: $Exports<'flow-typed/dist/commands/update'>; +} +declare module 'flow-typed/dist/commands/validateDefs.js' { + declare module.exports: $Exports<'flow-typed/dist/commands/validateDefs'>; +} +declare module 'flow-typed/dist/commands/version.js' { + declare module.exports: $Exports<'flow-typed/dist/commands/version'>; +} +declare module 'flow-typed/dist/lib/codeSign.js' { + declare module.exports: $Exports<'flow-typed/dist/lib/codeSign'>; +} +declare module 'flow-typed/dist/lib/fileUtils.js' { + declare module.exports: $Exports<'flow-typed/dist/lib/fileUtils'>; +} +declare module 'flow-typed/dist/lib/flowProjectUtils.js' { + declare module.exports: $Exports<'flow-typed/dist/lib/flowProjectUtils'>; +} +declare module 'flow-typed/dist/lib/git.js' { + declare module.exports: $Exports<'flow-typed/dist/lib/git'>; +} +declare module 'flow-typed/dist/lib/github.js' { + declare module.exports: $Exports<'flow-typed/dist/lib/github'>; +} +declare module 'flow-typed/dist/lib/libDefs.js' { + declare module.exports: $Exports<'flow-typed/dist/lib/libDefs'>; +} +declare module 'flow-typed/dist/lib/node.js' { + declare module.exports: $Exports<'flow-typed/dist/lib/node'>; +} +declare module 'flow-typed/dist/lib/npmProjectUtils.js' { + declare module.exports: $Exports<'flow-typed/dist/lib/npmProjectUtils'>; +} +declare module 'flow-typed/dist/lib/semver.js' { + declare module.exports: $Exports<'flow-typed/dist/lib/semver'>; +} +declare module 'flow-typed/dist/lib/stubUtils.js' { + declare module.exports: $Exports<'flow-typed/dist/lib/stubUtils'>; +} diff --git a/flow-typed/npm/jest_v18.x.x.js b/flow-typed/npm/jest_v18.x.x.js new file mode 100644 index 0000000..69e7730 --- /dev/null +++ b/flow-typed/npm/jest_v18.x.x.js @@ -0,0 +1,440 @@ +// flow-typed signature: 032214c577f085159829eeae40c41e6a +// flow-typed version: 7dc2a8971e/jest_v18.x.x/flow_>=v0.33.x + +type JestMockFn = { + (...args: Array): any, + /** + * 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: mixed, + }, + /** + * 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(): Function, + /** + * Resets all information stored in the mock. This is useful when you want to + * completely restore a mock back to its initial state. + */ + mockReset(): Function, + /** + * 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: Function): 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: Function): JestMockFn, + /** + * Just a simple sugar function for returning `this` + */ + mockReturnThis(): void, + /** + * Deprecated: use jest.fn(() => value) instead + */ + mockReturnValue(value: any): JestMockFn, + /** + * Sugar for only returning a value once inside your mock + */ + mockReturnValueOnce(value: any): 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(): void, + uninstall(): void, +} + +type JestMatcherResult = { + message?: string | ()=>string, + pass: boolean, +} + +type JestMatcher = (actual: any, expected: any) => JestMatcherResult; + +type JestExpectType = { + not: JestExpectType, + /** + * 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, + /** + * 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. + */ + toMatch(regexp: RegExp): 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. + */ + toThrow(message?: string | Error): void, + /** + * Use .toThrowError to test that a function throws a specific error when it + * is called. The argument can be a string for the error message, a class for + * the error, or a regex that should match the error. + */ + 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, + /** + * 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(implementation?: Function): 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): JestObjectType, + /** + * 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, +} + +type JestSpyType = { + calls: JestCallsType, +} + +/** Runs this function after every test inside this context */ +declare function afterEach(fn: Function): void; +/** Runs this function before every test inside this context */ +declare function beforeEach(fn: Function): void; +/** Runs this function after all tests have finished inside this context */ +declare function afterAll(fn: Function): void; +/** Runs this function before any tests have started inside this context */ +declare function beforeAll(fn: Function): void; +/** A context for grouping tests together */ +declare function describe(name: string, fn: Function): void; + +/** An individual test unit */ +declare var it: { + /** + * An individual test unit + * + * @param {string} Name of Test + * @param {Function} Test + */ + (name: string, fn?: Function): ?Promise, + /** + * Only run this test + * + * @param {string} Name of Test + * @param {Function} Test + */ + only(name: string, fn?: Function): ?Promise, + /** + * Skip running this test + * + * @param {string} Name of Test + * @param {Function} Test + */ + skip(name: string, fn?: Function): ?Promise, + /** + * Run the test concurrently + * + * @param {string} Name of Test + * @param {Function} Test + */ + concurrent(name: string, fn?: Function): ?Promise, +}; +declare function fit(name: string, fn: Function): ?Promise; +/** 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, + /** Add additional Jasmine matchers to Jest's roster */ + extend(matchers: {[name:string]: JestMatcher}): void, + assertions(expectedAssertions: number): void, + any(value: mixed): JestAsymmetricEqualityType, + anything(): void, + arrayContaining(value: Array): void, + objectContaining(value: Object): 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 Jamine 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/mockdate_vx.x.x.js b/flow-typed/npm/mockdate_vx.x.x.js new file mode 100644 index 0000000..e8f95b6 --- /dev/null +++ b/flow-typed/npm/mockdate_vx.x.x.js @@ -0,0 +1,39 @@ +// flow-typed signature: fe245c3a11f4b1b2e2647d7b39b0d646 +// flow-typed version: <>/mockdate_v^2.0.1/flow_v0.40.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'mockdate' + * + * 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 'mockdate' { + 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 'mockdate/Gruntfile' { + declare module.exports: any; +} + +declare module 'mockdate/src/mockdate' { + declare module.exports: any; +} + +// Filename aliases +declare module 'mockdate/Gruntfile.js' { + declare module.exports: $Exports<'mockdate/Gruntfile'>; +} +declare module 'mockdate/src/mockdate.js' { + declare module.exports: $Exports<'mockdate/src/mockdate'>; +} diff --git a/flow-typed/npm/moment_v2.x.x.js b/flow-typed/npm/moment_v2.x.x.js new file mode 100644 index 0000000..6119bc3 --- /dev/null +++ b/flow-typed/npm/moment_v2.x.x.js @@ -0,0 +1,235 @@ +// flow-typed signature: b7d5419a7f10309b2328eeaf6d58f528 +// flow-typed version: b96843401b/moment_v2.x.x/flow_>=v0.28.x + +type moment$MomentOptions = { + y?: number|string, + year?: number|string, + years?: number|string, + M?: number|string, + month?: number|string, + months?: number|string, + d?: number|string, + day?: number|string, + days?: number|string, + date?: number|string, + h?: number|string, + hour?: number|string, + hours?: number|string, + m?: number|string, + minute?: number|string, + minutes?: number|string, + s?: number|string, + second?: number|string, + seconds?: number|string, + ms?: number|string, + millisecond?: number|string, + milliseconds?: number|string, +}; + +type moment$MomentObject = { + years: number, + months: number, + date: number, + hours: number, + minutes: number, + seconds: number, + milliseconds: number, +}; + +type moment$MomentCreationData = { + input: string, + format: string, + locale: Object, + isUTC: bool, + strict: bool, +}; + +type moment$CalendarFormats = { + sameDay?: string, + nextDay?: string, + nextWeek?: string, + lastDay?: string, + lastWeek?: string, + sameElse?: string, +}; + +declare class moment$LocaleData { + months(moment: moment$Moment): string; + monthsShort(moment: moment$Moment): string; + monthsParse(month: string): number; + weekdays(moment: moment$Moment): string; + weekdaysShort(moment: moment$Moment): string; + weekdaysMin(moment: moment$Moment): string; + weekdaysParse(weekDay: string): number; + longDateFormat(dateFormat: string): string; + isPM(date: string): bool; + meridiem(hours: number, minutes: number, isLower: bool): string; + calendar(key: 'sameDay'|'nextDay'|'lastDay'|'nextWeek'|'prevWeek'|'sameElse', moment: moment$Moment): string; + relativeTime(number: number, withoutSuffix: bool, key: 's'|'m'|'mm'|'h'|'hh'|'d'|'dd'|'M'|'MM'|'y'|'yy', isFuture: bool): string; + pastFuture(diff: any, relTime: string): string; + ordinal(number: number): string; + preparse(str: string): any; + postformat(str: string): any; + week(moment: moment$Moment): string; + invalidDate(): string; + firstDayOfWeek(): number; + firstDayOfYear(): number; +} +declare class moment$MomentDuration { + humanize(suffix?: bool): string; + milliseconds(): number; + asMilliseconds(): number; + seconds(): number; + asSeconds(): number; + minutes(): number; + asMinutes(): number; + hours(): number; + asHours(): number; + days(): number; + asDays(): number; + months(): number; + asMonths(): number; + years(): number; + asYears(): number; + add(value: number|moment$MomentDuration|Object, unit?: string): this; + subtract(value: number|moment$MomentDuration|Object, unit?: string): this; + as(unit: string): number; + get(unit: string): number; + toJSON(): string; + toISOString(): string; +} +declare class moment$Moment { + static ISO_8601: string; + static (string?: string, format?: string|Array, locale?: string, strict?: bool): moment$Moment; + static (initDate: ?Object|number|Date|Array|moment$Moment|string): moment$Moment; + static unix(seconds: number): moment$Moment; + static utc(): moment$Moment; + static utc(number: number|Array): moment$Moment; + static utc(str: string, str2?: string|Array, str3?: string): moment$Moment; + static utc(moment: moment$Moment): moment$Moment; + static utc(date: Date): moment$Moment; + static parseZone(rawDate: string): moment$Moment; + isValid(): bool; + invalidAt(): 0|1|2|3|4|5|6; + creationData(): moment$MomentCreationData; + millisecond(number: number): this; + milliseconds(number: number): this; + millisecond(): number; + milliseconds(): number; + second(number: number): this; + seconds(number: number): this; + second(): number; + seconds(): number; + minute(number: number): this; + minutes(number: number): this; + minute(): number; + minutes(): number; + hour(number: number): this; + hours(number: number): this; + hour(): number; + hours(): number; + date(number: number): this; + dates(number: number): this; + date(): number; + dates(): number; + day(day: number|string): this; + days(day: number|string): this; + day(): number; + days(): number; + weekday(number: number): this; + weekday(): number; + isoWeekday(number: number): this; + isoWeekday(): number; + dayOfYear(number: number): this; + dayOfYear(): number; + week(number: number): this; + weeks(number: number): this; + week(): number; + weeks(): number; + isoWeek(number: number): this; + isoWeeks(number: number): this; + isoWeek(): number; + isoWeeks(): number; + month(number: number): this; + months(number: number): this; + month(): number; + months(): number; + quarter(number: number): this; + quarter(): number; + year(number: number): this; + years(number: number): this; + year(): number; + years(): number; + weekYear(number: number): this; + weekYear(): number; + isoWeekYear(number: number): this; + isoWeekYear(): number; + weeksInYear(): number; + isoWeeksInYear(): number; + get(string: string): number; + set(unit: string, value: number): this; + set(options: { [unit: string]: number }): this; + static max(...dates: Array): moment$Moment; + static max(dates: Array): moment$Moment; + static min(...dates: Array): moment$Moment; + static min(dates: Array): moment$Moment; + add(value: number|moment$MomentDuration|moment$Moment|Object, unit?: string): this; + subtract(value: number|moment$MomentDuration|moment$Moment|string|Object, unit?: string): this; + startOf(unit: string): this; + endOf(unit: string): this; + local(): this; + utc(): this; + utcOffset(offset: number|string): void; + utcOffset(): number|string; + format(format?: string): string; + fromNow(removeSuffix?: bool): string; + from(value: moment$Moment|string|number|Date|Array, removePrefix?: bool): string; + toNow(removePrefix?: bool): string; + to(value: moment$Moment|string|number|Date|Array, removePrefix?: bool): string; + calendar(refTime?: any, formats?: moment$CalendarFormats): string; + diff(date: moment$Moment|string|number|Date|Array, format?: string, floating?: bool): number; + valueOf(): number; + unix(): number; + daysInMonth(): number; + toDate(): Date; + toArray(): Array; + toJSON(): string; + toISOString(): string; + toObject(): moment$MomentObject; + isBefore(date?: moment$Moment|string|number|Date|Array): bool; + isSame(date?: moment$Moment|string|number|Date|Array): bool; + isAfter(date?: moment$Moment|string|number|Date|Array): bool; + isSameOrBefore(date?: moment$Moment|string|number|Date|Array): bool; + isSameOrAfter(date?: moment$Moment|string|number|Date|Array): bool; + isBetween(date: moment$Moment|string|number|Date|Array): bool; + isDST(): bool; + isDSTShifted(): bool; + isLeapYear(): bool; + clone(): moment$Moment; + static isMoment(obj: any): bool; + static isDate(obj: any): bool; + static locale(locale: string, localeData?: Object): string; + static updateLocale(locale: string, localeData?: ?Object): void; + static locale(locales: Array): string; + locale(locale: string, customization?: Object|null): moment$Moment; + locale(): string; + static months(): Array; + static monthsShort(): Array; + static weekdays(): Array; + static weekdaysShort(): Array; + static weekdaysMin(): Array; + static months(): string; + static monthsShort(): string; + static weekdays(): string; + static weekdaysShort(): string; + static weekdaysMin(): string; + static localeData(key?: string): moment$LocaleData; + static duration(value: number|Object|string, unit?: string): moment$MomentDuration; + static isDuration(obj: any): bool; + static normalizeUnits(unit: string): string; + static invalid(object: any): moment$Moment; +} + +declare module 'moment' { + declare module.exports: Class; +} diff --git a/flow-typed/npm/react-native-blur_vx.x.x.js b/flow-typed/npm/react-native-blur_vx.x.x.js new file mode 100644 index 0000000..01ca136 --- /dev/null +++ b/flow-typed/npm/react-native-blur_vx.x.x.js @@ -0,0 +1,59 @@ +// flow-typed signature: 10c3a1ce4d744fff5fdcc743149d2954 +// flow-typed version: <>/react-native-blur_v^2.0.0/flow_v0.40.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'react-native-blur' + * + * 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 'react-native-blur' { + 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 'react-native-blur/src/BlurView.android' { + declare module.exports: any; +} + +declare module 'react-native-blur/src/BlurView.ios' { + declare module.exports: any; +} + +declare module 'react-native-blur/src/VibrancyView.android' { + declare module.exports: any; +} + +declare module 'react-native-blur/src/VibrancyView.ios' { + declare module.exports: any; +} + +// Filename aliases +declare module 'react-native-blur/index' { + declare module.exports: $Exports<'react-native-blur'>; +} +declare module 'react-native-blur/index.js' { + declare module.exports: $Exports<'react-native-blur'>; +} +declare module 'react-native-blur/src/BlurView.android.js' { + declare module.exports: $Exports<'react-native-blur/src/BlurView.android'>; +} +declare module 'react-native-blur/src/BlurView.ios.js' { + declare module.exports: $Exports<'react-native-blur/src/BlurView.ios'>; +} +declare module 'react-native-blur/src/VibrancyView.android.js' { + declare module.exports: $Exports<'react-native-blur/src/VibrancyView.android'>; +} +declare module 'react-native-blur/src/VibrancyView.ios.js' { + declare module.exports: $Exports<'react-native-blur/src/VibrancyView.ios'>; +} diff --git a/flow-typed/npm/react-native-code-push_vx.x.x.js b/flow-typed/npm/react-native-code-push_vx.x.x.js new file mode 100644 index 0000000..efce0f8 --- /dev/null +++ b/flow-typed/npm/react-native-code-push_vx.x.x.js @@ -0,0 +1,116 @@ +// flow-typed signature: 1e789c4ec12cc6d816ee40b2cc9194b9 +// flow-typed version: <>/react-native-code-push_v^1.17.0-beta/flow_v0.40.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'react-native-code-push' + * + * 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 'react-native-code-push' { + 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 'react-native-code-push/AlertAdapter' { + declare module.exports: any; +} + +declare module 'react-native-code-push/CodePush' { + declare module.exports: any; +} + +declare module 'react-native-code-push/gulpfile' { + declare module.exports: any; +} + +declare module 'react-native-code-push/logging' { + declare module.exports: any; +} + +declare module 'react-native-code-push/package-mixins' { + declare module.exports: any; +} + +declare module 'react-native-code-push/request-fetch-adapter' { + declare module.exports: any; +} + +declare module 'react-native-code-push/RestartManager' { + declare module.exports: any; +} + +declare module 'react-native-code-push/scripts/generateBundledResourcesHash' { + declare module.exports: any; +} + +declare module 'react-native-code-push/scripts/getFilesInFolder' { + declare module.exports: any; +} + +declare module 'react-native-code-push/scripts/postlink/android/postlink' { + declare module.exports: any; +} + +declare module 'react-native-code-push/scripts/postlink/ios/postlink' { + declare module.exports: any; +} + +declare module 'react-native-code-push/scripts/postlink/run' { + declare module.exports: any; +} + +declare module 'react-native-code-push/scripts/recordFilesBeforeBundleCommand' { + declare module.exports: any; +} + +// Filename aliases +declare module 'react-native-code-push/AlertAdapter.js' { + declare module.exports: $Exports<'react-native-code-push/AlertAdapter'>; +} +declare module 'react-native-code-push/CodePush.js' { + declare module.exports: $Exports<'react-native-code-push/CodePush'>; +} +declare module 'react-native-code-push/gulpfile.js' { + declare module.exports: $Exports<'react-native-code-push/gulpfile'>; +} +declare module 'react-native-code-push/logging.js' { + declare module.exports: $Exports<'react-native-code-push/logging'>; +} +declare module 'react-native-code-push/package-mixins.js' { + declare module.exports: $Exports<'react-native-code-push/package-mixins'>; +} +declare module 'react-native-code-push/request-fetch-adapter.js' { + declare module.exports: $Exports<'react-native-code-push/request-fetch-adapter'>; +} +declare module 'react-native-code-push/RestartManager.js' { + declare module.exports: $Exports<'react-native-code-push/RestartManager'>; +} +declare module 'react-native-code-push/scripts/generateBundledResourcesHash.js' { + declare module.exports: $Exports<'react-native-code-push/scripts/generateBundledResourcesHash'>; +} +declare module 'react-native-code-push/scripts/getFilesInFolder.js' { + declare module.exports: $Exports<'react-native-code-push/scripts/getFilesInFolder'>; +} +declare module 'react-native-code-push/scripts/postlink/android/postlink.js' { + declare module.exports: $Exports<'react-native-code-push/scripts/postlink/android/postlink'>; +} +declare module 'react-native-code-push/scripts/postlink/ios/postlink.js' { + declare module.exports: $Exports<'react-native-code-push/scripts/postlink/ios/postlink'>; +} +declare module 'react-native-code-push/scripts/postlink/run.js' { + declare module.exports: $Exports<'react-native-code-push/scripts/postlink/run'>; +} +declare module 'react-native-code-push/scripts/recordFilesBeforeBundleCommand.js' { + declare module.exports: $Exports<'react-native-code-push/scripts/recordFilesBeforeBundleCommand'>; +} diff --git a/flow-typed/npm/react-native-linear-gradient_vx.x.x.js b/flow-typed/npm/react-native-linear-gradient_vx.x.x.js new file mode 100644 index 0000000..11094e3 --- /dev/null +++ b/flow-typed/npm/react-native-linear-gradient_vx.x.x.js @@ -0,0 +1,74 @@ +// flow-typed signature: ce361e30db332a9fcfcabd78c7be4cfd +// flow-typed version: <>/react-native-linear-gradient_v^2.0.0/flow_v0.40.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'react-native-linear-gradient' + * + * 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 'react-native-linear-gradient' { + 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 'react-native-linear-gradient/Examples/AnimatedGradient/__tests__/index.android' { + declare module.exports: any; +} + +declare module 'react-native-linear-gradient/Examples/AnimatedGradient/__tests__/index.ios' { + declare module.exports: any; +} + +declare module 'react-native-linear-gradient/Examples/AnimatedGradient/index.android' { + declare module.exports: any; +} + +declare module 'react-native-linear-gradient/Examples/AnimatedGradient/index.ios' { + declare module.exports: any; +} + +declare module 'react-native-linear-gradient/Examples/AnimatedGradient/src/index' { + declare module.exports: any; +} + +declare module 'react-native-linear-gradient/index.android' { + declare module.exports: any; +} + +declare module 'react-native-linear-gradient/index.ios' { + declare module.exports: any; +} + +// Filename aliases +declare module 'react-native-linear-gradient/Examples/AnimatedGradient/__tests__/index.android.js' { + declare module.exports: $Exports<'react-native-linear-gradient/Examples/AnimatedGradient/__tests__/index.android'>; +} +declare module 'react-native-linear-gradient/Examples/AnimatedGradient/__tests__/index.ios.js' { + declare module.exports: $Exports<'react-native-linear-gradient/Examples/AnimatedGradient/__tests__/index.ios'>; +} +declare module 'react-native-linear-gradient/Examples/AnimatedGradient/index.android.js' { + declare module.exports: $Exports<'react-native-linear-gradient/Examples/AnimatedGradient/index.android'>; +} +declare module 'react-native-linear-gradient/Examples/AnimatedGradient/index.ios.js' { + declare module.exports: $Exports<'react-native-linear-gradient/Examples/AnimatedGradient/index.ios'>; +} +declare module 'react-native-linear-gradient/Examples/AnimatedGradient/src/index.js' { + declare module.exports: $Exports<'react-native-linear-gradient/Examples/AnimatedGradient/src/index'>; +} +declare module 'react-native-linear-gradient/index.android.js' { + declare module.exports: $Exports<'react-native-linear-gradient/index.android'>; +} +declare module 'react-native-linear-gradient/index.ios.js' { + declare module.exports: $Exports<'react-native-linear-gradient/index.ios'>; +} diff --git a/flow-typed/npm/react-native-maps_vx.x.x.js b/flow-typed/npm/react-native-maps_vx.x.x.js new file mode 100644 index 0000000..fc3bb57 --- /dev/null +++ b/flow-typed/npm/react-native-maps_vx.x.x.js @@ -0,0 +1,353 @@ +// flow-typed signature: ea1f8672584406cf7b37a509a6d73be4 +// flow-typed version: <>/react-native-maps_vairbnb/react-native-maps/flow_v0.40.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'react-native-maps' + * + * 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 'react-native-maps' { + 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 'react-native-maps/components/AnimatedRegion' { + declare module.exports: any; +} + +declare module 'react-native-maps/components/decorateMapComponent' { + declare module.exports: any; +} + +declare module 'react-native-maps/components/MapCallout' { + declare module.exports: any; +} + +declare module 'react-native-maps/components/MapCircle' { + declare module.exports: any; +} + +declare module 'react-native-maps/components/MapMarker' { + declare module.exports: any; +} + +declare module 'react-native-maps/components/MapPolygon' { + declare module.exports: any; +} + +declare module 'react-native-maps/components/MapPolyline' { + declare module.exports: any; +} + +declare module 'react-native-maps/components/MapUrlTile' { + declare module.exports: any; +} + +declare module 'react-native-maps/components/MapView' { + declare module.exports: any; +} + +declare module 'react-native-maps/components/ProviderConstants' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/App' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/AnimatedMarkers' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/AnimatedPriceMarker' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/AnimatedViews' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/CachedMap' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/Callouts' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/CustomCallout' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/CustomMarkers' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/CustomOverlay' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/CustomOverlayXMarksTheSpot' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/CustomTiles' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/DefaultMarkers' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/DisplayLatLng' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/DraggableMarkers' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/EventListener' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/FitToCoordinates' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/FitToSuppliedMarkers' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/LegalLabel' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/LiteMapView' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/LoadingMap' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/MapStyle' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/MarkerTypes' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/Overlays' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/PanController' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/PolygonCreator' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/PolylineCreator' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/PriceMarker' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/SetNativePropsOverlays' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/StaticMap' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/TakeSnapshot' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/ViewsAsMarkers' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/examples/ZIndexMarkers' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/index.android' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/index.ios' { + declare module.exports: any; +} + +declare module 'react-native-maps/example/scripts/watch-and-copy-src' { + declare module.exports: any; +} + +declare module 'react-native-maps/scripts/update-version' { + declare module.exports: any; +} + +// Filename aliases +declare module 'react-native-maps/components/AnimatedRegion.js' { + declare module.exports: $Exports<'react-native-maps/components/AnimatedRegion'>; +} +declare module 'react-native-maps/components/decorateMapComponent.js' { + declare module.exports: $Exports<'react-native-maps/components/decorateMapComponent'>; +} +declare module 'react-native-maps/components/MapCallout.js' { + declare module.exports: $Exports<'react-native-maps/components/MapCallout'>; +} +declare module 'react-native-maps/components/MapCircle.js' { + declare module.exports: $Exports<'react-native-maps/components/MapCircle'>; +} +declare module 'react-native-maps/components/MapMarker.js' { + declare module.exports: $Exports<'react-native-maps/components/MapMarker'>; +} +declare module 'react-native-maps/components/MapPolygon.js' { + declare module.exports: $Exports<'react-native-maps/components/MapPolygon'>; +} +declare module 'react-native-maps/components/MapPolyline.js' { + declare module.exports: $Exports<'react-native-maps/components/MapPolyline'>; +} +declare module 'react-native-maps/components/MapUrlTile.js' { + declare module.exports: $Exports<'react-native-maps/components/MapUrlTile'>; +} +declare module 'react-native-maps/components/MapView.js' { + declare module.exports: $Exports<'react-native-maps/components/MapView'>; +} +declare module 'react-native-maps/components/ProviderConstants.js' { + declare module.exports: $Exports<'react-native-maps/components/ProviderConstants'>; +} +declare module 'react-native-maps/example/App.js' { + declare module.exports: $Exports<'react-native-maps/example/App'>; +} +declare module 'react-native-maps/example/examples/AnimatedMarkers.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/AnimatedMarkers'>; +} +declare module 'react-native-maps/example/examples/AnimatedPriceMarker.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/AnimatedPriceMarker'>; +} +declare module 'react-native-maps/example/examples/AnimatedViews.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/AnimatedViews'>; +} +declare module 'react-native-maps/example/examples/CachedMap.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/CachedMap'>; +} +declare module 'react-native-maps/example/examples/Callouts.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/Callouts'>; +} +declare module 'react-native-maps/example/examples/CustomCallout.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/CustomCallout'>; +} +declare module 'react-native-maps/example/examples/CustomMarkers.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/CustomMarkers'>; +} +declare module 'react-native-maps/example/examples/CustomOverlay.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/CustomOverlay'>; +} +declare module 'react-native-maps/example/examples/CustomOverlayXMarksTheSpot.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/CustomOverlayXMarksTheSpot'>; +} +declare module 'react-native-maps/example/examples/CustomTiles.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/CustomTiles'>; +} +declare module 'react-native-maps/example/examples/DefaultMarkers.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/DefaultMarkers'>; +} +declare module 'react-native-maps/example/examples/DisplayLatLng.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/DisplayLatLng'>; +} +declare module 'react-native-maps/example/examples/DraggableMarkers.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/DraggableMarkers'>; +} +declare module 'react-native-maps/example/examples/EventListener.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/EventListener'>; +} +declare module 'react-native-maps/example/examples/FitToCoordinates.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/FitToCoordinates'>; +} +declare module 'react-native-maps/example/examples/FitToSuppliedMarkers.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/FitToSuppliedMarkers'>; +} +declare module 'react-native-maps/example/examples/LegalLabel.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/LegalLabel'>; +} +declare module 'react-native-maps/example/examples/LiteMapView.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/LiteMapView'>; +} +declare module 'react-native-maps/example/examples/LoadingMap.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/LoadingMap'>; +} +declare module 'react-native-maps/example/examples/MapStyle.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/MapStyle'>; +} +declare module 'react-native-maps/example/examples/MarkerTypes.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/MarkerTypes'>; +} +declare module 'react-native-maps/example/examples/Overlays.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/Overlays'>; +} +declare module 'react-native-maps/example/examples/PanController.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/PanController'>; +} +declare module 'react-native-maps/example/examples/PolygonCreator.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/PolygonCreator'>; +} +declare module 'react-native-maps/example/examples/PolylineCreator.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/PolylineCreator'>; +} +declare module 'react-native-maps/example/examples/PriceMarker.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/PriceMarker'>; +} +declare module 'react-native-maps/example/examples/SetNativePropsOverlays.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/SetNativePropsOverlays'>; +} +declare module 'react-native-maps/example/examples/StaticMap.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/StaticMap'>; +} +declare module 'react-native-maps/example/examples/TakeSnapshot.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/TakeSnapshot'>; +} +declare module 'react-native-maps/example/examples/ViewsAsMarkers.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/ViewsAsMarkers'>; +} +declare module 'react-native-maps/example/examples/ZIndexMarkers.js' { + declare module.exports: $Exports<'react-native-maps/example/examples/ZIndexMarkers'>; +} +declare module 'react-native-maps/example/index.android.js' { + declare module.exports: $Exports<'react-native-maps/example/index.android'>; +} +declare module 'react-native-maps/example/index.ios.js' { + declare module.exports: $Exports<'react-native-maps/example/index.ios'>; +} +declare module 'react-native-maps/example/scripts/watch-and-copy-src.js' { + declare module.exports: $Exports<'react-native-maps/example/scripts/watch-and-copy-src'>; +} +declare module 'react-native-maps/index' { + declare module.exports: $Exports<'react-native-maps'>; +} +declare module 'react-native-maps/index.js' { + declare module.exports: $Exports<'react-native-maps'>; +} +declare module 'react-native-maps/scripts/update-version.js' { + declare module.exports: $Exports<'react-native-maps/scripts/update-version'>; +} diff --git a/flow-typed/npm/react-native-smart-splash-screen_vx.x.x.js b/flow-typed/npm/react-native-smart-splash-screen_vx.x.x.js new file mode 100644 index 0000000..7a45e17 --- /dev/null +++ b/flow-typed/npm/react-native-smart-splash-screen_vx.x.x.js @@ -0,0 +1,32 @@ +// flow-typed signature: 8fa1ff9db9f800dc014fa9ca61e23102 +// flow-typed version: <>/react-native-smart-splash-screen_v^2.3.3/flow_v0.40.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'react-native-smart-splash-screen' + * + * 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 'react-native-smart-splash-screen' { + 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 'react-native-smart-splash-screen/SplashScreen' { + declare module.exports: any; +} + +// Filename aliases +declare module 'react-native-smart-splash-screen/SplashScreen.js' { + declare module.exports: $Exports<'react-native-smart-splash-screen/SplashScreen'>; +} diff --git a/flow-typed/npm/react-native-vector-icons_vx.x.x.js b/flow-typed/npm/react-native-vector-icons_vx.x.x.js new file mode 100644 index 0000000..27c8941 --- /dev/null +++ b/flow-typed/npm/react-native-vector-icons_vx.x.x.js @@ -0,0 +1,185 @@ +// flow-typed signature: d0c30e9bce3665277ba8239261d43cbe +// flow-typed version: <>/react-native-vector-icons_v^4.0.0/flow_v0.40.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'react-native-vector-icons' + * + * 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 'react-native-vector-icons' { + 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 'react-native-vector-icons/Entypo' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/EvilIcons' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/FontAwesome' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/Foundation' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/generate-icon' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/generate-material-icons' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/Ionicons' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/lib/create-icon-set-from-fontello' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/lib/create-icon-set-from-icomoon' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/lib/create-icon-set' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/lib/generate-icon-set-from-css' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/lib/icon-button' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/lib/react-native' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/lib/react-native.osx' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/lib/tab-bar-item-ios' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/lib/toolbar-android' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/MaterialCommunityIcons' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/MaterialIcons' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/Octicons' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/RNIMigration' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/SimpleLineIcons' { + declare module.exports: any; +} + +declare module 'react-native-vector-icons/Zocial' { + declare module.exports: any; +} + +// Filename aliases +declare module 'react-native-vector-icons/Entypo.js' { + declare module.exports: $Exports<'react-native-vector-icons/Entypo'>; +} +declare module 'react-native-vector-icons/EvilIcons.js' { + declare module.exports: $Exports<'react-native-vector-icons/EvilIcons'>; +} +declare module 'react-native-vector-icons/FontAwesome.js' { + declare module.exports: $Exports<'react-native-vector-icons/FontAwesome'>; +} +declare module 'react-native-vector-icons/Foundation.js' { + declare module.exports: $Exports<'react-native-vector-icons/Foundation'>; +} +declare module 'react-native-vector-icons/generate-icon.js' { + declare module.exports: $Exports<'react-native-vector-icons/generate-icon'>; +} +declare module 'react-native-vector-icons/generate-material-icons.js' { + declare module.exports: $Exports<'react-native-vector-icons/generate-material-icons'>; +} +declare module 'react-native-vector-icons/index' { + declare module.exports: $Exports<'react-native-vector-icons'>; +} +declare module 'react-native-vector-icons/index.js' { + declare module.exports: $Exports<'react-native-vector-icons'>; +} +declare module 'react-native-vector-icons/Ionicons.js' { + declare module.exports: $Exports<'react-native-vector-icons/Ionicons'>; +} +declare module 'react-native-vector-icons/lib/create-icon-set-from-fontello.js' { + declare module.exports: $Exports<'react-native-vector-icons/lib/create-icon-set-from-fontello'>; +} +declare module 'react-native-vector-icons/lib/create-icon-set-from-icomoon.js' { + declare module.exports: $Exports<'react-native-vector-icons/lib/create-icon-set-from-icomoon'>; +} +declare module 'react-native-vector-icons/lib/create-icon-set.js' { + declare module.exports: $Exports<'react-native-vector-icons/lib/create-icon-set'>; +} +declare module 'react-native-vector-icons/lib/generate-icon-set-from-css.js' { + declare module.exports: $Exports<'react-native-vector-icons/lib/generate-icon-set-from-css'>; +} +declare module 'react-native-vector-icons/lib/icon-button.js' { + declare module.exports: $Exports<'react-native-vector-icons/lib/icon-button'>; +} +declare module 'react-native-vector-icons/lib/react-native.js' { + declare module.exports: $Exports<'react-native-vector-icons/lib/react-native'>; +} +declare module 'react-native-vector-icons/lib/react-native.osx.js' { + declare module.exports: $Exports<'react-native-vector-icons/lib/react-native.osx'>; +} +declare module 'react-native-vector-icons/lib/tab-bar-item-ios.js' { + declare module.exports: $Exports<'react-native-vector-icons/lib/tab-bar-item-ios'>; +} +declare module 'react-native-vector-icons/lib/toolbar-android.js' { + declare module.exports: $Exports<'react-native-vector-icons/lib/toolbar-android'>; +} +declare module 'react-native-vector-icons/MaterialCommunityIcons.js' { + declare module.exports: $Exports<'react-native-vector-icons/MaterialCommunityIcons'>; +} +declare module 'react-native-vector-icons/MaterialIcons.js' { + declare module.exports: $Exports<'react-native-vector-icons/MaterialIcons'>; +} +declare module 'react-native-vector-icons/Octicons.js' { + declare module.exports: $Exports<'react-native-vector-icons/Octicons'>; +} +declare module 'react-native-vector-icons/RNIMigration.js' { + declare module.exports: $Exports<'react-native-vector-icons/RNIMigration'>; +} +declare module 'react-native-vector-icons/SimpleLineIcons.js' { + declare module.exports: $Exports<'react-native-vector-icons/SimpleLineIcons'>; +} +declare module 'react-native-vector-icons/Zocial.js' { + declare module.exports: $Exports<'react-native-vector-icons/Zocial'>; +} diff --git a/flow-typed/npm/react-test-renderer_vx.x.x.js b/flow-typed/npm/react-test-renderer_vx.x.x.js new file mode 100644 index 0000000..c15017b --- /dev/null +++ b/flow-typed/npm/react-test-renderer_vx.x.x.js @@ -0,0 +1,598 @@ +// flow-typed signature: 20eaca40eca6479b3b2c7b8f6563cfc2 +// flow-typed version: <>/react-test-renderer_v15.4.2/flow_v0.40.0 + +/** + * This is an autogenerated libdef stub for: + * + * 'react-test-renderer' + * + * 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 'react-test-renderer' { + 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 'react-test-renderer/lib/accumulate' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/accumulateInto' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/adler32' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/CallbackQueue' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/canDefineProperty' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/checkReactTypeSpec' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/deprecated' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/EventConstants' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/EventPluginHub' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/EventPluginRegistry' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/EventPluginUtils' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/EventPropagators' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/flattenChildren' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/forEachAccumulated' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/getHostComponentFromComposite' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/getIteratorFn' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/getNextDebugID' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/instantiateReactComponent' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/isTextInputElement' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/KeyEscapeUtils' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/PluginModuleType' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/PooledClass' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactChildFiber' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactChildReconciler' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactComponentEnvironment' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactCompositeComponent' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactCoroutine' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactDebugTool' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactDefaultBatchingStrategy' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactElementSymbol' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactEmptyComponent' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactErrorUtils' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactEventEmitterMixin' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactFeatureFlags' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactFiber' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactFiberBeginWork' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactFiberCommitWork' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactFiberCompleteWork' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactFiberReconciler' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactFiberRoot' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactFiberScheduler' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactFiberUpdateQueue' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactHostComponent' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactHostOperationHistoryHook' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactInstanceMap' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactInstanceType' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactInstrumentation' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactInvalidSetStateWarningHook' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactMultiChild' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactMultiChildUpdateTypes' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactNodeTypes' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactOwner' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactPerf' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactPriorityLevel' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/reactProdInvariant' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactPropTypeLocationNames' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactPropTypeLocations' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactPropTypesSecret' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactReconciler' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactRef' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactReifiedYield' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactSimpleEmptyComponent' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactSyntheticEventType' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactTestEmptyComponent' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactTestMount' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactTestReconcileTransaction' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactTestRenderer' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactTestTextComponent' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactTypeOfWork' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactTypes' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactUpdateQueue' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactUpdates' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ReactVersion' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ResponderEventPlugin' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ResponderSyntheticEvent' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/ResponderTouchHistoryStore' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/shouldUpdateReactComponent' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/SyntheticEvent' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/TouchHistoryMath' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/Transaction' { + declare module.exports: any; +} + +declare module 'react-test-renderer/lib/traverseAllChildren' { + declare module.exports: any; +} + +// Filename aliases +declare module 'react-test-renderer/index' { + declare module.exports: $Exports<'react-test-renderer'>; +} +declare module 'react-test-renderer/index.js' { + declare module.exports: $Exports<'react-test-renderer'>; +} +declare module 'react-test-renderer/lib/accumulate.js' { + declare module.exports: $Exports<'react-test-renderer/lib/accumulate'>; +} +declare module 'react-test-renderer/lib/accumulateInto.js' { + declare module.exports: $Exports<'react-test-renderer/lib/accumulateInto'>; +} +declare module 'react-test-renderer/lib/adler32.js' { + declare module.exports: $Exports<'react-test-renderer/lib/adler32'>; +} +declare module 'react-test-renderer/lib/CallbackQueue.js' { + declare module.exports: $Exports<'react-test-renderer/lib/CallbackQueue'>; +} +declare module 'react-test-renderer/lib/canDefineProperty.js' { + declare module.exports: $Exports<'react-test-renderer/lib/canDefineProperty'>; +} +declare module 'react-test-renderer/lib/checkReactTypeSpec.js' { + declare module.exports: $Exports<'react-test-renderer/lib/checkReactTypeSpec'>; +} +declare module 'react-test-renderer/lib/deprecated.js' { + declare module.exports: $Exports<'react-test-renderer/lib/deprecated'>; +} +declare module 'react-test-renderer/lib/EventConstants.js' { + declare module.exports: $Exports<'react-test-renderer/lib/EventConstants'>; +} +declare module 'react-test-renderer/lib/EventPluginHub.js' { + declare module.exports: $Exports<'react-test-renderer/lib/EventPluginHub'>; +} +declare module 'react-test-renderer/lib/EventPluginRegistry.js' { + declare module.exports: $Exports<'react-test-renderer/lib/EventPluginRegistry'>; +} +declare module 'react-test-renderer/lib/EventPluginUtils.js' { + declare module.exports: $Exports<'react-test-renderer/lib/EventPluginUtils'>; +} +declare module 'react-test-renderer/lib/EventPropagators.js' { + declare module.exports: $Exports<'react-test-renderer/lib/EventPropagators'>; +} +declare module 'react-test-renderer/lib/flattenChildren.js' { + declare module.exports: $Exports<'react-test-renderer/lib/flattenChildren'>; +} +declare module 'react-test-renderer/lib/forEachAccumulated.js' { + declare module.exports: $Exports<'react-test-renderer/lib/forEachAccumulated'>; +} +declare module 'react-test-renderer/lib/getHostComponentFromComposite.js' { + declare module.exports: $Exports<'react-test-renderer/lib/getHostComponentFromComposite'>; +} +declare module 'react-test-renderer/lib/getIteratorFn.js' { + declare module.exports: $Exports<'react-test-renderer/lib/getIteratorFn'>; +} +declare module 'react-test-renderer/lib/getNextDebugID.js' { + declare module.exports: $Exports<'react-test-renderer/lib/getNextDebugID'>; +} +declare module 'react-test-renderer/lib/instantiateReactComponent.js' { + declare module.exports: $Exports<'react-test-renderer/lib/instantiateReactComponent'>; +} +declare module 'react-test-renderer/lib/isTextInputElement.js' { + declare module.exports: $Exports<'react-test-renderer/lib/isTextInputElement'>; +} +declare module 'react-test-renderer/lib/KeyEscapeUtils.js' { + declare module.exports: $Exports<'react-test-renderer/lib/KeyEscapeUtils'>; +} +declare module 'react-test-renderer/lib/PluginModuleType.js' { + declare module.exports: $Exports<'react-test-renderer/lib/PluginModuleType'>; +} +declare module 'react-test-renderer/lib/PooledClass.js' { + declare module.exports: $Exports<'react-test-renderer/lib/PooledClass'>; +} +declare module 'react-test-renderer/lib/ReactChildFiber.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactChildFiber'>; +} +declare module 'react-test-renderer/lib/ReactChildReconciler.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactChildReconciler'>; +} +declare module 'react-test-renderer/lib/ReactComponentEnvironment.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactComponentEnvironment'>; +} +declare module 'react-test-renderer/lib/ReactCompositeComponent.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactCompositeComponent'>; +} +declare module 'react-test-renderer/lib/ReactCoroutine.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactCoroutine'>; +} +declare module 'react-test-renderer/lib/ReactDebugTool.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactDebugTool'>; +} +declare module 'react-test-renderer/lib/ReactDefaultBatchingStrategy.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactDefaultBatchingStrategy'>; +} +declare module 'react-test-renderer/lib/ReactElementSymbol.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactElementSymbol'>; +} +declare module 'react-test-renderer/lib/ReactEmptyComponent.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactEmptyComponent'>; +} +declare module 'react-test-renderer/lib/ReactErrorUtils.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactErrorUtils'>; +} +declare module 'react-test-renderer/lib/ReactEventEmitterMixin.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactEventEmitterMixin'>; +} +declare module 'react-test-renderer/lib/ReactFeatureFlags.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactFeatureFlags'>; +} +declare module 'react-test-renderer/lib/ReactFiber.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactFiber'>; +} +declare module 'react-test-renderer/lib/ReactFiberBeginWork.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactFiberBeginWork'>; +} +declare module 'react-test-renderer/lib/ReactFiberCommitWork.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactFiberCommitWork'>; +} +declare module 'react-test-renderer/lib/ReactFiberCompleteWork.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactFiberCompleteWork'>; +} +declare module 'react-test-renderer/lib/ReactFiberReconciler.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactFiberReconciler'>; +} +declare module 'react-test-renderer/lib/ReactFiberRoot.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactFiberRoot'>; +} +declare module 'react-test-renderer/lib/ReactFiberScheduler.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactFiberScheduler'>; +} +declare module 'react-test-renderer/lib/ReactFiberUpdateQueue.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactFiberUpdateQueue'>; +} +declare module 'react-test-renderer/lib/ReactHostComponent.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactHostComponent'>; +} +declare module 'react-test-renderer/lib/ReactHostOperationHistoryHook.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactHostOperationHistoryHook'>; +} +declare module 'react-test-renderer/lib/ReactInstanceMap.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactInstanceMap'>; +} +declare module 'react-test-renderer/lib/ReactInstanceType.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactInstanceType'>; +} +declare module 'react-test-renderer/lib/ReactInstrumentation.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactInstrumentation'>; +} +declare module 'react-test-renderer/lib/ReactInvalidSetStateWarningHook.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactInvalidSetStateWarningHook'>; +} +declare module 'react-test-renderer/lib/ReactMultiChild.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactMultiChild'>; +} +declare module 'react-test-renderer/lib/ReactMultiChildUpdateTypes.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactMultiChildUpdateTypes'>; +} +declare module 'react-test-renderer/lib/ReactNodeTypes.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactNodeTypes'>; +} +declare module 'react-test-renderer/lib/ReactOwner.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactOwner'>; +} +declare module 'react-test-renderer/lib/ReactPerf.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactPerf'>; +} +declare module 'react-test-renderer/lib/ReactPriorityLevel.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactPriorityLevel'>; +} +declare module 'react-test-renderer/lib/reactProdInvariant.js' { + declare module.exports: $Exports<'react-test-renderer/lib/reactProdInvariant'>; +} +declare module 'react-test-renderer/lib/ReactPropTypeLocationNames.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactPropTypeLocationNames'>; +} +declare module 'react-test-renderer/lib/ReactPropTypeLocations.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactPropTypeLocations'>; +} +declare module 'react-test-renderer/lib/ReactPropTypesSecret.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactPropTypesSecret'>; +} +declare module 'react-test-renderer/lib/ReactReconciler.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactReconciler'>; +} +declare module 'react-test-renderer/lib/ReactRef.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactRef'>; +} +declare module 'react-test-renderer/lib/ReactReifiedYield.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactReifiedYield'>; +} +declare module 'react-test-renderer/lib/ReactSimpleEmptyComponent.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactSimpleEmptyComponent'>; +} +declare module 'react-test-renderer/lib/ReactSyntheticEventType.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactSyntheticEventType'>; +} +declare module 'react-test-renderer/lib/ReactTestEmptyComponent.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactTestEmptyComponent'>; +} +declare module 'react-test-renderer/lib/ReactTestMount.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactTestMount'>; +} +declare module 'react-test-renderer/lib/ReactTestReconcileTransaction.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactTestReconcileTransaction'>; +} +declare module 'react-test-renderer/lib/ReactTestRenderer.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactTestRenderer'>; +} +declare module 'react-test-renderer/lib/ReactTestTextComponent.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactTestTextComponent'>; +} +declare module 'react-test-renderer/lib/ReactTypeOfWork.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactTypeOfWork'>; +} +declare module 'react-test-renderer/lib/ReactTypes.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactTypes'>; +} +declare module 'react-test-renderer/lib/ReactUpdateQueue.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactUpdateQueue'>; +} +declare module 'react-test-renderer/lib/ReactUpdates.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactUpdates'>; +} +declare module 'react-test-renderer/lib/ReactVersion.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ReactVersion'>; +} +declare module 'react-test-renderer/lib/ResponderEventPlugin.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ResponderEventPlugin'>; +} +declare module 'react-test-renderer/lib/ResponderSyntheticEvent.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ResponderSyntheticEvent'>; +} +declare module 'react-test-renderer/lib/ResponderTouchHistoryStore.js' { + declare module.exports: $Exports<'react-test-renderer/lib/ResponderTouchHistoryStore'>; +} +declare module 'react-test-renderer/lib/shouldUpdateReactComponent.js' { + declare module.exports: $Exports<'react-test-renderer/lib/shouldUpdateReactComponent'>; +} +declare module 'react-test-renderer/lib/SyntheticEvent.js' { + declare module.exports: $Exports<'react-test-renderer/lib/SyntheticEvent'>; +} +declare module 'react-test-renderer/lib/TouchHistoryMath.js' { + declare module.exports: $Exports<'react-test-renderer/lib/TouchHistoryMath'>; +} +declare module 'react-test-renderer/lib/Transaction.js' { + declare module.exports: $Exports<'react-test-renderer/lib/Transaction'>; +} +declare module 'react-test-renderer/lib/traverseAllChildren.js' { + declare module.exports: $Exports<'react-test-renderer/lib/traverseAllChildren'>; +} diff --git a/flow-typed/react-native-code-push.js b/flow-typed/react-native-code-push.js new file mode 100644 index 0000000..282c595 --- /dev/null +++ b/flow-typed/react-native-code-push.js @@ -0,0 +1,3 @@ +declare module 'react-native-code-push' { + declare export default any; +} diff --git a/index.android.js b/index.android.js index 67ddca0..af7365a 100644 --- a/index.android.js +++ b/index.android.js @@ -1,3 +1,4 @@ +// @flow import ReactConf2017 from './app/ReactConf2017'; import { AppRegistry } from 'react-native'; diff --git a/index.ios.js b/index.ios.js index 67ddca0..af7365a 100644 --- a/index.ios.js +++ b/index.ios.js @@ -1,3 +1,4 @@ +// @flow import ReactConf2017 from './app/ReactConf2017'; import { AppRegistry } from 'react-native'; diff --git a/package.json b/package.json index 1379a0a..0d9aabe 100644 --- a/package.json +++ b/package.json @@ -6,13 +6,14 @@ "start": "node_modules/react-native/packager/packager.sh", "lint": "eslint .", "lint-fix": "npm run lint -- --fix", + "flow": "flow", "test": "jest", "update-snapshots": "jest -u" }, "dependencies": { "moment": "^2.17.1", "react": "15.4.2", - "react-native": "^0.41.2", + "react-native": "^0.42.0", "react-native-blur": "^2.0.0", "react-native-code-push": "^1.17.0-beta", "react-native-linear-gradient": "^2.0.0", @@ -27,6 +28,8 @@ "eslint-config-keystone": "^3.0.0", "eslint-config-keystone-react": "^1.0.0", "eslint-plugin-react": "^6.10.0", + "flow-bin": "^0.39.0", + "flow-typed": "^2.0.0", "jest": "18.1.0", "mockdate": "^2.0.1", "react-test-renderer": "15.4.2"