Deciding safety properties in infinite-state pi-calculus via behavioural types