@wearesage/schema
Version:
A flexible schema definition and validation system for TypeScript with multi-database support
35 lines (28 loc) • 741 B
text/typescript
import "reflect-metadata";
import { Entity, Id, Property, ManyToMany } from "../../core/decorators";
// Test entity with complex relationships for edge case testing
()
export class ComplexUser {
()
id: string;
({ required: true })
name: string;
({ required: true, unique: true })
email: string;
({ required: true })
status: 'active' | 'inactive' | 'suspended';
()
metadata: Record<string, any>;
({
target: () => ComplexUser,
inverse: "managedUsers",
name: "MANAGES"
})
managers: ComplexUser[] = [];
({
target: () => ComplexUser,
inverse: "managers",
name: "MANAGES"
})
managedUsers: ComplexUser[] = [];
}