It largely depends on your data. I.e. do you have a dedicated sessions table, or using a raw event stream?
If using a raw event stream, these sorts of metrics are pretty difficult (though not impossible) to implement. You could use DBT or similar data modeling to create a dedicated sessions table with duration, number of page views, etc.