// Code generated by protoc-json-shim. DO NOT EDIT.
package meshv2beta1

import (
	protojson "google.golang.org/protobuf/encoding/protojson"
)

// MarshalJSON is a custom marshaler for DestinationsConfiguration
func (this *DestinationsConfiguration) MarshalJSON() ([]byte, error) {
	str, err := DestinationsConfigurationMarshaler.Marshal(this)
	return []byte(str), err
}

// UnmarshalJSON is a custom unmarshaler for DestinationsConfiguration
func (this *DestinationsConfiguration) UnmarshalJSON(b []byte) error {
	return DestinationsConfigurationUnmarshaler.Unmarshal(b, this)
}

// MarshalJSON is a custom marshaler for DestinationConfigOverrides
func (this *DestinationConfigOverrides) MarshalJSON() ([]byte, error) {
	str, err := DestinationsConfigurationMarshaler.Marshal(this)
	return []byte(str), err
}

// UnmarshalJSON is a custom unmarshaler for DestinationConfigOverrides
func (this *DestinationConfigOverrides) UnmarshalJSON(b []byte) error {
	return DestinationsConfigurationUnmarshaler.Unmarshal(b, this)
}

// MarshalJSON is a custom marshaler for DestinationConfiguration
func (this *DestinationConfiguration) MarshalJSON() ([]byte, error) {
	str, err := DestinationsConfigurationMarshaler.Marshal(this)
	return []byte(str), err
}

// UnmarshalJSON is a custom unmarshaler for DestinationConfiguration
func (this *DestinationConfiguration) UnmarshalJSON(b []byte) error {
	return DestinationsConfigurationUnmarshaler.Unmarshal(b, this)
}

// MarshalJSON is a custom marshaler for DestinationLimits
func (this *DestinationLimits) MarshalJSON() ([]byte, error) {
	str, err := DestinationsConfigurationMarshaler.Marshal(this)
	return []byte(str), err
}

// UnmarshalJSON is a custom unmarshaler for DestinationLimits
func (this *DestinationLimits) UnmarshalJSON(b []byte) error {
	return DestinationsConfigurationUnmarshaler.Unmarshal(b, this)
}

// MarshalJSON is a custom marshaler for PassiveHealthCheck
func (this *PassiveHealthCheck) MarshalJSON() ([]byte, error) {
	str, err := DestinationsConfigurationMarshaler.Marshal(this)
	return []byte(str), err
}

// UnmarshalJSON is a custom unmarshaler for PassiveHealthCheck
func (this *PassiveHealthCheck) UnmarshalJSON(b []byte) error {
	return DestinationsConfigurationUnmarshaler.Unmarshal(b, this)
}

var (
	DestinationsConfigurationMarshaler   = &protojson.MarshalOptions{}
	DestinationsConfigurationUnmarshaler = &protojson.UnmarshalOptions{DiscardUnknown: false}
)
