// flow-typed signature: ca2c7e2fdb0f92c7433ef9735670e232
// flow-typed version: <<STUB>>/eslint-plugin-flowtype_v^2.39.1/flow_v0.59.0

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// Filename aliases
declare module 'eslint-plugin-flowtype/bin/readmeAssertions.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/bin/readmeAssertions'>;
}
declare module 'eslint-plugin-flowtype/dist/index.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/index'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/booleanStyle.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/booleanStyle'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/defineFlowType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/defineFlowType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/delimiterDangle.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/delimiterDangle'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/genericSpacing.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/genericSpacing'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noDupeKeys.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noDupeKeys'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noMutableArray.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noMutableArray'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noPrimitiveConstructorTypes.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noPrimitiveConstructorTypes'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noTypesMissingFileAnnotation.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noTypesMissingFileAnnotation'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noUnusedExpressions.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noUnusedExpressions'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/noWeakTypes.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/noWeakTypes'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/objectTypeDelimiter.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/objectTypeDelimiter'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/requireParameterType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireParameterType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/requireReturnType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireReturnType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/requireValidFileAnnotation.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireValidFileAnnotation'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/requireVariableType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/requireVariableType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/semi.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/semi'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/sortKeys.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/sortKeys'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/spaceAfterTypeColon.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/spaceAfterTypeColon'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/spaceBeforeGenericBracket.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/spaceBeforeGenericBracket'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/spaceBeforeTypeColon.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/spaceBeforeTypeColon'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateFunctions.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateFunctions'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeIndexer.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeIndexer'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeProperty.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateObjectTypeProperty'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateReturnType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateReturnType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypeCastExpression.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypeCastExpression'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypical.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/evaluateTypical'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/index.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/index'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeColonSpacing/reporter.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeColonSpacing/reporter'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/typeIdMatch.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/typeIdMatch'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/unionIntersectionSpacing.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/unionIntersectionSpacing'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/useFlowType.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/useFlowType'>;
}
declare module 'eslint-plugin-flowtype/dist/rules/validSyntax.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/rules/validSyntax'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/checkFlowFileAnnotation.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/checkFlowFileAnnotation'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/fuzzyStringMatch.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/fuzzyStringMatch'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/getParameterName.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/getParameterName'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/getTokenAfterParens.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/getTokenAfterParens'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/getTokenBeforeParens.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/getTokenBeforeParens'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/index.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/index'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/isFlowFile.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/isFlowFile'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/isFlowFileAnnotation.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/isFlowFileAnnotation'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/iterateFunctionNodes.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/iterateFunctionNodes'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/quoteName.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/quoteName'>;
}
declare module 'eslint-plugin-flowtype/dist/utilities/spacingFixers.js' {
  declare module.exports: $Exports<'eslint-plugin-flowtype/dist/utilities/spacingFixers'>;
}
