import * as React from 'react'; import { FiberNode, FiberNodeisHTMLLike, FiberNodeForFunctionComponent, FiberNodeForComponentClass } from './mocked-types'; function isNodeHtmlLike(node: FiberNode): node is FiberNodeisHTMLLike { return (typeof node.type === "string") || node.type === null; } function isNodeNotHtmlLike(node: FiberNode): node is Exclude { return !isNodeHtmlLike(node); } function isNodeFunctionComponent(node: FiberNode): node is FiberNodeForFunctionComponent { return isNodeNotHtmlLike(node) && node.stateNode === null; } function isNodeComponentClass(node: FiberNode): node is FiberNodeForComponentClass { return isNodeNotHtmlLike(node) && (node.stateNode instanceof React.Component); } export { isNodeHtmlLike, isNodeNotHtmlLike, isNodeFunctionComponent, isNodeComponentClass };