00002-medium-return-type

Back

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

Solution by song4613107 #35798

// your answers

Solution by Meganathanrbm #35753

type MyReturnType<T extends (...args: Array<any>) => any> = T extends (...args: Array<any>) => infer R ? R : never;

Solution by gangnamssal #35496

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

Solution by Sathiyapramod #35450

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

Solution by RanungPark #35446

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

Solution by liyunguang-d #35407

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

Solution by TaueFenCheng #35328

type MyReturnType<func extends Function> = func extends (v: boolean) => infer R ? R : never

Solution by yujun96 #35283

type MyReturnType<T extends (...arg: any)=> any> = T extends (...arg: any)=> infer U ? U : never

Solution by chenweiHuabi #35102

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

Solution by ClarityOfMind #35038

// 你的答案

const fn = (v: boolean) => { if (v) { return 1 } else { return 2 } }

type MyReturnType = T extends (...arg: any) => infer B ? B : never

type resultType = MyReturnType

Solution by DisneyTom #35026

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

Solution by dominikmatt #35006

type MyReturnType<T> = T extends (...arg: any[]) => infer R ? R : never;

Solution by raeyoung-kim #34985

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

Solution by showthesunli #34972

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

Solution by miju-Park #34970

type MyReturnType<T> = T extends (...args: any) => infer R ? R : never;

Solution by 56aiden90 #34900

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

Solution by eunsukimme #34819

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

Solution by zeyuanHong0 #34738

We can use infer keyword to find fn's return type.

type MyReturnType<T> = T extends (...params: any[]) => infer U ? U: never;

Solution by dev-jaemin #34583

type MyReturnType<T extends (...args: any[]) => unknown> = T extends (...args: (infer K)) => (infer U)
  ? U : false
// your answers

Solution by Rustamaha #34558

type MyReturnType<T> = T extends (...arg: never[]) => infer ReturnVal ? ReturnVal : never

Solution by devshinthant #34552

type MyReturnType<T> = T extends (...arg : any[]) => infer R ? R : never;

Solution by bkdragon0228 #34540

type MyReturnType<T extends (...arg: any[]) => unknown> = T extends (...arg: any[]) => infer P ? P : never

Solution by binhdv155127 #34491

// 여기 풀이를 입력하세요
type MyReturnType<T extends (...args: unknown[]) => unknown> = T extends (...args: unknown[]) => infer U ? U : never;

Solution by LeeKangHyun #34481

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

Solution by gobielJonathan #34449

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

Solution by wxh-cyber #34416

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

Solution by ktim816 #34412

type MyReturnType<T extends Function> = T extends (...args: any[]) => infer A ? A : never

Solution by rookie-luochao #34367

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

Solution by quitone #34199

T extends (...args: any) => infer R? R : never;

Solution by lijiayuan365 #34164