Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 20s
Build & Deploy / 🧪 QA (push) Failing after 34s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
15 lines
544 B
Plaintext
15 lines
544 B
Plaintext
import { ReactJSX } from './jsx-namespace'
|
|
|
|
/**
|
|
* @desc Utility type for getting props type of React component.
|
|
* It takes `defaultProps` into an account - making props with defaults optional.
|
|
*/
|
|
export type PropsOf<
|
|
C extends keyof ReactJSX.IntrinsicElements | React.JSXElementConstructor<any>
|
|
> = ReactJSX.LibraryManagedAttributes<C, React.ComponentProps<C>>
|
|
|
|
// We need to use this version of Omit as it's distributive (Will preserve unions)
|
|
export type DistributiveOmit<T, U> = T extends any
|
|
? Pick<T, Exclude<keyof T, U>>
|
|
: never
|