// Code generated by protoc-gen-goext. DO NOT EDIT.

package iam

import (
	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
)

type Subject_SubjectDetails = isSubject_SubjectDetails

func (m *Subject) SetSubjectDetails(v Subject_SubjectDetails) {
	m.SubjectDetails = v
}

func (m *Subject) SetSub(v string) {
	m.Sub = v
}

func (m *Subject) SetType(v SubjectType) {
	m.Type = v
}

func (m *Subject) SetCreatedAt(v *timestamppb.Timestamp) {
	m.CreatedAt = v
}

func (m *Subject) SetStatus(v SubjectStatus) {
	m.Status = v
}

func (m *Subject) SetName(v string) {
	m.Name = v
}

func (m *Subject) SetLastAuthenticatedAt(v *timestamppb.Timestamp) {
	m.LastAuthenticatedAt = v
}

func (m *Subject) SetGroups(v []*Group) {
	m.Groups = v
}

func (m *Subject) SetUserAccount(v *UserAccount) {
	m.SubjectDetails = &Subject_UserAccount{
		UserAccount: v,
	}
}

func (m *Subject) SetServiceAccount(v *ServiceAccount) {
	m.SubjectDetails = &Subject_ServiceAccount{
		ServiceAccount: v,
	}
}

func (m *Subject) SetGroup(v *Group) {
	m.SubjectDetails = &Subject_Group{
		Group: v,
	}
}

func (m *Subject) SetInvitee(v *Invitee) {
	m.SubjectDetails = &Subject_Invitee{
		Invitee: v,
	}
}

func (m *Subject) SetExternalId(v string) {
	m.ExternalId = v
}

func (m *Group) SetId(v string) {
	m.Id = v
}

func (m *Group) SetName(v string) {
	m.Name = v
}

func (m *Group) SetType(v GroupType) {
	m.Type = v
}

func (m *UserAccount) SetGivenName(v string) {
	m.GivenName = v
}

func (m *UserAccount) SetFamilyName(v string) {
	m.FamilyName = v
}

func (m *UserAccount) SetPreferredUsername(v string) {
	m.PreferredUsername = v
}

func (m *UserAccount) SetEmail(v string) {
	m.Email = v
}

func (m *UserAccount) SetPhoneNumber(v string) {
	m.PhoneNumber = v
}

func (m *UserAccount) SetSubjectContainer(v *SubjectContainer) {
	m.SubjectContainer = v
}

func (m *UserAccount) SetLastIdProofAt(v *timestamppb.Timestamp) {
	m.LastIdProofAt = v
}

func (m *UserAccount) SetSuspendReason(v string) {
	m.SuspendReason = v
}

func (m *UserAccount) SetJobInfo(v *JobInfo) {
	m.JobInfo = v
}

func (m *UserAccount) SetExpiresAt(v *timestamppb.Timestamp) {
	m.ExpiresAt = v
}

func (m *UserAccount) SetModifiedAt(v *timestamppb.Timestamp) {
	m.ModifiedAt = v
}

func (m *SubjectContainer) SetId(v string) {
	m.Id = v
}

func (m *SubjectContainer) SetName(v string) {
	m.Name = v
}

func (m *SubjectContainer) SetContainerType(v ContainerType) {
	m.ContainerType = v
}

func (m *ServiceAccount) SetCloud(v *Cloud) {
	m.Cloud = v
}

func (m *ServiceAccount) SetFolder(v *Folder) {
	m.Folder = v
}

func (m *ServiceAccount) SetServiceAgent(v *ServiceAgent) {
	m.ServiceAgent = v
}

func (m *Cloud) SetId(v string) {
	m.Id = v
}

func (m *Cloud) SetName(v string) {
	m.Name = v
}

func (m *Folder) SetId(v string) {
	m.Id = v
}

func (m *Folder) SetName(v string) {
	m.Name = v
}

func (m *ServiceAgent) SetServiceId(v string) {
	m.ServiceId = v
}

func (m *ServiceAgent) SetMicroserviceId(v string) {
	m.MicroserviceId = v
}

func (m *Invitee) SetEmail(v string) {
	m.Email = v
}

func (m *Invitee) SetPreferredUsername(v string) {
	m.PreferredUsername = v
}

func (m *JobInfo) SetCompanyName(v string) {
	m.CompanyName = v
}

func (m *JobInfo) SetDepartment(v string) {
	m.Department = v
}

func (m *JobInfo) SetJobTitle(v string) {
	m.JobTitle = v
}

func (m *JobInfo) SetEmployeeId(v string) {
	m.EmployeeId = v
}
