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

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

type DnsForwardingRuleset_Spec_ARM struct {
	// Location: The geo-location where the resource lives
	Location *string `json:"location,omitempty"`
	Name     string  `json:"name,omitempty"`

	// Properties: Properties of the DNS forwarding ruleset.
	Properties *DnsForwardingRulesetProperties_ARM `json:"properties,omitempty"`

	// Tags: Resource tags.
	Tags map[string]string `json:"tags,omitempty"`
}

var _ genruntime.ARMResourceSpec = &DnsForwardingRuleset_Spec_ARM{}

// GetAPIVersion returns the ARM API version of the resource. This is always "2022-07-01"
func (ruleset DnsForwardingRuleset_Spec_ARM) GetAPIVersion() string {
	return string(APIVersion_Value)
}

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

// GetType returns the ARM Type of the resource. This is always "Microsoft.Network/dnsForwardingRulesets"
func (ruleset *DnsForwardingRuleset_Spec_ARM) GetType() string {
	return "Microsoft.Network/dnsForwardingRulesets"
}

// Represents the properties of a DNS forwarding ruleset.
type DnsForwardingRulesetProperties_ARM struct {
	// DnsResolverOutboundEndpoints: The reference to the DNS resolver outbound endpoints that are used to route DNS queries
	// matching the forwarding rules in the ruleset to the target DNS servers.
	DnsResolverOutboundEndpoints []DnsresolverSubResource_ARM `json:"dnsResolverOutboundEndpoints,omitempty"`
}

// Reference to another ARM resource.
type DnsresolverSubResource_ARM struct {
	Id *string `json:"id,omitempty"`
}
