UNPKG

ts-type

Version:

TypeScript 類型工具庫:提供豐富的類型操作工具和重新導出的內建類型 / TypeScript type utility library: provides rich type manipulation utilities and re-exported built-in types

31 lines (30 loc) 820 B
/** * Proxy 類型工具 * Proxy Type Utilities * * 提供 Proxy 相關的類型操作工具 * Provides Proxy-related type manipulation utilities */ /** * 將物件的屬性包裝為 Proxy * Wrap properties of object with Proxy * * 將每個屬性轉換為具有 getter 和 setter 的物件 * Converts each property to an object with getter and setter * * @see https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-1.html * * @example * interface User { name: string; age: number; } * type ProxifiedUser = ITSProxify<User>; * // type ProxifiedUser = { * // name: { get(): string; set(v: string): void }; * // age: { get(): number; set(v: number): void }; * // } */ export type ITSProxify<T> = { [P in keyof T]: { get(): T[P]; set(v: T[P]): void; }; };