export type DropFirst = T extends [unknown, ...infer U] ? U : never; export type Stringable = string | CB; export type CB = (...args: Args) => T; export type ValueOf = T[keyof T]; export type Nullish = Nullable | Maybe; export type Nullable = T | null; export type Maybe = T | undefined; export type OneOrMoreOf = T | T[]; export type DynamicValue = T | CB; export type BlankValue = Maybe<''>; type TArgs = any[]; export type Predicate = boolean | ((value: T) => boolean);