Mrlgm

Results 24 comments of Mrlgm

```typescript type Curry< F extends (...args: any[]) => any, P extends any[] = Parameters, R = ReturnType > = P extends [infer U, ...infer Arg] ? (arg: U) => Curry...

```typescript type Shift = T extends [infer U, ...infer Arg] ? Arg : T // 测试用例 type S0 = Shift type S1 = Shift ```

```typescript type Foo = { a: number; b?: string; c: boolean; } type Simplely = { [P in keyof T]: T[P] } type SetOptional = Simplely; type SetRequired = Simplely;...

```typescript type Includes = T extends [infer U, ...infer Arg] ? E extends U ? true : Includes : false; type I0 = Includes // false type I1 = Includes...

```typescript type Tail = T extends [fir: infer U, ...arg: infer Arg] ? Arg : [] // 测试用例 type T0 = Tail // [] type T1 = Tail // [2]...

```typescript type Responder = { text?: () => string; json?: () => string; secure?: boolean; }; type RequireAtLeastOne< ObjectType, KeysType extends keyof ObjectType = keyof ObjectType, > = KeysType extends...

```typescript type Unshift = [E, ...T] // 测试用例 type Arr0 = Unshift; // [1] type Arr1 = Unshift; // [0, 1, 2, 3] ```

```typescript interface Example { a: string; b: string | number; c: () => void; d: {}; } type ConditionalPick = { [P in keyof T as (T[P] extends K ?...

```typescript type Fn = (a: number, b: string) => number type AppendArgument any, A> = (x: A, ...arg: Parameters) => ReturnType // 测试用例 type FinalFn = AppendArgument // (x: boolean,...

```typescript type Fn = (a: number, b: string) => number type AppendArgument any, A> = (x: boolean, ...arg: F extends (...args: infer P) => any ? P : never) =>...