From a587d4496a1c876441c8606021ac2f6a4f28ec01 Mon Sep 17 00:00:00 2001 From: SSW-SCIENTIFIC Date: Thu, 28 Dec 2017 02:43:48 +0900 Subject: [PATCH] [TypeScript] re-declare `isMuiElement` and `isMuiComponent` as typeguard thanks @pelotom! --- src/utils/reactHelpers.d.ts | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/utils/reactHelpers.d.ts b/src/utils/reactHelpers.d.ts index 7e9d71294a9b0a..ba40215a9ce738 100644 --- a/src/utils/reactHelpers.d.ts +++ b/src/utils/reactHelpers.d.ts @@ -1,6 +1,15 @@ import * as React from 'react'; +import { StandardProps } from '../'; export function cloneChildrenWithClassName(children: React.ReactNode, className: string): T[]; -export function isMuiElement(element: any, muiNames: Array): boolean; -export function isMuiComponent(element: any, muiNames: Array): boolean; +type NamedMuiComponent = React.ComponentType<{}> & { muiName: string }; + +interface NamedMuiElement { + type: NamedMuiComponent; + props: StandardProps<{}, never>; + key: string | number | null; +} + +export function isMuiElement(element: any, muiNames: string[]): element is NamedMuiElement; +export function isMuiComponent(element: any, muiNames: string[]): element is NamedMuiComponent;