UNPKG

typescript-type

Version:
5 lines (3 loc) 243 B
export type AreSame<T1, T2> = T1 extends T2 ? (T2 extends T1 ? true : false) : false; export type OneOfProp<T, K extends keyof T = keyof T> = Omit<T, K> & { [I in K]-?: Required<Pick<T, I>> & Partial<Record<Exclude<K, I>, undefined>> }[K];