constraints in TS