export abstract class CsdlStructuralProperty { constructor ( public name , public type , public nullable ? ) { } } export class CsdlProperty extends CsdlStructuralProperty { constructor ( name , type , nullable ? , public maxLength ? , public precision ? , public scale ? , public unicode ? , public srid ? , public defaultValue ? ) { super ( name , type , nullable ) ; } } export class CsdlNavigationProperty extends CsdlStructuralProperty { constructor ( name , type , nullable ? , public partner ? , public containsTarget ? , public referentialConstraints ? , public onDelete ? ) { super ( name , type , nullable ) ; } } export class CsdlReferentialConstraint { constructor ( public property , public referencedProperty ) { } } export class CsdlOnDelete { constructor ( public action ) { } }