/// <summary>
 /// Initializes a new instance of the <see cref="SPGroupManagementModel" /> class.
 /// </summary>
 /// <param name="id">id.</param>
 /// <param name="name">name.</param>
 /// <param name="description">description.</param>
 /// <param name="owner">owner.</param>
 /// <param name="members">members.</param>
 /// <param name="spGroupViewType">spGroupViewType.</param>
 /// <param name="spGroupEditType">spGroupEditType.</param>
 /// <param name="permissions">permissions.</param>
 /// <param name="action">action.</param>
 /// <param name="isAllowJoinOrLeaveRequest">isAllowJoinOrLeaveRequest.</param>
 /// <param name="isAutoAcceptRequest">isAutoAcceptRequest.</param>
 /// <param name="sendMembershipRequestEmailAddress">sendMembershipRequestEmailAddress.</param>
 /// <param name="isTemporaryGroup">isTemporaryGroup.</param>
 public SPGroupManagementModel(int id = default(int), StringChangedProperty name = default(StringChangedProperty), string description = default(string), ApiUser owner = default(ApiUser), List <SPUserManagementModel> members = default(List <SPUserManagementModel>), SPGroupViewOption spGroupViewType = default(SPGroupViewOption), SPGroupEditOption spGroupEditType = default(SPGroupEditOption), List <string> permissions = default(List <string>), ManagePermissionAction action = default(ManagePermissionAction), bool isAllowJoinOrLeaveRequest = default(bool), bool isAutoAcceptRequest = default(bool), string sendMembershipRequestEmailAddress = default(string), bool isTemporaryGroup = default(bool))
 {
     this.Name        = name;
     this.Description = description;
     this.Owner       = owner;
     this.Members     = members;
     this.Permissions = permissions;
     this.SendMembershipRequestEmailAddress = sendMembershipRequestEmailAddress;
     this.Id                                = id;
     this.Name                              = name;
     this.Description                       = description;
     this.Owner                             = owner;
     this.Members                           = members;
     this.SpGroupViewType                   = spGroupViewType;
     this.SpGroupEditType                   = spGroupEditType;
     this.Permissions                       = permissions;
     this.Action                            = action;
     this.IsAllowJoinOrLeaveRequest         = isAllowJoinOrLeaveRequest;
     this.IsAutoAcceptRequest               = isAutoAcceptRequest;
     this.SendMembershipRequestEmailAddress = sendMembershipRequestEmailAddress;
     this.IsTemporaryGroup                  = isTemporaryGroup;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="ObjectPermissionManagementModel" /> class.
 /// </summary>
 /// <param name="objectType">objectType.</param>
 /// <param name="objectInfo">objectInfo.</param>
 /// <param name="action">action.</param>
 /// <param name="permissions">permissions.</param>
 /// <param name="originalPermissions">originalPermissions.</param>
 /// <param name="externalUserType">externalUserType.</param>
 /// <param name="members">members.</param>
 /// <param name="grantPermissionSetting">grantPermissionSetting.</param>
 public ObjectPermissionManagementModel(SPPrincipalType objectType = default(SPPrincipalType), ApiUser objectInfo = default(ApiUser), ManagePermissionAction action = default(ManagePermissionAction), List <string> permissions = default(List <string>), List <string> originalPermissions = default(List <string>), ExternalUserType externalUserType = default(ExternalUserType), List <SharingEnabledUser> members = default(List <SharingEnabledUser>), GrantPermissionModel grantPermissionSetting = default(GrantPermissionModel))
 {
     this.ObjectInfo             = objectInfo;
     this.Permissions            = permissions;
     this.OriginalPermissions    = originalPermissions;
     this.Members                = members;
     this.GrantPermissionSetting = grantPermissionSetting;
     this.ObjectType             = objectType;
     this.ObjectInfo             = objectInfo;
     this.Action                 = action;
     this.Permissions            = permissions;
     this.OriginalPermissions    = originalPermissions;
     this.ExternalUserType       = externalUserType;
     this.Members                = members;
     this.GrantPermissionSetting = grantPermissionSetting;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="SPUserManagementModel" /> class.
 /// </summary>
 /// <param name="identityName">identityName.</param>
 /// <param name="displayName">displayName.</param>
 /// <param name="isGroup">isGroup.</param>
 /// <param name="action">action.</param>
 /// <param name="externalUserType">externalUserType.</param>
 public SPUserManagementModel(string identityName = default(string), string displayName = default(string), bool isGroup = default(bool), ManagePermissionAction action = default(ManagePermissionAction), ExternalUserType externalUserType = default(ExternalUserType))
 {
     this.IdentityName     = identityName;
     this.DisplayName      = displayName;
     this.IdentityName     = identityName;
     this.DisplayName      = displayName;
     this.IsGroup          = isGroup;
     this.Action           = action;
     this.ExternalUserType = externalUserType;
 }