diff --git a/flow/prop-types.js b/flow/prop-types.js new file mode 100644 index 000000000..13f7a65d5 --- /dev/null +++ b/flow/prop-types.js @@ -0,0 +1,46 @@ +/** + * Copyright (c) 2015-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + * + * @flow + * @nolint + */ + +// TODO (bvaughn) Remove this file once flowtype/flow-typed/pull/773 is merged + +type $npm$propTypes$ReactPropsCheckType = ( + props: any, + propName: string, + componentName: string, + href?: string +) => ?Error; + +declare module 'prop-types' { + declare var array: React$PropType$Primitive>; + declare var bool: React$PropType$Primitive; + declare var func: React$PropType$Primitive; + declare var number: React$PropType$Primitive; + declare var object: React$PropType$Primitive; + declare var string: React$PropType$Primitive; + declare var any: React$PropType$Primitive; + declare var arrayOf: React$PropType$ArrayOf; + declare var element: React$PropType$Primitive; /* TODO */ + declare var instanceOf: React$PropType$InstanceOf; + declare var node: React$PropType$Primitive; /* TODO */ + declare var objectOf: React$PropType$ObjectOf; + declare var oneOf: React$PropType$OneOf; + declare var oneOfType: React$PropType$OneOfType; + declare var shape: React$PropType$Shape; + + declare function checkPropTypes( + propTypes: $Subtype<{[_: $Keys]: $npm$propTypes$ReactPropsCheckType}>, + values: V, + location: string, + componentName: string, + getStack: ?(() => ?string) + ) : void; +} diff --git a/package.json b/package.json index a17be72f3..1f35c84d5 100644 --- a/package.json +++ b/package.json @@ -187,6 +187,7 @@ "plist": "^1.2.0", "pretty-format": "^4.2.1", "promise": "^7.1.1", + "prop-types": "^15.5.7", "react-clone-referenced-element": "^1.0.1", "react-devtools-core": "^2.0.8", "react-timer-mixin": "^0.13.2",