type MyReadonly<T> = {
readonly [K in keyof T]: T[K]
}
Solution by Yunjaejo #35865
// 你的答案
type MyReadonly<T> = {
readonly [P in keyof T]: T[P]
}
Solution by reonce #35817
// 你的答案
type MyReadonly<T> = {
readonly [key in keyof T]: T[key]
}
Solution by song4613107 #35783
//type cases = [
Expect<Equal<MyReadonly<Todo1>, Readonly<Todo1>>>,
]
Solution by hatbann #35757
type MyReadonly<T> = {
readonly [K in keyof T]: T[K]
}
Solution by XenoPOMP #35739
type MyReadonly<T> = {readonly[K in keyof T]: T[K]}
Solution by Sensuele #35735
type MyReadonly<T extends object> = {
readonly [P in keyof T]: T[P]
}
Solution by criszst #35704
type MyReadonly<T> = {
readonly [P in keyof T]: T[P]
}
Solution by thukyaw11 #35524
// your answers
type MyReadOnly<T> = { [Key in keyof T] : T[Key]};
Solution by Sathiyapramod #35502
// 여기 풀이를 입력하세요
type MyReadonly<T> = { readonly [key in keyof T]: T[key] }
Solution by Gwanghun-Im #35488
type MyReadonly<T> = { readonly [key in keyof T]: T[key] }
Solution by gangnamssal #35465
type MyReadonly<T> = {
readonly [k in keyof T] : T[k]
}
Solution by RanungPark #35429
// 你的答案
type MyReadonly<T> = {
readonly [key in keyof T] : T[key]
}
Solution by dixiaioping #35382
type MyReadonly<T> = {
readonly [key in keyof T]: T[key]
}
Solution by SB-SLIM #35375
type MyReadonly<T> = {
readonly [key in keyof T]: T[key]
}
Solution by gyeounjeong #35350
type MyReadonly
Solution by kvyy #35317
type MyReadonly<T extends Record<string, any>> = { readonly [K in keyof T]: T[K] }
Solution by vaclock #35269
type MyReadonly<T> = {
readonly [Property in keyof T]: T[Property]
}
Solution by Muntazir-sd #35193
by Anthony Fu (@antfu) #easy #built-in #readonly #object-keys
Implement the built-in Readonly<T>
generic without using it.
Constructs a type with all properties of T set to readonly, meaning the properties of the constructed type cannot be reassigned.
For example:
interface Todo {
title: string
description: string
}
const todo: MyReadonly<Todo> = {
title: "Hey",
description: "foobar"
}
todo.title = "Hello" // Error: cannot reassign a readonly property
todo.description = "barFoo" // Error: cannot reassign a readonly property
View on GitHub: https://tsch.js.org/7 */
/* _____________ Your Code Here _____________ */
type MyReadonly
/* _____________ Test Cases _____________ */ import type { Equal, Expect } from '@type-challenges/utils'
type cases = [
Expect<Equal<MyReadonly
interface Todo1 { title: string description: string completed: boolean meta: { author: string } }
/* _____________ Further Steps _____________ / /
Share your solutions: https://tsch.js.org/7/answer View solutions: https://tsch.js.org/7/solutions More Challenges: https://tsch.js.org */
Solution by leetflow #35154
type MyReadonly<T> = { readonly [P in keyof T] : T[P]}
Solution by JAGORING #35145
type MyReadonly<T extends object> = {
readonly [P in keyof T]: T[P]
}
Solution by lwfxzz #35117
type MyReadonly<T extends object> = {
readonly [key in keyof T] : T[key]
}
Solution by chenweiHuabi #35079
type MyReadonly<T> = {
readonly [k in keyof T]: T[k]
}
Solution by koplec #35043
type MyReadonly<T> = {
+readonly [K in keyof T]: T[K];
};
Define a new type by adding the readonly
keyword to all properties of the generic type T.
Solution by miju-Park #34948
type MyReadonly<T> = {
readonly [P in keyof T]: T[P];
};
Solution by raeyoung-kim #34889
type MyReadonly<T> = {
readonly [key in keyof T]: T[key]
}
Solution by floatDreamWithSong #34868
type MyReadonly<T> = {
readonly[key in keyof T] : T[key]
}
Solution by 56aiden90 #34866
type MyReadonly<T> = {
readonly [K in keyof T]: T[K]
}
Solution by HrOkiG2 #34827
// your answers
type MyReadonly<T> = { readonly [K in keyof T]: T[K] }
Solution by eunsukimme #34807