import { type ClassTransformOptions, plainToClassFromExist } from "class-transformer"; import validator, { IsNotEmpty, ValidatorOptions } from "class-validator"; export default class Resource { @IsNotEmpty({ message: "UID is required" }) public uid!: string; public static hydrate(from: Partial, options?: ClassTransformOptions) : T { const self: T = new (this as any); return plainToClassFromExist(self, from, options); } public static validateOrReject(validatorOptions?: ValidatorOptions){ return validator.validateOrReject(this, validatorOptions); } }