diff --git a/types/react-burger-menu/index.d.ts b/types/react-burger-menu/index.d.ts index 2cfe6aaa4e..585026eeee 100644 --- a/types/react-burger-menu/index.d.ts +++ b/types/react-burger-menu/index.d.ts @@ -6,13 +6,17 @@ import * as React from "react"; +export interface State { + isOpen: boolean; +} + export interface Props { burgerBarClassName?: string; burgerButtonClassName?: string; crossButtonClassName?: string; crossClassName?: string; - customBurgerIcon?: Element | false; - customCrossIcon?: Element | false; + customBurgerIcon?: JSX.Element | false; + customCrossIcon?: JSX.Element | false; id?: string; isOpen?: boolean; itemListClassName?: string; @@ -20,7 +24,7 @@ export interface Props { morphShapeClassName?: string; noOverlay?: boolean; disableOverlayClick?: boolean; - onStateChange?(): void; + onStateChange?(state: State): void; // TODO (Rajab) This can be improved, though I do not know how. From PropTypes: // styles && styles.outerContainer ? PropTypes.string.isRequired : PropTypes.string outerContainerId?: string; diff --git a/types/react-burger-menu/react-burger-menu-tests.tsx b/types/react-burger-menu/react-burger-menu-tests.tsx index 573c59c023..07add1ef97 100644 --- a/types/react-burger-menu/react-burger-menu-tests.tsx +++ b/types/react-burger-menu/react-burger-menu-tests.tsx @@ -1,5 +1,5 @@ import * as React from 'react'; -import { slide as Menu } from 'react-burger-menu'; +import { slide as Menu, State } from 'react-burger-menu'; class Example extends React.Component { showSettings(event: { @@ -10,7 +10,11 @@ class Example extends React.Component { render() { return ( -
); } + + onStateChange = (state: State): void => { + console.log(state.isOpen); + } }