My purpose is simple: I want to find a way of using generics for extended parametres, in this example, throwData
is the thing I am interested in. Instead of any
, I want to use something more informative such as generic. Is there any way I can stuff like that?
titleStylesCondition< IP extends { hasOwnProperty: (a: string) => boolean; throwData?: any; title?: string; }>(itemProps: IP) { const { palette, isDark } = this.context; const styles = getStyles(palette, isDark); const titleStyles = this.get("props.titleStyles", {}); if ( itemProps.hasOwnProperty("Industry") || itemProps.throwData.hasOwnProperty("Auto") || itemProps.title === "BMW" ) { return styles.autoStyling; }