03312-easy-parameters

Back

// your answers

Solution by alirezaprime #36407

// your answers
type MyParameters<T extends (...args: any[]) => any> = 
T extends ((...args: infer R extends readonly any[]) => any)? R : never; 

Solution by justBadProgrammer #36394

type MyParameters<T extends (...args: any[]) => any> = T extends (...args: infer U) => any ? U : any

Solution by jungwoo3490 #36323

解释: 遍历数组,每次都把数组第一项传入Count,如果Count === Z(每组个数),则将Count传入Res(结果),并清空Count

type Chunk<A extends any[], Z extends number, Count extends any[] = [], Res extends any[] = []> = A extends [infer S,  ...infer Rest]
  ?  Z extends [...Count, S]['length'] 
    ? Chunk<[...Rest], Z, [], [...Res, [...Count, S]]>
    : Chunk<[...Rest], Z, [...Count, S], Res>
  : Count['length'] extends 0 
    ? Res
    : [...Res, [...Count]]

Solution by LioHng #36320

type MyParameters<T extends (...args: any) => any> =
  T extends (...args: infer P) => any ? P : never

Solution by 1Alex4949031 #36318

type MyParameters<T extends (...args: any[]) => any> = T extends (..args: infer P) => any ? P : never;

Solution by asylbekduldiev #36298

type MyParameters<T extends (...args: any[]) => any> = T extends (...args:infer R) => any ? R : never

Solution by EvilEl #36249

type MyParameters<T extends (...args: any[]) => any> = T extends (...args:infer Arg) => any ? Arg : never

Solution by Maxim-Do #36229

type MyParameters<T extends (...args: any[]) => any> = T extends (...args: infer F) => any 
  ? F : never;

Solution by AleksandrShcherbackov #36148

type MyParameters<T extends (...args: any[]) => void> = T extends (...args: infer R) => void ? R : never

Solution by dekguh #36077

// 你的答案
type MyParameters<T> = T extends (...args: infer P) => any ? P : any;

Solution by reonce #36052

type MyParameters<T extends (...args: any[]) => any> = T extends (...args: infer Args) => any ? Args : never

Solution by karazyabko #36034

type MyParameters<T> = T extends (...args : infer P) => unknown ? P : never;

Solution by codingaring #35944

// 你的答案
type MyParameters<T extends (...args: any[]) => any> = T extends (...params: infer P) => any ? P : never

Solution by naruto-823 #35797

type MyParameters<T extends (...args: any[]) => any> = T extends (...args: infer U) => any ? [...U] : never

Solution by ydkim120 #35748

type MyParameters<T extends (...args: any[]) => any> = Parameters<T>
type MyParameters<T extends (...args: any[]) => any> = T extends (...args: infer R )=> void ? [...R]: never

Solution by TaueFenCheng #35535

type MyParameters<T extends (...args: Array<any>) => any> = T extends (...args: infer P) => unknown ? P : never;

Solution by gangnamssal #35495

// your answers
type MyParameters<T extends Function> = T extends (...args: infer Params) => any ? Params : never;

Solution by Sathiyapramod #35458

type MyParameters<T> = T extends (...args: infer U) => void ? U : [] 

Solution by RanungPark #35445

type MyParameters<T> = T extends (...args: infer P) => unknown ? P : unknown

Solution by gyeounjeong #35363

type InferArray<T extends any[]> = 
  T extends [infer HEAD, ...infer TAIL] ? [HEAD, ...InferArray<TAIL>] : [];
type MyParameters<T extends (...args: any[]) => any> = 
  T extends ((...args: infer K extends any[]) => any) ? InferArray<K> : [];

Solution by CrimsoonXIII #35048

type MyParameters<T> = T extends (...args: infer P) => unknown ? P : never

Solution by ClarityOfMind #35004

// 你的答案
type MyParameters<T extends (...args: any[]) => any> = T extends (...args: infer A) => any
  ? [...A]
  : never

Solution by showthesunli #34971

type MyParameters<T extends (...args: any[]) => any> = T extends (...args: infer P) => any ? P : never;

Solution by raeyoung-kim #34947

type MyParameters<T extends (...args: any[]) => any> = T extends (...args: infer Params) => any ? Params : unknown;

Solution by 56aiden90 #34888

type MyParameters<T extends (...args: any[]) => any> = T extends (...args: infer Params) => any ? Params : never

Solution by eunsukimme #34818

// 你的答案
type MyParameters<T extends (...args: any[]) => any> = T extends (...args: infer U) => any ? U : never

Solution by zeyuanHong0 #34730

// your answers
type MyParameters<T extends (...args: any[]) => any> = T extends (...args: infer P) => any ? P : never;

Solution by AndreGeng #34716

type MyParameters<T extends (...args: any[]) => any> = T extends (
  ...args: infer P
) => infer R
  ? [...P]
  : never;

Solution by lephuthuc2001 #34711

type MyParameters<T extends (...args: any[]) => any> = T extends (...any: infer S) => any ? S : any

Solution by Hailey0930 #34685