// flow-typed signature: af5fa14bde3c28148511b01992c981bd
// flow-typed version: <<STUB>>/eslint-plugin-flowtype_v^4.6.0/flow_v0.110.1

/**
 * This is an autogenerated libdef stub for:
 *
 *   'eslint-plugin-flowtype'
 *
 * Fill this stub out by replacing all the `any` types.
 *
 * Once filled out, we encourage you to share your work with the
 * community by sending a pull request to:
 * https://github.com/flowtype/flow-typed
 */

declare module 'eslint-plugin-flowtype' {
  declare module.exports: any;
}

/**
 * We include stubs for each file inside this npm package in case you need to
 * require those files directly. Feel free to delete any files that aren't
 * needed.
 */
declare module 'eslint-plugin-flowtype/dist/bin/addAssertions' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/bin/checkDocs' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/bin/checkTests' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/bin/utilities' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/arrayStyle' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/arrayStyle/isSimpleType' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/arrayStyle/needWrap' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/arrayStyleComplexType' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/arrayStyleSimpleType' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/arrowParens' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/booleanStyle' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/defineFlowType' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/delimiterDangle' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/genericSpacing' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/newlineAfterFlowAnnotation' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/noDupeKeys' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/noExistentialType' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/noFlowFixMeComments' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/noMixed' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/noMutableArray' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/noPrimitiveConstructorTypes' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/noTypesMissingFileAnnotation' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/noUnusedExpressions' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/noWeakTypes' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/objectTypeDelimiter' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/requireCompoundTypeAlias' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/requireExactType' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/requireIndexerName' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/requireInexactType' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/requireParameterType' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/requireReadonlyReactProps' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/requireReturnType' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/requireTypesAtTop' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/requireValidFileAnnotation' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/requireVariableType' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/semi' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/sortKeys' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/spaceAfterTypeColon' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/spaceBeforeGenericBracket' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/spaceBeforeTypeColon' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/spreadExactType' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateFunctions' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeIndexer' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeProperty' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateReturnType' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypeCastExpression' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypical' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateVariables' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/reporter' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/typeIdMatch' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/typeImportStyle' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/unionIntersectionSpacing' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/useFlowType' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/rules/validSyntax' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/utilities/checkFlowFileAnnotation' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/utilities/fuzzyStringMatch' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/utilities/getParameterName' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/utilities/getTokenAfterParens' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/utilities/getTokenBeforeParens' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/utilities' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/utilities/isFlowFile' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/utilities/isFlowFileAnnotation' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/utilities/iterateFunctionNodes' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/utilities/quoteName' {
  declare module.exports: any;
}

declare module 'eslint-plugin-flowtype/dist/utilities/spacingFixers' {
  declare module.exports: any;
}

// Filename aliases
declare module 'eslint-plugin-flowtype/dist/bin/addAssertions.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/bin/addAssertions'>;
}
declare module 'eslint-plugin-flowtype/dist/bin/checkDocs.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/bin/checkDocs'>;
}
declare module 'eslint-plugin-flowtype/dist/bin/checkTests.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/bin/checkTests'>;
}
declare module 'eslint-plugin-flowtype/dist/bin/utilities.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/bin/utilities'>;
}
declare module 'eslint-plugin-flowtype/dist/index' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist'>;
}
declare module 'eslint-plugin-flowtype/dist/index.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/arrayStyle/index' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/arrayStyle'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/arrayStyle/index.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/arrayStyle'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/arrayStyle/isSimpleType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/arrayStyle/isSimpleType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/arrayStyle/needWrap.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/arrayStyle/needWrap'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/arrayStyleComplexType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/arrayStyleComplexType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/arrayStyleSimpleType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/arrayStyleSimpleType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/arrowParens.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/arrowParens'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/booleanStyle.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/booleanStyle'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/defineFlowType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/defineFlowType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/delimiterDangle.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/delimiterDangle'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/genericSpacing.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/genericSpacing'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/newlineAfterFlowAnnotation.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/newlineAfterFlowAnnotation'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noDupeKeys.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noDupeKeys'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noExistentialType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noExistentialType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noFlowFixMeComments.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noFlowFixMeComments'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noMixed.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noMixed'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noMutableArray.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noMutableArray'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noPrimitiveConstructorTypes.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noPrimitiveConstructorTypes'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noTypesMissingFileAnnotation.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noTypesMissingFileAnnotation'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noUnusedExpressions.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noUnusedExpressions'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noWeakTypes.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noWeakTypes'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/objectTypeDelimiter.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/objectTypeDelimiter'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/requireCompoundTypeAlias.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireCompoundTypeAlias'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/requireExactType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireExactType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/requireIndexerName.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireIndexerName'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/requireInexactType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireInexactType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/requireParameterType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireParameterType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/requireReadonlyReactProps.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireReadonlyReactProps'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/requireReturnType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireReturnType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/requireTypesAtTop.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireTypesAtTop'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/requireValidFileAnnotation.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireValidFileAnnotation'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/requireVariableType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireVariableType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/semi.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/semi'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/sortKeys.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/sortKeys'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/spaceAfterTypeColon.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/spaceAfterTypeColon'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/spaceBeforeGenericBracket.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/spaceBeforeGenericBracket'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/spaceBeforeTypeColon.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/spaceBeforeTypeColon'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/spreadExactType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/spreadExactType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateFunctions.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateFunctions'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeIndexer.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeIndexer'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeProperty.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeProperty'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateReturnType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateReturnType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypeCastExpression.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypeCastExpression'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypical.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypical'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateVariables.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateVariables'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/index' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/index.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/reporter.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/reporter'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeIdMatch.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeIdMatch'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeImportStyle.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeImportStyle'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/unionIntersectionSpacing.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/unionIntersectionSpacing'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/useFlowType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/useFlowType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/validSyntax.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/validSyntax'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/checkFlowFileAnnotation.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/checkFlowFileAnnotation'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/fuzzyStringMatch.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/fuzzyStringMatch'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/getParameterName.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/getParameterName'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/getTokenAfterParens.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/getTokenAfterParens'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/getTokenBeforeParens.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/getTokenBeforeParens'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/index' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/index.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/isFlowFile.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/isFlowFile'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/isFlowFileAnnotation.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/isFlowFileAnnotation'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/iterateFunctionNodes.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/iterateFunctionNodes'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/quoteName.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/quoteName'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/spacingFixers.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/spacingFixers'>;
}
