// Code generated by azure-service-operator-codegen. DO NOT EDIT.
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT license.
package arm

import "github.com/Azure/azure-service-operator/v2/pkg/genruntime"

type TrustedAccessRoleBinding_Spec struct {
	Name string `json:"name,omitempty"`

	// Properties: Properties for trusted access role binding
	Properties *TrustedAccessRoleBindingProperties `json:"properties,omitempty"`
}

var _ genruntime.ARMResourceSpec = &TrustedAccessRoleBinding_Spec{}

// GetAPIVersion returns the ARM API version of the resource. This is always "2024-09-01"
func (binding TrustedAccessRoleBinding_Spec) GetAPIVersion() string {
	return "2024-09-01"
}

// GetName returns the Name of the resource
func (binding *TrustedAccessRoleBinding_Spec) GetName() string {
	return binding.Name
}

// GetType returns the ARM Type of the resource. This is always "Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings"
func (binding *TrustedAccessRoleBinding_Spec) GetType() string {
	return "Microsoft.ContainerService/managedClusters/trustedAccessRoleBindings"
}

// Properties for trusted access role binding
type TrustedAccessRoleBindingProperties struct {
	// Roles: A list of roles to bind, each item is a resource type qualified role name. For example:
	// 'Microsoft.MachineLearningServices/workspaces/reader'.
	Roles []string `json:"roles"`

	// SourceResourceId: The ARM resource ID of source resource that trusted access is configured for.
	SourceResourceId *string `json:"sourceResourceId,omitempty"`
}
