UNPKG

momo-util-types

Version:

⭐️ 모두모여라 유틸 타입 라이브러리입니다 ⭐️

15 lines (14 loc) 886 B
export declare type PartialRequired<T, K extends keyof T> = Omit<T, K> & Required<Pick<T, K>>; export declare type PartialOptional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>; export declare type Override<T1, T2> = Omit<T1, keyof T2> & T2; export declare type Equal<T1, T2> = (<T>() => T extends T1 ? 1 : 2) extends <T>() => T extends T2 ? 1 : 2 ? true : false; export declare type If<C extends boolean, T, F = never> = C extends true ? T : F extends never ? T : F; export declare type Unionize<T extends object> = { [P in keyof T]: { [Q in P]: T[P]; }; }[keyof T]; export declare type ObjectKey<T extends object> = keyof T; export declare type ObjectValue<T extends object> = T[keyof T]; export declare type ObjectType<T, K extends string | number | symbol = string> = Record<K, T>; export declare type ArrayElement<T> = T extends (infer E)[] ? E : never;