UNPKG

react-zoom-pan-pinch

Version:
16 lines (12 loc) 429 B
/* eslint-disable @typescript-eslint/ban-types */ export type DeepNonNullable<T> = T extends (...args: any[]) => any ? T : T extends any[] ? DeepNonNullableArray<T[number]> : T extends object ? DeepNonNullableObject<T> : T; export type DeepNonNullableArray<T> = Array<DeepNonNullable<NonNullable<T>>>; export type DeepNonNullableObject<T> = { [P in keyof T]-?: DeepNonNullable<NonNullable<T[P]>>; };