import { Property } from './Property'; export enum RemoveConstraint { /* * When the source Entity is removed also the target * Entity is removed but if and only if the latter has no other * incoming Relation. */ cascadeWhenOrphan, /* * When the source Entity is removed also the target * Entity is removed. */ cascade, /* * When the source Entity is removed the target Entity * is keep. */ keep } export enum AddConstraint { propagate, unpropagate } export class PropagationConstraint extends Property { remove: RemoveConstraint; add: AddConstraint; constructor(remove: RemoveConstraint, add: AddConstraint){ super(); this.remove = remove; this.add = add; } }