Adding a column, changing column's nullability and adding/changing constraints is already zero-downtime in PG.
Not sure about default value change, but I would also say its zero-downtime as adding a column with default is zero-downtime. Haven't checked, though.
Dropping a column and changing the data type are not zero-downtime.
Renaming a column is not zero-downtime as you might have multiple readers/writes using both.