1export enum ReactiveFlags {2SKIP = '__v_skip',3IS_REACTIVE = '__v_isReactive',4IS_READONLY = '__v_isReadonly',5IS_SHALLOW = '__v_isShallow',6RAW = '__v_raw',7}89/**10 * Checks whether the passed value is a readonly object. The properties of a11 * readonly object can change, but they can't be assigned directly via the12 * passed object.13 *14 * The proxies created by {@link readonly()} and {@link shallowReadonly()} are15 * both considered readonly, as is a computed ref without a set function.16 *17 * @paramvalue - The value to check.18 * @see {@link https://vuejs.org/api/reactivity-utilities.html#isreadonly}19 */20exportfunctionisReadonly(value: unknown): boolean {21return !!(value && (value asTarget)[ReactiveFlags.IS_READONLY])22}