@azure/communication-react
Version:
React library for building modern communication user experiences utilizing Azure Communication Services
20 lines • 847 B
TypeScript
/// <reference types="react" />
/**
* Compare if two types are equal, result type will be true/false
*
* @public
*/
export type AreTypeEqual<A, B> = A extends B ? (B extends A ? true : false) : false;
/**
* Compare if props of 2 react components are equal, result type will be true/false
*
* @public
*/
export type AreParamEqual<A extends (props: any) => JSX.Element | undefined, B extends (props: any) => JSX.Element | undefined> = AreTypeEqual<Required<Parameters<A>[0]>, Required<Parameters<B>[0]>>;
/**
* Compare if 2 react components are exact equal, result type will be true/false
*
* @public
*/
export type AreEqual<A extends (props: any) => JSX.Element | undefined, B extends (props: any) => JSX.Element | undefined> = true extends AreTypeEqual<A, B> & AreParamEqual<A, B> ? true : false;
//# sourceMappingURL=areEqual.d.ts.map