Expand API and Terraform provider to cover critical group settings
Customers are using Terraform to set and continually check if the settings are correct so they need the [GitLab Terraform provider](https://github.com/gitlabhq/terraform-provider-gitlab) and hence GitLab api) to support setting the following group settings:
### Must Have
1. Enforce SSO-only authentication for this group: true (ui default: false)
- API Support required: https://gitlab.com/gitlab-org/gitlab/-/issues/297006
2. Enable SAML SSO: true (ui default: true)
- API Support TBC - if not present, associate an issue
3. (more of 2.5.) SAML group links (AD group links is already in the API but SAML group links isn't)
4. Default membership role: Minimal Access (ui default: Guest)
5. Restrict membership by email domain: company.com // (ui default: '') Only verified users with an email address in any of these domains can be added to the group. Multiple domains are supported. Some common domains are not allowed. Read more.
6. Prevent sharing a project within customer namespace with other groups: true (ui default: false) This setting will be applied to all subgroups unless overridden by a group owner. Groups that already have access to the project will continue to have access unless removed manually.
### Nice to have
6. Allow access to the following IP addresses: '' (ui default: '') This group, including all subgroups, projects and git repositories, will be reachable from only the specified IP address ranges.
7. Allow subgroups to set up their own two-factor authentication rules: true (ui default: true) (See #352725)
8. Prevent project forking outside current group: true // (ui default: false) This setting will prevent group members from forking projects outside of the group.
9. Enable delayed project removal: true // (ui default: false) Projects will be permanently deleted after a 7-day delay. This delay can be customized by an admin in instance settings (See #238850)
10. Default branch protection: Fully protected // (ui default: Fully protected)
11. Member lock: false // (ui default: false) Prevent adding new members to project membership within this group
issue