LQ
LQ
```ruby type Curry< F extends (...args: any[]) => any, P extends any[] = Parameters, R = ReturnType > = P extends [infer First, ...infer Rest] ? Rest extends [] ?...
```ruby type Head = T[0] extends undefined ? never : T[0] ```
```ruby type JoinStrArray = Arr extends [infer First, ...infer Rest] ? First extends string ? Rest extends [string, ...string[]] ? JoinStrArray : `${Result}${First}` : `${Result}` : `${Result}` ```