import React from 'react' ; import classnames from 'classnames' ; import { withRipple , InjectedProps , RippledComponentInterface , RippledComponentProps , RippledComponentState , } from '@material/react-ripple' ; export interface TabRippleProps extends React . HTMLAttributes < HTMLDivElement > , InjectedProps < HTMLDivElement > { className : string ; ref ? : React . RefObject < TabRipple > ; } class TabRippleBase extends React . Component < TabRippleProps , { } > { get classes ( ) { return classnames ( 'mdc-tab__ripple' , this . props . className ) ; } render ( ) { const { className , unbounded , initRipple , ... otherProps } = this . props ; return < div className = { this . classes } { ... otherProps } ref = { initRipple } / > ; } } const TabRipple = withRipple < TabRippleProps , HTMLDivElement > ( TabRippleBase ) ; type TabRipple = React . Component < TabRippleProps , RippledComponentState > & RippledComponentInterface < any > ; export default TabRipple ;