// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.11
// 	protoc        v3.19.6
// source: rolodex_dns.proto

package rolodexdnspb

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

// RecordType enumerates the supported DNS record types.
type RecordType int32

const (
	// A record - IPv4 address mapping
	RecordType_A RecordType = 0
	// AAAA record - IPv6 address mapping
	RecordType_AAAA RecordType = 1
	// CNAME record - canonical name alias
	RecordType_CNAME RecordType = 2
	// MX record - mail exchange
	RecordType_MX RecordType = 3
	// TXT record - text record
	RecordType_TXT RecordType = 4
	// NS record - name server
	RecordType_NS RecordType = 5
	// SOA record - start of authority
	RecordType_SOA RecordType = 6
	// SRV record - service locator
	RecordType_SRV RecordType = 7
	// PTR record - pointer for reverse DNS
	RecordType_PTR RecordType = 8
	// URI record - Uniform Resource Identifier (RFC 7553)
	RecordType_URI RecordType = 9
	// SSHFP record - SSH fingerprint (RFC 4255)
	RecordType_SSHFP RecordType = 10
	// DNAME record - delegation name (RFC 6672)
	RecordType_DNAME RecordType = 11
	// ANAME record - alias name (resolved at query time)
	RecordType_ANAME RecordType = 12
	// ZONEMD record - zone message digest (RFC 9156)
	RecordType_ZONEMD RecordType = 13
	// TLSA record - TLS authentication (RFC 6698)
	RecordType_TLSA RecordType = 14
	// DNSKEY record - DNSSEC public key
	RecordType_DNSKEY RecordType = 15
	// DS record - delegation signer
	RecordType_DS RecordType = 16
	// RRSIG record - DNSSEC signature
	RecordType_RRSIG RecordType = 17
	// NSEC record - next secure (DNSSEC)
	RecordType_NSEC RecordType = 18
	// NSEC3 record - next secure v3 (DNSSEC)
	RecordType_NSEC3 RecordType = 19
	// NSEC3PARAM record - NSEC3 parameters (DNSSEC)
	RecordType_NSEC3PARAM RecordType = 20
	// CERT record - certificate storage in DNS (RFC 4398)
	RecordType_CERT RecordType = 21
)

// Enum value maps for RecordType.
var (
	RecordType_name = map[int32]string{
		0:  "A",
		1:  "AAAA",
		2:  "CNAME",
		3:  "MX",
		4:  "TXT",
		5:  "NS",
		6:  "SOA",
		7:  "SRV",
		8:  "PTR",
		9:  "URI",
		10: "SSHFP",
		11: "DNAME",
		12: "ANAME",
		13: "ZONEMD",
		14: "TLSA",
		15: "DNSKEY",
		16: "DS",
		17: "RRSIG",
		18: "NSEC",
		19: "NSEC3",
		20: "NSEC3PARAM",
		21: "CERT",
	}
	RecordType_value = map[string]int32{
		"A":          0,
		"AAAA":       1,
		"CNAME":      2,
		"MX":         3,
		"TXT":        4,
		"NS":         5,
		"SOA":        6,
		"SRV":        7,
		"PTR":        8,
		"URI":        9,
		"SSHFP":      10,
		"DNAME":      11,
		"ANAME":      12,
		"ZONEMD":     13,
		"TLSA":       14,
		"DNSKEY":     15,
		"DS":         16,
		"RRSIG":      17,
		"NSEC":       18,
		"NSEC3":      19,
		"NSEC3PARAM": 20,
		"CERT":       21,
	}
)

func (x RecordType) Enum() *RecordType {
	p := new(RecordType)
	*p = x
	return p
}

func (x RecordType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (RecordType) Descriptor() protoreflect.EnumDescriptor {
	return file_rolodex_dns_proto_enumTypes[0].Descriptor()
}

func (RecordType) Type() protoreflect.EnumType {
	return &file_rolodex_dns_proto_enumTypes[0]
}

func (x RecordType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use RecordType.Descriptor instead.
func (RecordType) EnumDescriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{0}
}

// DnsRecord represents a single DNS record in the database.
type DnsRecord struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Fully qualified domain name (e.g. "example.com.")
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The type of DNS record
	RecordType RecordType `protobuf:"varint,2,opt,name=record_type,json=recordType,proto3,enum=rolodex_dns.RecordType" json:"record_type,omitempty"`
	// The record data (e.g. IP address, hostname, etc.)
	Value string `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
	// Time-to-live in seconds (default: 300)
	Ttl uint32 `protobuf:"varint,4,opt,name=ttl,proto3" json:"ttl,omitempty"`
	// Priority for MX and SRV records (ignored for other types)
	Priority      uint32 `protobuf:"varint,5,opt,name=priority,proto3" json:"priority,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DnsRecord) Reset() {
	*x = DnsRecord{}
	mi := &file_rolodex_dns_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DnsRecord) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DnsRecord) ProtoMessage() {}

func (x *DnsRecord) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[0]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DnsRecord.ProtoReflect.Descriptor instead.
func (*DnsRecord) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{0}
}

func (x *DnsRecord) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *DnsRecord) GetRecordType() RecordType {
	if x != nil {
		return x.RecordType
	}
	return RecordType_A
}

func (x *DnsRecord) GetValue() string {
	if x != nil {
		return x.Value
	}
	return ""
}

func (x *DnsRecord) GetTtl() uint32 {
	if x != nil {
		return x.Ttl
	}
	return 0
}

func (x *DnsRecord) GetPriority() uint32 {
	if x != nil {
		return x.Priority
	}
	return 0
}

// AddRecordRequest adds a new DNS record to the local database.
type AddRecordRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The record to add
	Record *DnsRecord `protobuf:"bytes,1,opt,name=record,proto3" json:"record,omitempty"`
	// Shared secret for authentication (ignored over unix socket)
	AuthToken     string `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddRecordRequest) Reset() {
	*x = AddRecordRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AddRecordRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddRecordRequest) ProtoMessage() {}

func (x *AddRecordRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[1]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddRecordRequest.ProtoReflect.Descriptor instead.
func (*AddRecordRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{1}
}

func (x *AddRecordRequest) GetRecord() *DnsRecord {
	if x != nil {
		return x.Record
	}
	return nil
}

func (x *AddRecordRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// AddRecordResponse is returned after adding a record.
type AddRecordResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Whether the operation succeeded
	Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	// Error message if success is false
	Message       string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddRecordResponse) Reset() {
	*x = AddRecordResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AddRecordResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddRecordResponse) ProtoMessage() {}

func (x *AddRecordResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[2]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddRecordResponse.ProtoReflect.Descriptor instead.
func (*AddRecordResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{2}
}

func (x *AddRecordResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *AddRecordResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// RemoveRecordRequest removes a DNS record from the local database.
type RemoveRecordRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Fully qualified domain name to remove records for
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Optional: if set, only remove records of this type. If unset, removes all records for the name.
	RecordType RecordType `protobuf:"varint,2,opt,name=record_type,json=recordType,proto3,enum=rolodex_dns.RecordType" json:"record_type,omitempty"`
	// Optional: if set, only remove the record with this exact value
	Value string `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,4,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveRecordRequest) Reset() {
	*x = RemoveRecordRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveRecordRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveRecordRequest) ProtoMessage() {}

func (x *RemoveRecordRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[3]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveRecordRequest.ProtoReflect.Descriptor instead.
func (*RemoveRecordRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{3}
}

func (x *RemoveRecordRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *RemoveRecordRequest) GetRecordType() RecordType {
	if x != nil {
		return x.RecordType
	}
	return RecordType_A
}

func (x *RemoveRecordRequest) GetValue() string {
	if x != nil {
		return x.Value
	}
	return ""
}

func (x *RemoveRecordRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// RemoveRecordResponse is returned after removing records.
type RemoveRecordResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Whether the operation succeeded
	Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	// Number of records removed
	RemovedCount uint32 `protobuf:"varint,2,opt,name=removed_count,json=removedCount,proto3" json:"removed_count,omitempty"`
	// Error message if success is false
	Message       string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveRecordResponse) Reset() {
	*x = RemoveRecordResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[4]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveRecordResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveRecordResponse) ProtoMessage() {}

func (x *RemoveRecordResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[4]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveRecordResponse.ProtoReflect.Descriptor instead.
func (*RemoveRecordResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{4}
}

func (x *RemoveRecordResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *RemoveRecordResponse) GetRemovedCount() uint32 {
	if x != nil {
		return x.RemovedCount
	}
	return 0
}

func (x *RemoveRecordResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// ListRecordsRequest queries the local DNS database.
type ListRecordsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Optional: filter by domain name (supports wildcard prefix "*.")
	NameFilter string `protobuf:"bytes,1,opt,name=name_filter,json=nameFilter,proto3" json:"name_filter,omitempty"`
	// Optional: filter by record type
	RecordTypeFilter RecordType `protobuf:"varint,2,opt,name=record_type_filter,json=recordTypeFilter,proto3,enum=rolodex_dns.RecordType" json:"record_type_filter,omitempty"`
	// Whether to apply the record_type_filter
	FilterByType bool `protobuf:"varint,3,opt,name=filter_by_type,json=filterByType,proto3" json:"filter_by_type,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,4,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListRecordsRequest) Reset() {
	*x = ListRecordsRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[5]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListRecordsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListRecordsRequest) ProtoMessage() {}

func (x *ListRecordsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[5]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListRecordsRequest.ProtoReflect.Descriptor instead.
func (*ListRecordsRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{5}
}

func (x *ListRecordsRequest) GetNameFilter() string {
	if x != nil {
		return x.NameFilter
	}
	return ""
}

func (x *ListRecordsRequest) GetRecordTypeFilter() RecordType {
	if x != nil {
		return x.RecordTypeFilter
	}
	return RecordType_A
}

func (x *ListRecordsRequest) GetFilterByType() bool {
	if x != nil {
		return x.FilterByType
	}
	return false
}

func (x *ListRecordsRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// ListRecordsResponse contains matching DNS records.
type ListRecordsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The matching records
	Records       []*DnsRecord `protobuf:"bytes,1,rep,name=records,proto3" json:"records,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListRecordsResponse) Reset() {
	*x = ListRecordsResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[6]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListRecordsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListRecordsResponse) ProtoMessage() {}

func (x *ListRecordsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[6]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListRecordsResponse.ProtoReflect.Descriptor instead.
func (*ListRecordsResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{6}
}

func (x *ListRecordsResponse) GetRecords() []*DnsRecord {
	if x != nil {
		return x.Records
	}
	return nil
}

// SetForwarderRequest configures upstream DNS forwarders.
type SetForwarderRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// List of upstream DNS server addresses (e.g. "8.8.8.8:53")
	Forwarders []string `protobuf:"bytes,1,rep,name=forwarders,proto3" json:"forwarders,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetForwarderRequest) Reset() {
	*x = SetForwarderRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[7]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetForwarderRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetForwarderRequest) ProtoMessage() {}

func (x *SetForwarderRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[7]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetForwarderRequest.ProtoReflect.Descriptor instead.
func (*SetForwarderRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{7}
}

func (x *SetForwarderRequest) GetForwarders() []string {
	if x != nil {
		return x.Forwarders
	}
	return nil
}

func (x *SetForwarderRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// SetForwarderResponse is returned after setting forwarders.
type SetForwarderResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Whether the operation succeeded
	Success       bool   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetForwarderResponse) Reset() {
	*x = SetForwarderResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[8]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetForwarderResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetForwarderResponse) ProtoMessage() {}

func (x *SetForwarderResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[8]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetForwarderResponse.ProtoReflect.Descriptor instead.
func (*SetForwarderResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{8}
}

func (x *SetForwarderResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *SetForwarderResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// RblConfig configures a single RBL provider.
type RblConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The RBL zone to query (e.g. "zen.spamhaus.org")
	Zone string `protobuf:"bytes,1,opt,name=zone,proto3" json:"zone,omitempty"`
	// Whether this RBL is enabled (default: true when added)
	Enabled       bool `protobuf:"varint,2,opt,name=enabled,proto3" json:"enabled,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RblConfig) Reset() {
	*x = RblConfig{}
	mi := &file_rolodex_dns_proto_msgTypes[9]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RblConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RblConfig) ProtoMessage() {}

func (x *RblConfig) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[9]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RblConfig.ProtoReflect.Descriptor instead.
func (*RblConfig) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{9}
}

func (x *RblConfig) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *RblConfig) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

// SetRblConfigRequest configures RBL providers.
type SetRblConfigRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The list of RBL providers to use
	Providers []*RblConfig `protobuf:"bytes,1,rep,name=providers,proto3" json:"providers,omitempty"`
	// Whether RBL checking is globally enabled
	Enabled bool `protobuf:"varint,2,opt,name=enabled,proto3" json:"enabled,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,3,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetRblConfigRequest) Reset() {
	*x = SetRblConfigRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[10]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetRblConfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetRblConfigRequest) ProtoMessage() {}

func (x *SetRblConfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[10]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetRblConfigRequest.ProtoReflect.Descriptor instead.
func (*SetRblConfigRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{10}
}

func (x *SetRblConfigRequest) GetProviders() []*RblConfig {
	if x != nil {
		return x.Providers
	}
	return nil
}

func (x *SetRblConfigRequest) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

func (x *SetRblConfigRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// SetRblConfigResponse is returned after configuring RBL.
type SetRblConfigResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetRblConfigResponse) Reset() {
	*x = SetRblConfigResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[11]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetRblConfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetRblConfigResponse) ProtoMessage() {}

func (x *SetRblConfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[11]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetRblConfigResponse.ProtoReflect.Descriptor instead.
func (*SetRblConfigResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{11}
}

func (x *SetRblConfigResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *SetRblConfigResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// GetRblConfigRequest retrieves the current RBL configuration.
type GetRblConfigRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AuthToken     string                 `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetRblConfigRequest) Reset() {
	*x = GetRblConfigRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[12]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetRblConfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetRblConfigRequest) ProtoMessage() {}

func (x *GetRblConfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[12]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetRblConfigRequest.ProtoReflect.Descriptor instead.
func (*GetRblConfigRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{12}
}

func (x *GetRblConfigRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GetRblConfigResponse contains the current RBL configuration.
type GetRblConfigResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Enabled       bool                   `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	Providers     []*RblConfig           `protobuf:"bytes,2,rep,name=providers,proto3" json:"providers,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetRblConfigResponse) Reset() {
	*x = GetRblConfigResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[13]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetRblConfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetRblConfigResponse) ProtoMessage() {}

func (x *GetRblConfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[13]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetRblConfigResponse.ProtoReflect.Descriptor instead.
func (*GetRblConfigResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{13}
}

func (x *GetRblConfigResponse) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

func (x *GetRblConfigResponse) GetProviders() []*RblConfig {
	if x != nil {
		return x.Providers
	}
	return nil
}

// FlushCacheRequest clears the DNS and/or RBL cache.
type FlushCacheRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *FlushCacheRequest) Reset() {
	*x = FlushCacheRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[14]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *FlushCacheRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FlushCacheRequest) ProtoMessage() {}

func (x *FlushCacheRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[14]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FlushCacheRequest.ProtoReflect.Descriptor instead.
func (*FlushCacheRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{14}
}

func (x *FlushCacheRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// FlushCacheResponse is returned after flushing the cache.
type FlushCacheResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *FlushCacheResponse) Reset() {
	*x = FlushCacheResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[15]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *FlushCacheResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FlushCacheResponse) ProtoMessage() {}

func (x *FlushCacheResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[15]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FlushCacheResponse.ProtoReflect.Descriptor instead.
func (*FlushCacheResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{15}
}

func (x *FlushCacheResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *FlushCacheResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// NetworkScope defines a DNS view that groups DNS records and associations.
// Each scope has a reserved .home domain used as the default search domain.
type NetworkScope struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Unique name for this network scope (e.g. "office", "lab")
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The reserved .home domain for this scope (e.g. "office.home.")
	// If empty on creation, defaults to "<name>.home."
	HomeDomain    string `protobuf:"bytes,2,opt,name=home_domain,json=homeDomain,proto3" json:"home_domain,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *NetworkScope) Reset() {
	*x = NetworkScope{}
	mi := &file_rolodex_dns_proto_msgTypes[16]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *NetworkScope) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*NetworkScope) ProtoMessage() {}

func (x *NetworkScope) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[16]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use NetworkScope.ProtoReflect.Descriptor instead.
func (*NetworkScope) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{16}
}

func (x *NetworkScope) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *NetworkScope) GetHomeDomain() string {
	if x != nil {
		return x.HomeDomain
	}
	return ""
}

// CreateNetworkScopeRequest creates a new network scope.
type CreateNetworkScopeRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The network scope to create
	Scope *NetworkScope `protobuf:"bytes,1,opt,name=scope,proto3" json:"scope,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *CreateNetworkScopeRequest) Reset() {
	*x = CreateNetworkScopeRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[17]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *CreateNetworkScopeRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNetworkScopeRequest) ProtoMessage() {}

func (x *CreateNetworkScopeRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[17]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateNetworkScopeRequest.ProtoReflect.Descriptor instead.
func (*CreateNetworkScopeRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{17}
}

func (x *CreateNetworkScopeRequest) GetScope() *NetworkScope {
	if x != nil {
		return x.Scope
	}
	return nil
}

func (x *CreateNetworkScopeRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// CreateNetworkScopeResponse is returned after creating a scope.
type CreateNetworkScopeResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *CreateNetworkScopeResponse) Reset() {
	*x = CreateNetworkScopeResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[18]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *CreateNetworkScopeResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateNetworkScopeResponse) ProtoMessage() {}

func (x *CreateNetworkScopeResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[18]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateNetworkScopeResponse.ProtoReflect.Descriptor instead.
func (*CreateNetworkScopeResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{18}
}

func (x *CreateNetworkScopeResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *CreateNetworkScopeResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// DeleteNetworkScopeRequest deletes a network scope and all its records and associations.
type DeleteNetworkScopeRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Name of the scope to delete
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DeleteNetworkScopeRequest) Reset() {
	*x = DeleteNetworkScopeRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[19]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DeleteNetworkScopeRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteNetworkScopeRequest) ProtoMessage() {}

func (x *DeleteNetworkScopeRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[19]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteNetworkScopeRequest.ProtoReflect.Descriptor instead.
func (*DeleteNetworkScopeRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{19}
}

func (x *DeleteNetworkScopeRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *DeleteNetworkScopeRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// DeleteNetworkScopeResponse is returned after deleting a scope.
type DeleteNetworkScopeResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DeleteNetworkScopeResponse) Reset() {
	*x = DeleteNetworkScopeResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[20]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DeleteNetworkScopeResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteNetworkScopeResponse) ProtoMessage() {}

func (x *DeleteNetworkScopeResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[20]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteNetworkScopeResponse.ProtoReflect.Descriptor instead.
func (*DeleteNetworkScopeResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{20}
}

func (x *DeleteNetworkScopeResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *DeleteNetworkScopeResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// ListNetworkScopesRequest retrieves all network scopes.
type ListNetworkScopesRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AuthToken     string                 `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListNetworkScopesRequest) Reset() {
	*x = ListNetworkScopesRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[21]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListNetworkScopesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListNetworkScopesRequest) ProtoMessage() {}

func (x *ListNetworkScopesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[21]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListNetworkScopesRequest.ProtoReflect.Descriptor instead.
func (*ListNetworkScopesRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{21}
}

func (x *ListNetworkScopesRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// ListNetworkScopesResponse contains all network scopes.
type ListNetworkScopesResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Scopes        []*NetworkScope        `protobuf:"bytes,1,rep,name=scopes,proto3" json:"scopes,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListNetworkScopesResponse) Reset() {
	*x = ListNetworkScopesResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[22]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListNetworkScopesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListNetworkScopesResponse) ProtoMessage() {}

func (x *ListNetworkScopesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[22]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListNetworkScopesResponse.ProtoReflect.Descriptor instead.
func (*ListNetworkScopesResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{22}
}

func (x *ListNetworkScopesResponse) GetScopes() []*NetworkScope {
	if x != nil {
		return x.Scopes
	}
	return nil
}

// JoinNetworkRequest associates an IP address with a network scope.
// The association has a TTL that must be refreshed to maintain DNS resolution.
type JoinNetworkRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The IP address to associate (e.g. "192.168.1.100")
	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	// The network scope name to join
	ScopeName string `protobuf:"bytes,2,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	// TTL in seconds for this association. Must be refreshed before expiry.
	// Default: 300 seconds if set to 0
	TtlSeconds uint64 `protobuf:"varint,3,opt,name=ttl_seconds,json=ttlSeconds,proto3" json:"ttl_seconds,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,4,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *JoinNetworkRequest) Reset() {
	*x = JoinNetworkRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[23]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *JoinNetworkRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*JoinNetworkRequest) ProtoMessage() {}

func (x *JoinNetworkRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[23]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use JoinNetworkRequest.ProtoReflect.Descriptor instead.
func (*JoinNetworkRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{23}
}

func (x *JoinNetworkRequest) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *JoinNetworkRequest) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *JoinNetworkRequest) GetTtlSeconds() uint64 {
	if x != nil {
		return x.TtlSeconds
	}
	return 0
}

func (x *JoinNetworkRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// JoinNetworkResponse is returned after joining a network.
type JoinNetworkResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *JoinNetworkResponse) Reset() {
	*x = JoinNetworkResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[24]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *JoinNetworkResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*JoinNetworkResponse) ProtoMessage() {}

func (x *JoinNetworkResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[24]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use JoinNetworkResponse.ProtoReflect.Descriptor instead.
func (*JoinNetworkResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{24}
}

func (x *JoinNetworkResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *JoinNetworkResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// LeaveNetworkRequest removes an IP address's association with any network scope.
type LeaveNetworkRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The IP address to disassociate
	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *LeaveNetworkRequest) Reset() {
	*x = LeaveNetworkRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[25]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *LeaveNetworkRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*LeaveNetworkRequest) ProtoMessage() {}

func (x *LeaveNetworkRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[25]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use LeaveNetworkRequest.ProtoReflect.Descriptor instead.
func (*LeaveNetworkRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{25}
}

func (x *LeaveNetworkRequest) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *LeaveNetworkRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// LeaveNetworkResponse is returned after leaving a network.
type LeaveNetworkResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *LeaveNetworkResponse) Reset() {
	*x = LeaveNetworkResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[26]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *LeaveNetworkResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*LeaveNetworkResponse) ProtoMessage() {}

func (x *LeaveNetworkResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[26]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use LeaveNetworkResponse.ProtoReflect.Descriptor instead.
func (*LeaveNetworkResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{26}
}

func (x *LeaveNetworkResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *LeaveNetworkResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// GetNetworkAssociationsRequest retrieves network associations.
type GetNetworkAssociationsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Optional: filter by scope name. Empty returns all associations.
	ScopeName string `protobuf:"bytes,1,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetNetworkAssociationsRequest) Reset() {
	*x = GetNetworkAssociationsRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[27]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetNetworkAssociationsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetNetworkAssociationsRequest) ProtoMessage() {}

func (x *GetNetworkAssociationsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[27]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetNetworkAssociationsRequest.ProtoReflect.Descriptor instead.
func (*GetNetworkAssociationsRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{27}
}

func (x *GetNetworkAssociationsRequest) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *GetNetworkAssociationsRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// NetworkAssociation represents a client IP's membership in a network scope.
type NetworkAssociation struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The associated IP address
	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	// The network scope name
	ScopeName string `protobuf:"bytes,2,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	// TTL in seconds for this association
	TtlSeconds    uint64 `protobuf:"varint,3,opt,name=ttl_seconds,json=ttlSeconds,proto3" json:"ttl_seconds,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *NetworkAssociation) Reset() {
	*x = NetworkAssociation{}
	mi := &file_rolodex_dns_proto_msgTypes[28]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *NetworkAssociation) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*NetworkAssociation) ProtoMessage() {}

func (x *NetworkAssociation) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[28]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use NetworkAssociation.ProtoReflect.Descriptor instead.
func (*NetworkAssociation) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{28}
}

func (x *NetworkAssociation) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *NetworkAssociation) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *NetworkAssociation) GetTtlSeconds() uint64 {
	if x != nil {
		return x.TtlSeconds
	}
	return 0
}

// GetNetworkAssociationsResponse contains network associations.
type GetNetworkAssociationsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Associations  []*NetworkAssociation  `protobuf:"bytes,1,rep,name=associations,proto3" json:"associations,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetNetworkAssociationsResponse) Reset() {
	*x = GetNetworkAssociationsResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[29]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetNetworkAssociationsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetNetworkAssociationsResponse) ProtoMessage() {}

func (x *GetNetworkAssociationsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[29]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetNetworkAssociationsResponse.ProtoReflect.Descriptor instead.
func (*GetNetworkAssociationsResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{29}
}

func (x *GetNetworkAssociationsResponse) GetAssociations() []*NetworkAssociation {
	if x != nil {
		return x.Associations
	}
	return nil
}

// AddScopedRecordRequest adds a DNS record to a specific network scope.
type AddScopedRecordRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The network scope name to add the record to
	ScopeName string `protobuf:"bytes,1,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	// The DNS record to add
	Record *DnsRecord `protobuf:"bytes,2,opt,name=record,proto3" json:"record,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,3,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddScopedRecordRequest) Reset() {
	*x = AddScopedRecordRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[30]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AddScopedRecordRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddScopedRecordRequest) ProtoMessage() {}

func (x *AddScopedRecordRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[30]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddScopedRecordRequest.ProtoReflect.Descriptor instead.
func (*AddScopedRecordRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{30}
}

func (x *AddScopedRecordRequest) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *AddScopedRecordRequest) GetRecord() *DnsRecord {
	if x != nil {
		return x.Record
	}
	return nil
}

func (x *AddScopedRecordRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// AddScopedRecordResponse is returned after adding a scoped record.
type AddScopedRecordResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddScopedRecordResponse) Reset() {
	*x = AddScopedRecordResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[31]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AddScopedRecordResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddScopedRecordResponse) ProtoMessage() {}

func (x *AddScopedRecordResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[31]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddScopedRecordResponse.ProtoReflect.Descriptor instead.
func (*AddScopedRecordResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{31}
}

func (x *AddScopedRecordResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *AddScopedRecordResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// RemoveScopedRecordRequest removes DNS records from a specific network scope.
type RemoveScopedRecordRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The network scope name
	ScopeName string `protobuf:"bytes,1,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	// Fully qualified domain name to remove records for
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// Optional: record type filter
	RecordType RecordType `protobuf:"varint,3,opt,name=record_type,json=recordType,proto3,enum=rolodex_dns.RecordType" json:"record_type,omitempty"`
	// Optional: exact value filter
	Value string `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,5,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveScopedRecordRequest) Reset() {
	*x = RemoveScopedRecordRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[32]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveScopedRecordRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveScopedRecordRequest) ProtoMessage() {}

func (x *RemoveScopedRecordRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[32]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveScopedRecordRequest.ProtoReflect.Descriptor instead.
func (*RemoveScopedRecordRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{32}
}

func (x *RemoveScopedRecordRequest) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *RemoveScopedRecordRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *RemoveScopedRecordRequest) GetRecordType() RecordType {
	if x != nil {
		return x.RecordType
	}
	return RecordType_A
}

func (x *RemoveScopedRecordRequest) GetValue() string {
	if x != nil {
		return x.Value
	}
	return ""
}

func (x *RemoveScopedRecordRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// RemoveScopedRecordResponse is returned after removing scoped records.
type RemoveScopedRecordResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	RemovedCount  uint32                 `protobuf:"varint,2,opt,name=removed_count,json=removedCount,proto3" json:"removed_count,omitempty"`
	Message       string                 `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveScopedRecordResponse) Reset() {
	*x = RemoveScopedRecordResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[33]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveScopedRecordResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveScopedRecordResponse) ProtoMessage() {}

func (x *RemoveScopedRecordResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[33]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveScopedRecordResponse.ProtoReflect.Descriptor instead.
func (*RemoveScopedRecordResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{33}
}

func (x *RemoveScopedRecordResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *RemoveScopedRecordResponse) GetRemovedCount() uint32 {
	if x != nil {
		return x.RemovedCount
	}
	return 0
}

func (x *RemoveScopedRecordResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// ListScopedRecordsRequest queries DNS records within a network scope.
type ListScopedRecordsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The network scope name
	ScopeName string `protobuf:"bytes,1,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	// Optional: filter by domain name (supports wildcard prefix "*.")
	NameFilter string `protobuf:"bytes,2,opt,name=name_filter,json=nameFilter,proto3" json:"name_filter,omitempty"`
	// Optional: filter by record type
	RecordTypeFilter RecordType `protobuf:"varint,3,opt,name=record_type_filter,json=recordTypeFilter,proto3,enum=rolodex_dns.RecordType" json:"record_type_filter,omitempty"`
	// Whether to apply the record_type_filter
	FilterByType bool `protobuf:"varint,4,opt,name=filter_by_type,json=filterByType,proto3" json:"filter_by_type,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,5,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListScopedRecordsRequest) Reset() {
	*x = ListScopedRecordsRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[34]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListScopedRecordsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListScopedRecordsRequest) ProtoMessage() {}

func (x *ListScopedRecordsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[34]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListScopedRecordsRequest.ProtoReflect.Descriptor instead.
func (*ListScopedRecordsRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{34}
}

func (x *ListScopedRecordsRequest) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *ListScopedRecordsRequest) GetNameFilter() string {
	if x != nil {
		return x.NameFilter
	}
	return ""
}

func (x *ListScopedRecordsRequest) GetRecordTypeFilter() RecordType {
	if x != nil {
		return x.RecordTypeFilter
	}
	return RecordType_A
}

func (x *ListScopedRecordsRequest) GetFilterByType() bool {
	if x != nil {
		return x.FilterByType
	}
	return false
}

func (x *ListScopedRecordsRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// ListScopedRecordsResponse contains matching scoped DNS records.
type ListScopedRecordsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Records       []*DnsRecord           `protobuf:"bytes,1,rep,name=records,proto3" json:"records,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListScopedRecordsResponse) Reset() {
	*x = ListScopedRecordsResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[35]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListScopedRecordsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListScopedRecordsResponse) ProtoMessage() {}

func (x *ListScopedRecordsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[35]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListScopedRecordsResponse.ProtoReflect.Descriptor instead.
func (*ListScopedRecordsResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{35}
}

func (x *ListScopedRecordsResponse) GetRecords() []*DnsRecord {
	if x != nil {
		return x.Records
	}
	return nil
}

// GetSearchDomainsRequest retrieves the search domains for an IP address.
type GetSearchDomainsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The IP address to look up search domains for
	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetSearchDomainsRequest) Reset() {
	*x = GetSearchDomainsRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[36]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetSearchDomainsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetSearchDomainsRequest) ProtoMessage() {}

func (x *GetSearchDomainsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[36]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetSearchDomainsRequest.ProtoReflect.Descriptor instead.
func (*GetSearchDomainsRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{36}
}

func (x *GetSearchDomainsRequest) GetIpAddress() string {
	if x != nil {
		return x.IpAddress
	}
	return ""
}

func (x *GetSearchDomainsRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GetSearchDomainsResponse contains the search domains for an IP.
type GetSearchDomainsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The search domains (typically the .home domain of the associated scope)
	SearchDomains []string `protobuf:"bytes,1,rep,name=search_domains,json=searchDomains,proto3" json:"search_domains,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetSearchDomainsResponse) Reset() {
	*x = GetSearchDomainsResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[37]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetSearchDomainsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetSearchDomainsResponse) ProtoMessage() {}

func (x *GetSearchDomainsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[37]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetSearchDomainsResponse.ProtoReflect.Descriptor instead.
func (*GetSearchDomainsResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{37}
}

func (x *GetSearchDomainsResponse) GetSearchDomains() []string {
	if x != nil {
		return x.SearchDomains
	}
	return nil
}

// AddAuthoritativeZoneRequest declares a zone as authoritative.
type AddAuthoritativeZoneRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The zone name (e.g. "example.com.")
	Zone string `protobuf:"bytes,1,opt,name=zone,proto3" json:"zone,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddAuthoritativeZoneRequest) Reset() {
	*x = AddAuthoritativeZoneRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[38]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AddAuthoritativeZoneRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddAuthoritativeZoneRequest) ProtoMessage() {}

func (x *AddAuthoritativeZoneRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[38]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddAuthoritativeZoneRequest.ProtoReflect.Descriptor instead.
func (*AddAuthoritativeZoneRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{38}
}

func (x *AddAuthoritativeZoneRequest) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *AddAuthoritativeZoneRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// AddAuthoritativeZoneResponse is returned after adding an authoritative zone.
type AddAuthoritativeZoneResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddAuthoritativeZoneResponse) Reset() {
	*x = AddAuthoritativeZoneResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[39]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AddAuthoritativeZoneResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddAuthoritativeZoneResponse) ProtoMessage() {}

func (x *AddAuthoritativeZoneResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[39]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddAuthoritativeZoneResponse.ProtoReflect.Descriptor instead.
func (*AddAuthoritativeZoneResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{39}
}

func (x *AddAuthoritativeZoneResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *AddAuthoritativeZoneResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// RemoveAuthoritativeZoneRequest removes a zone from the authoritative list.
type RemoveAuthoritativeZoneRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The zone name to remove
	Zone string `protobuf:"bytes,1,opt,name=zone,proto3" json:"zone,omitempty"`
	// Shared secret for authentication
	AuthToken     string `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveAuthoritativeZoneRequest) Reset() {
	*x = RemoveAuthoritativeZoneRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[40]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveAuthoritativeZoneRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveAuthoritativeZoneRequest) ProtoMessage() {}

func (x *RemoveAuthoritativeZoneRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[40]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveAuthoritativeZoneRequest.ProtoReflect.Descriptor instead.
func (*RemoveAuthoritativeZoneRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{40}
}

func (x *RemoveAuthoritativeZoneRequest) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *RemoveAuthoritativeZoneRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// RemoveAuthoritativeZoneResponse is returned after removing an authoritative zone.
type RemoveAuthoritativeZoneResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveAuthoritativeZoneResponse) Reset() {
	*x = RemoveAuthoritativeZoneResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[41]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveAuthoritativeZoneResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveAuthoritativeZoneResponse) ProtoMessage() {}

func (x *RemoveAuthoritativeZoneResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[41]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveAuthoritativeZoneResponse.ProtoReflect.Descriptor instead.
func (*RemoveAuthoritativeZoneResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{41}
}

func (x *RemoveAuthoritativeZoneResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *RemoveAuthoritativeZoneResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// ListAuthoritativeZonesRequest retrieves all authoritative zones.
type ListAuthoritativeZonesRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AuthToken     string                 `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListAuthoritativeZonesRequest) Reset() {
	*x = ListAuthoritativeZonesRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[42]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListAuthoritativeZonesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListAuthoritativeZonesRequest) ProtoMessage() {}

func (x *ListAuthoritativeZonesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[42]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListAuthoritativeZonesRequest.ProtoReflect.Descriptor instead.
func (*ListAuthoritativeZonesRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{42}
}

func (x *ListAuthoritativeZonesRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// ListAuthoritativeZonesResponse contains all authoritative zones.
type ListAuthoritativeZonesResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Zones         []string               `protobuf:"bytes,1,rep,name=zones,proto3" json:"zones,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListAuthoritativeZonesResponse) Reset() {
	*x = ListAuthoritativeZonesResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[43]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListAuthoritativeZonesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListAuthoritativeZonesResponse) ProtoMessage() {}

func (x *ListAuthoritativeZonesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[43]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListAuthoritativeZonesResponse.ProtoReflect.Descriptor instead.
func (*ListAuthoritativeZonesResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{43}
}

func (x *ListAuthoritativeZonesResponse) GetZones() []string {
	if x != nil {
		return x.Zones
	}
	return nil
}

// GetCacheStatsRequest retrieves DNS cache statistics.
type GetCacheStatsRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AuthToken     string                 `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetCacheStatsRequest) Reset() {
	*x = GetCacheStatsRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[44]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetCacheStatsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetCacheStatsRequest) ProtoMessage() {}

func (x *GetCacheStatsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[44]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetCacheStatsRequest.ProtoReflect.Descriptor instead.
func (*GetCacheStatsRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{44}
}

func (x *GetCacheStatsRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GetCacheStatsResponse contains DNS cache statistics.
type GetCacheStatsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	TotalEntries  uint64                 `protobuf:"varint,1,opt,name=total_entries,json=totalEntries,proto3" json:"total_entries,omitempty"`
	HitCount      uint64                 `protobuf:"varint,2,opt,name=hit_count,json=hitCount,proto3" json:"hit_count,omitempty"`
	MissCount     uint64                 `protobuf:"varint,3,opt,name=miss_count,json=missCount,proto3" json:"miss_count,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetCacheStatsResponse) Reset() {
	*x = GetCacheStatsResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[45]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetCacheStatsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetCacheStatsResponse) ProtoMessage() {}

func (x *GetCacheStatsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[45]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetCacheStatsResponse.ProtoReflect.Descriptor instead.
func (*GetCacheStatsResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{45}
}

func (x *GetCacheStatsResponse) GetTotalEntries() uint64 {
	if x != nil {
		return x.TotalEntries
	}
	return 0
}

func (x *GetCacheStatsResponse) GetHitCount() uint64 {
	if x != nil {
		return x.HitCount
	}
	return 0
}

func (x *GetCacheStatsResponse) GetMissCount() uint64 {
	if x != nil {
		return x.MissCount
	}
	return 0
}

// FlushDnsCacheRequest clears the DNS response cache.
type FlushDnsCacheRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AuthToken     string                 `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *FlushDnsCacheRequest) Reset() {
	*x = FlushDnsCacheRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[46]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *FlushDnsCacheRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FlushDnsCacheRequest) ProtoMessage() {}

func (x *FlushDnsCacheRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[46]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FlushDnsCacheRequest.ProtoReflect.Descriptor instead.
func (*FlushDnsCacheRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{46}
}

func (x *FlushDnsCacheRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// FlushDnsCacheResponse is returned after flushing the DNS cache.
type FlushDnsCacheResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *FlushDnsCacheResponse) Reset() {
	*x = FlushDnsCacheResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[47]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *FlushDnsCacheResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*FlushDnsCacheResponse) ProtoMessage() {}

func (x *FlushDnsCacheResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[47]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use FlushDnsCacheResponse.ProtoReflect.Descriptor instead.
func (*FlushDnsCacheResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{47}
}

func (x *FlushDnsCacheResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *FlushDnsCacheResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// TtlDriftConfig configures TTL drift adjustment.
type TtlDriftConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Mode: "fixed" or "logarithmic"
	Mode string `protobuf:"bytes,1,opt,name=mode,proto3" json:"mode,omitempty"`
	// Fixed adjustment string (e.g. "5m", "-30s") for fixed mode
	FixedAdjustment string `protobuf:"bytes,2,opt,name=fixed_adjustment,json=fixedAdjustment,proto3" json:"fixed_adjustment,omitempty"`
	// Multiplier for logarithmic mode
	LogMultiplier float64 `protobuf:"fixed64,3,opt,name=log_multiplier,json=logMultiplier,proto3" json:"log_multiplier,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *TtlDriftConfig) Reset() {
	*x = TtlDriftConfig{}
	mi := &file_rolodex_dns_proto_msgTypes[48]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *TtlDriftConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TtlDriftConfig) ProtoMessage() {}

func (x *TtlDriftConfig) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[48]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TtlDriftConfig.ProtoReflect.Descriptor instead.
func (*TtlDriftConfig) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{48}
}

func (x *TtlDriftConfig) GetMode() string {
	if x != nil {
		return x.Mode
	}
	return ""
}

func (x *TtlDriftConfig) GetFixedAdjustment() string {
	if x != nil {
		return x.FixedAdjustment
	}
	return ""
}

func (x *TtlDriftConfig) GetLogMultiplier() float64 {
	if x != nil {
		return x.LogMultiplier
	}
	return 0
}

// SetTtlDriftConfigRequest sets the TTL drift configuration.
type SetTtlDriftConfigRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Config        *TtlDriftConfig        `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetTtlDriftConfigRequest) Reset() {
	*x = SetTtlDriftConfigRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[49]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetTtlDriftConfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetTtlDriftConfigRequest) ProtoMessage() {}

func (x *SetTtlDriftConfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[49]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetTtlDriftConfigRequest.ProtoReflect.Descriptor instead.
func (*SetTtlDriftConfigRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{49}
}

func (x *SetTtlDriftConfigRequest) GetConfig() *TtlDriftConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

func (x *SetTtlDriftConfigRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// SetTtlDriftConfigResponse is returned after setting TTL drift config.
type SetTtlDriftConfigResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetTtlDriftConfigResponse) Reset() {
	*x = SetTtlDriftConfigResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[50]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetTtlDriftConfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetTtlDriftConfigResponse) ProtoMessage() {}

func (x *SetTtlDriftConfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[50]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetTtlDriftConfigResponse.ProtoReflect.Descriptor instead.
func (*SetTtlDriftConfigResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{50}
}

func (x *SetTtlDriftConfigResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *SetTtlDriftConfigResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// GetTtlDriftConfigRequest retrieves the TTL drift configuration.
type GetTtlDriftConfigRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AuthToken     string                 `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetTtlDriftConfigRequest) Reset() {
	*x = GetTtlDriftConfigRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[51]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetTtlDriftConfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetTtlDriftConfigRequest) ProtoMessage() {}

func (x *GetTtlDriftConfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[51]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetTtlDriftConfigRequest.ProtoReflect.Descriptor instead.
func (*GetTtlDriftConfigRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{51}
}

func (x *GetTtlDriftConfigRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GetTtlDriftConfigResponse contains the TTL drift configuration.
type GetTtlDriftConfigResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Config        *TtlDriftConfig        `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetTtlDriftConfigResponse) Reset() {
	*x = GetTtlDriftConfigResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[52]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetTtlDriftConfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetTtlDriftConfigResponse) ProtoMessage() {}

func (x *GetTtlDriftConfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[52]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetTtlDriftConfigResponse.ProtoReflect.Descriptor instead.
func (*GetTtlDriftConfigResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{52}
}

func (x *GetTtlDriftConfigResponse) GetConfig() *TtlDriftConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

// QueryLatencyStat represents latency stats for an upstream server.
type QueryLatencyStat struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Server        string                 `protobuf:"bytes,1,opt,name=server,proto3" json:"server,omitempty"`
	AvgLatencyMs  float64                `protobuf:"fixed64,2,opt,name=avg_latency_ms,json=avgLatencyMs,proto3" json:"avg_latency_ms,omitempty"`
	QueryCount    uint64                 `protobuf:"varint,3,opt,name=query_count,json=queryCount,proto3" json:"query_count,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *QueryLatencyStat) Reset() {
	*x = QueryLatencyStat{}
	mi := &file_rolodex_dns_proto_msgTypes[53]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *QueryLatencyStat) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*QueryLatencyStat) ProtoMessage() {}

func (x *QueryLatencyStat) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[53]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use QueryLatencyStat.ProtoReflect.Descriptor instead.
func (*QueryLatencyStat) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{53}
}

func (x *QueryLatencyStat) GetServer() string {
	if x != nil {
		return x.Server
	}
	return ""
}

func (x *QueryLatencyStat) GetAvgLatencyMs() float64 {
	if x != nil {
		return x.AvgLatencyMs
	}
	return 0
}

func (x *QueryLatencyStat) GetQueryCount() uint64 {
	if x != nil {
		return x.QueryCount
	}
	return 0
}

// GetQueryLatencyStatsRequest retrieves upstream query latency statistics.
type GetQueryLatencyStatsRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AuthToken     string                 `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetQueryLatencyStatsRequest) Reset() {
	*x = GetQueryLatencyStatsRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[54]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetQueryLatencyStatsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetQueryLatencyStatsRequest) ProtoMessage() {}

func (x *GetQueryLatencyStatsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[54]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetQueryLatencyStatsRequest.ProtoReflect.Descriptor instead.
func (*GetQueryLatencyStatsRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{54}
}

func (x *GetQueryLatencyStatsRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GetQueryLatencyStatsResponse contains latency statistics.
type GetQueryLatencyStatsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Stats         []*QueryLatencyStat    `protobuf:"bytes,1,rep,name=stats,proto3" json:"stats,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetQueryLatencyStatsResponse) Reset() {
	*x = GetQueryLatencyStatsResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[55]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetQueryLatencyStatsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetQueryLatencyStatsResponse) ProtoMessage() {}

func (x *GetQueryLatencyStatsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[55]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetQueryLatencyStatsResponse.ProtoReflect.Descriptor instead.
func (*GetQueryLatencyStatsResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{55}
}

func (x *GetQueryLatencyStatsResponse) GetStats() []*QueryLatencyStat {
	if x != nil {
		return x.Stats
	}
	return nil
}

// LocalRblEntry represents a local RBL entry.
type LocalRblEntry struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The name or IP to block
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Reason for blocking
	Reason        string `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *LocalRblEntry) Reset() {
	*x = LocalRblEntry{}
	mi := &file_rolodex_dns_proto_msgTypes[56]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *LocalRblEntry) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*LocalRblEntry) ProtoMessage() {}

func (x *LocalRblEntry) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[56]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use LocalRblEntry.ProtoReflect.Descriptor instead.
func (*LocalRblEntry) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{56}
}

func (x *LocalRblEntry) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *LocalRblEntry) GetReason() string {
	if x != nil {
		return x.Reason
	}
	return ""
}

// AddLocalRblEntryRequest adds a local RBL entry.
type AddLocalRblEntryRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Entry         *LocalRblEntry         `protobuf:"bytes,1,opt,name=entry,proto3" json:"entry,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddLocalRblEntryRequest) Reset() {
	*x = AddLocalRblEntryRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[57]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AddLocalRblEntryRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddLocalRblEntryRequest) ProtoMessage() {}

func (x *AddLocalRblEntryRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[57]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddLocalRblEntryRequest.ProtoReflect.Descriptor instead.
func (*AddLocalRblEntryRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{57}
}

func (x *AddLocalRblEntryRequest) GetEntry() *LocalRblEntry {
	if x != nil {
		return x.Entry
	}
	return nil
}

func (x *AddLocalRblEntryRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// AddLocalRblEntryResponse is returned after adding a local RBL entry.
type AddLocalRblEntryResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddLocalRblEntryResponse) Reset() {
	*x = AddLocalRblEntryResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[58]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AddLocalRblEntryResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddLocalRblEntryResponse) ProtoMessage() {}

func (x *AddLocalRblEntryResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[58]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddLocalRblEntryResponse.ProtoReflect.Descriptor instead.
func (*AddLocalRblEntryResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{58}
}

func (x *AddLocalRblEntryResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *AddLocalRblEntryResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// RemoveLocalRblEntryRequest removes a local RBL entry.
type RemoveLocalRblEntryRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Name          string                 `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveLocalRblEntryRequest) Reset() {
	*x = RemoveLocalRblEntryRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[59]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveLocalRblEntryRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveLocalRblEntryRequest) ProtoMessage() {}

func (x *RemoveLocalRblEntryRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[59]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveLocalRblEntryRequest.ProtoReflect.Descriptor instead.
func (*RemoveLocalRblEntryRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{59}
}

func (x *RemoveLocalRblEntryRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *RemoveLocalRblEntryRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// RemoveLocalRblEntryResponse is returned after removing a local RBL entry.
type RemoveLocalRblEntryResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveLocalRblEntryResponse) Reset() {
	*x = RemoveLocalRblEntryResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[60]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveLocalRblEntryResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveLocalRblEntryResponse) ProtoMessage() {}

func (x *RemoveLocalRblEntryResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[60]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveLocalRblEntryResponse.ProtoReflect.Descriptor instead.
func (*RemoveLocalRblEntryResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{60}
}

func (x *RemoveLocalRblEntryResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *RemoveLocalRblEntryResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// ListLocalRblEntriesRequest retrieves all local RBL entries.
type ListLocalRblEntriesRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AuthToken     string                 `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListLocalRblEntriesRequest) Reset() {
	*x = ListLocalRblEntriesRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[61]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListLocalRblEntriesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListLocalRblEntriesRequest) ProtoMessage() {}

func (x *ListLocalRblEntriesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[61]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListLocalRblEntriesRequest.ProtoReflect.Descriptor instead.
func (*ListLocalRblEntriesRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{61}
}

func (x *ListLocalRblEntriesRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// ListLocalRblEntriesResponse contains all local RBL entries.
type ListLocalRblEntriesResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Entries       []*LocalRblEntry       `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListLocalRblEntriesResponse) Reset() {
	*x = ListLocalRblEntriesResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[62]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListLocalRblEntriesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListLocalRblEntriesResponse) ProtoMessage() {}

func (x *ListLocalRblEntriesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[62]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListLocalRblEntriesResponse.ProtoReflect.Descriptor instead.
func (*ListLocalRblEntriesResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{62}
}

func (x *ListLocalRblEntriesResponse) GetEntries() []*LocalRblEntry {
	if x != nil {
		return x.Entries
	}
	return nil
}

// TlsConfig configures TLS certificate settings.
type TlsConfig struct {
	state          protoimpl.MessageState `protogen:"open.v1"`
	CertPath       string                 `protobuf:"bytes,1,opt,name=cert_path,json=certPath,proto3" json:"cert_path,omitempty"`
	KeyPath        string                 `protobuf:"bytes,2,opt,name=key_path,json=keyPath,proto3" json:"key_path,omitempty"`
	AutoSelfSigned bool                   `protobuf:"varint,3,opt,name=auto_self_signed,json=autoSelfSigned,proto3" json:"auto_self_signed,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *TlsConfig) Reset() {
	*x = TlsConfig{}
	mi := &file_rolodex_dns_proto_msgTypes[63]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *TlsConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*TlsConfig) ProtoMessage() {}

func (x *TlsConfig) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[63]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use TlsConfig.ProtoReflect.Descriptor instead.
func (*TlsConfig) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{63}
}

func (x *TlsConfig) GetCertPath() string {
	if x != nil {
		return x.CertPath
	}
	return ""
}

func (x *TlsConfig) GetKeyPath() string {
	if x != nil {
		return x.KeyPath
	}
	return ""
}

func (x *TlsConfig) GetAutoSelfSigned() bool {
	if x != nil {
		return x.AutoSelfSigned
	}
	return false
}

// DotConfig configures DNS-over-TLS.
type DotConfig struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Bind          string                 `protobuf:"bytes,1,opt,name=bind,proto3" json:"bind,omitempty"`
	Tls           *TlsConfig             `protobuf:"bytes,2,opt,name=tls,proto3" json:"tls,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DotConfig) Reset() {
	*x = DotConfig{}
	mi := &file_rolodex_dns_proto_msgTypes[64]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DotConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DotConfig) ProtoMessage() {}

func (x *DotConfig) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[64]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DotConfig.ProtoReflect.Descriptor instead.
func (*DotConfig) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{64}
}

func (x *DotConfig) GetBind() string {
	if x != nil {
		return x.Bind
	}
	return ""
}

func (x *DotConfig) GetTls() *TlsConfig {
	if x != nil {
		return x.Tls
	}
	return nil
}

// SetDotConfigRequest sets the DoT configuration.
type SetDotConfigRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Config        *DotConfig             `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetDotConfigRequest) Reset() {
	*x = SetDotConfigRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[65]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetDotConfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetDotConfigRequest) ProtoMessage() {}

func (x *SetDotConfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[65]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetDotConfigRequest.ProtoReflect.Descriptor instead.
func (*SetDotConfigRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{65}
}

func (x *SetDotConfigRequest) GetConfig() *DotConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

func (x *SetDotConfigRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// SetDotConfigResponse is returned after setting DoT config.
type SetDotConfigResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetDotConfigResponse) Reset() {
	*x = SetDotConfigResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[66]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetDotConfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetDotConfigResponse) ProtoMessage() {}

func (x *SetDotConfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[66]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetDotConfigResponse.ProtoReflect.Descriptor instead.
func (*SetDotConfigResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{66}
}

func (x *SetDotConfigResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *SetDotConfigResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// GetDotConfigRequest retrieves the DoT configuration.
type GetDotConfigRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AuthToken     string                 `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetDotConfigRequest) Reset() {
	*x = GetDotConfigRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[67]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetDotConfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetDotConfigRequest) ProtoMessage() {}

func (x *GetDotConfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[67]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetDotConfigRequest.ProtoReflect.Descriptor instead.
func (*GetDotConfigRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{67}
}

func (x *GetDotConfigRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GetDotConfigResponse contains the DoT configuration.
type GetDotConfigResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Config        *DotConfig             `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetDotConfigResponse) Reset() {
	*x = GetDotConfigResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[68]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetDotConfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetDotConfigResponse) ProtoMessage() {}

func (x *GetDotConfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[68]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetDotConfigResponse.ProtoReflect.Descriptor instead.
func (*GetDotConfigResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{68}
}

func (x *GetDotConfigResponse) GetConfig() *DotConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

// DohConfig configures DNS-over-HTTPS.
type DohConfig struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Bind          string                 `protobuf:"bytes,1,opt,name=bind,proto3" json:"bind,omitempty"`
	Tls           *TlsConfig             `protobuf:"bytes,2,opt,name=tls,proto3" json:"tls,omitempty"`
	EnableH3      bool                   `protobuf:"varint,3,opt,name=enable_h3,json=enableH3,proto3" json:"enable_h3,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DohConfig) Reset() {
	*x = DohConfig{}
	mi := &file_rolodex_dns_proto_msgTypes[69]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DohConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DohConfig) ProtoMessage() {}

func (x *DohConfig) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[69]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DohConfig.ProtoReflect.Descriptor instead.
func (*DohConfig) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{69}
}

func (x *DohConfig) GetBind() string {
	if x != nil {
		return x.Bind
	}
	return ""
}

func (x *DohConfig) GetTls() *TlsConfig {
	if x != nil {
		return x.Tls
	}
	return nil
}

func (x *DohConfig) GetEnableH3() bool {
	if x != nil {
		return x.EnableH3
	}
	return false
}

// SetDohConfigRequest sets the DoH configuration.
type SetDohConfigRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Config        *DohConfig             `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetDohConfigRequest) Reset() {
	*x = SetDohConfigRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[70]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetDohConfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetDohConfigRequest) ProtoMessage() {}

func (x *SetDohConfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[70]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetDohConfigRequest.ProtoReflect.Descriptor instead.
func (*SetDohConfigRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{70}
}

func (x *SetDohConfigRequest) GetConfig() *DohConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

func (x *SetDohConfigRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// SetDohConfigResponse is returned after setting DoH config.
type SetDohConfigResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetDohConfigResponse) Reset() {
	*x = SetDohConfigResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[71]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetDohConfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetDohConfigResponse) ProtoMessage() {}

func (x *SetDohConfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[71]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetDohConfigResponse.ProtoReflect.Descriptor instead.
func (*SetDohConfigResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{71}
}

func (x *SetDohConfigResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *SetDohConfigResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// GetDohConfigRequest retrieves the DoH configuration.
type GetDohConfigRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AuthToken     string                 `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetDohConfigRequest) Reset() {
	*x = GetDohConfigRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[72]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetDohConfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetDohConfigRequest) ProtoMessage() {}

func (x *GetDohConfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[72]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetDohConfigRequest.ProtoReflect.Descriptor instead.
func (*GetDohConfigRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{72}
}

func (x *GetDohConfigRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GetDohConfigResponse contains the DoH configuration.
type GetDohConfigResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Config        *DohConfig             `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetDohConfigResponse) Reset() {
	*x = GetDohConfigResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[73]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetDohConfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetDohConfigResponse) ProtoMessage() {}

func (x *GetDohConfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[73]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetDohConfigResponse.ProtoReflect.Descriptor instead.
func (*GetDohConfigResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{73}
}

func (x *GetDohConfigResponse) GetConfig() *DohConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

// DoqConfig configures DNS-over-QUIC.
type DoqConfig struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Bind          string                 `protobuf:"bytes,1,opt,name=bind,proto3" json:"bind,omitempty"`
	Tls           *TlsConfig             `protobuf:"bytes,2,opt,name=tls,proto3" json:"tls,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DoqConfig) Reset() {
	*x = DoqConfig{}
	mi := &file_rolodex_dns_proto_msgTypes[74]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DoqConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DoqConfig) ProtoMessage() {}

func (x *DoqConfig) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[74]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DoqConfig.ProtoReflect.Descriptor instead.
func (*DoqConfig) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{74}
}

func (x *DoqConfig) GetBind() string {
	if x != nil {
		return x.Bind
	}
	return ""
}

func (x *DoqConfig) GetTls() *TlsConfig {
	if x != nil {
		return x.Tls
	}
	return nil
}

// SetDoqConfigRequest sets the DoQ configuration.
type SetDoqConfigRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Config        *DoqConfig             `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetDoqConfigRequest) Reset() {
	*x = SetDoqConfigRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[75]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetDoqConfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetDoqConfigRequest) ProtoMessage() {}

func (x *SetDoqConfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[75]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetDoqConfigRequest.ProtoReflect.Descriptor instead.
func (*SetDoqConfigRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{75}
}

func (x *SetDoqConfigRequest) GetConfig() *DoqConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

func (x *SetDoqConfigRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// SetDoqConfigResponse is returned after setting DoQ config.
type SetDoqConfigResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetDoqConfigResponse) Reset() {
	*x = SetDoqConfigResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[76]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetDoqConfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetDoqConfigResponse) ProtoMessage() {}

func (x *SetDoqConfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[76]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetDoqConfigResponse.ProtoReflect.Descriptor instead.
func (*SetDoqConfigResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{76}
}

func (x *SetDoqConfigResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *SetDoqConfigResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// GetDoqConfigRequest retrieves the DoQ configuration.
type GetDoqConfigRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AuthToken     string                 `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetDoqConfigRequest) Reset() {
	*x = GetDoqConfigRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[77]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetDoqConfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetDoqConfigRequest) ProtoMessage() {}

func (x *GetDoqConfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[77]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetDoqConfigRequest.ProtoReflect.Descriptor instead.
func (*GetDoqConfigRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{77}
}

func (x *GetDoqConfigRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GetDoqConfigResponse contains the DoQ configuration.
type GetDoqConfigResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Config        *DoqConfig             `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetDoqConfigResponse) Reset() {
	*x = GetDoqConfigResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[78]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetDoqConfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetDoqConfigResponse) ProtoMessage() {}

func (x *GetDoqConfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[78]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetDoqConfigResponse.ProtoReflect.Descriptor instead.
func (*GetDoqConfigResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{78}
}

func (x *GetDoqConfigResponse) GetConfig() *DoqConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

// ProxyConfig configures HTTP proxy for DNS forwarding.
type ProxyConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Proxy URL (e.g. "http://proxy:8080")
	Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
	// Optional proxy authentication ("user:pass")
	Auth string `protobuf:"bytes,2,opt,name=auth,proto3" json:"auth,omitempty"`
	// Mode: "connect", "socks5", or "doh"
	Mode          string `protobuf:"bytes,3,opt,name=mode,proto3" json:"mode,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ProxyConfig) Reset() {
	*x = ProxyConfig{}
	mi := &file_rolodex_dns_proto_msgTypes[79]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ProxyConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ProxyConfig) ProtoMessage() {}

func (x *ProxyConfig) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[79]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ProxyConfig.ProtoReflect.Descriptor instead.
func (*ProxyConfig) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{79}
}

func (x *ProxyConfig) GetUrl() string {
	if x != nil {
		return x.Url
	}
	return ""
}

func (x *ProxyConfig) GetAuth() string {
	if x != nil {
		return x.Auth
	}
	return ""
}

func (x *ProxyConfig) GetMode() string {
	if x != nil {
		return x.Mode
	}
	return ""
}

// SetProxyConfigRequest sets the proxy configuration.
type SetProxyConfigRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Config        *ProxyConfig           `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetProxyConfigRequest) Reset() {
	*x = SetProxyConfigRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[80]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetProxyConfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetProxyConfigRequest) ProtoMessage() {}

func (x *SetProxyConfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[80]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetProxyConfigRequest.ProtoReflect.Descriptor instead.
func (*SetProxyConfigRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{80}
}

func (x *SetProxyConfigRequest) GetConfig() *ProxyConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

func (x *SetProxyConfigRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// SetProxyConfigResponse is returned after setting proxy config.
type SetProxyConfigResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetProxyConfigResponse) Reset() {
	*x = SetProxyConfigResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[81]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetProxyConfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetProxyConfigResponse) ProtoMessage() {}

func (x *SetProxyConfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[81]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetProxyConfigResponse.ProtoReflect.Descriptor instead.
func (*SetProxyConfigResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{81}
}

func (x *SetProxyConfigResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *SetProxyConfigResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// GetProxyConfigRequest retrieves the proxy configuration.
type GetProxyConfigRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AuthToken     string                 `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetProxyConfigRequest) Reset() {
	*x = GetProxyConfigRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[82]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetProxyConfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetProxyConfigRequest) ProtoMessage() {}

func (x *GetProxyConfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[82]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetProxyConfigRequest.ProtoReflect.Descriptor instead.
func (*GetProxyConfigRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{82}
}

func (x *GetProxyConfigRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GetProxyConfigResponse contains the proxy configuration.
type GetProxyConfigResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Config        *ProxyConfig           `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetProxyConfigResponse) Reset() {
	*x = GetProxyConfigResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[83]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetProxyConfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetProxyConfigResponse) ProtoMessage() {}

func (x *GetProxyConfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[83]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetProxyConfigResponse.ProtoReflect.Descriptor instead.
func (*GetProxyConfigResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{83}
}

func (x *GetProxyConfigResponse) GetConfig() *ProxyConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

// DnssecKey represents a DNSSEC signing key.
type DnssecKey struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            int64                  `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Zone          string                 `protobuf:"bytes,2,opt,name=zone,proto3" json:"zone,omitempty"`
	ScopeName     string                 `protobuf:"bytes,3,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	Algorithm     string                 `protobuf:"bytes,4,opt,name=algorithm,proto3" json:"algorithm,omitempty"`
	KeyType       string                 `protobuf:"bytes,5,opt,name=key_type,json=keyType,proto3" json:"key_type,omitempty"`
	KeyTag        uint32                 `protobuf:"varint,6,opt,name=key_tag,json=keyTag,proto3" json:"key_tag,omitempty"`
	CreatedAt     int64                  `protobuf:"varint,7,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"`
	ExpiresAt     int64                  `protobuf:"varint,8,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
	Active        bool                   `protobuf:"varint,9,opt,name=active,proto3" json:"active,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DnssecKey) Reset() {
	*x = DnssecKey{}
	mi := &file_rolodex_dns_proto_msgTypes[84]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DnssecKey) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DnssecKey) ProtoMessage() {}

func (x *DnssecKey) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[84]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DnssecKey.ProtoReflect.Descriptor instead.
func (*DnssecKey) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{84}
}

func (x *DnssecKey) GetId() int64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *DnssecKey) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *DnssecKey) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *DnssecKey) GetAlgorithm() string {
	if x != nil {
		return x.Algorithm
	}
	return ""
}

func (x *DnssecKey) GetKeyType() string {
	if x != nil {
		return x.KeyType
	}
	return ""
}

func (x *DnssecKey) GetKeyTag() uint32 {
	if x != nil {
		return x.KeyTag
	}
	return 0
}

func (x *DnssecKey) GetCreatedAt() int64 {
	if x != nil {
		return x.CreatedAt
	}
	return 0
}

func (x *DnssecKey) GetExpiresAt() int64 {
	if x != nil {
		return x.ExpiresAt
	}
	return 0
}

func (x *DnssecKey) GetActive() bool {
	if x != nil {
		return x.Active
	}
	return false
}

// GenerateDnssecKeyRequest generates a new DNSSEC key pair.
type GenerateDnssecKeyRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Zone          string                 `protobuf:"bytes,1,opt,name=zone,proto3" json:"zone,omitempty"`
	Algorithm     string                 `protobuf:"bytes,2,opt,name=algorithm,proto3" json:"algorithm,omitempty"`
	KeyType       string                 `protobuf:"bytes,3,opt,name=key_type,json=keyType,proto3" json:"key_type,omitempty"`
	AuthToken     string                 `protobuf:"bytes,4,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GenerateDnssecKeyRequest) Reset() {
	*x = GenerateDnssecKeyRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[85]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GenerateDnssecKeyRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GenerateDnssecKeyRequest) ProtoMessage() {}

func (x *GenerateDnssecKeyRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[85]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GenerateDnssecKeyRequest.ProtoReflect.Descriptor instead.
func (*GenerateDnssecKeyRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{85}
}

func (x *GenerateDnssecKeyRequest) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *GenerateDnssecKeyRequest) GetAlgorithm() string {
	if x != nil {
		return x.Algorithm
	}
	return ""
}

func (x *GenerateDnssecKeyRequest) GetKeyType() string {
	if x != nil {
		return x.KeyType
	}
	return ""
}

func (x *GenerateDnssecKeyRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GenerateDnssecKeyResponse is returned after generating a DNSSEC key.
type GenerateDnssecKeyResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	Key           *DnssecKey             `protobuf:"bytes,3,opt,name=key,proto3" json:"key,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GenerateDnssecKeyResponse) Reset() {
	*x = GenerateDnssecKeyResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[86]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GenerateDnssecKeyResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GenerateDnssecKeyResponse) ProtoMessage() {}

func (x *GenerateDnssecKeyResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[86]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GenerateDnssecKeyResponse.ProtoReflect.Descriptor instead.
func (*GenerateDnssecKeyResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{86}
}

func (x *GenerateDnssecKeyResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *GenerateDnssecKeyResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

func (x *GenerateDnssecKeyResponse) GetKey() *DnssecKey {
	if x != nil {
		return x.Key
	}
	return nil
}

// ListDnssecKeysRequest retrieves DNSSEC keys.
type ListDnssecKeysRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Zone          string                 `protobuf:"bytes,1,opt,name=zone,proto3" json:"zone,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListDnssecKeysRequest) Reset() {
	*x = ListDnssecKeysRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[87]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListDnssecKeysRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListDnssecKeysRequest) ProtoMessage() {}

func (x *ListDnssecKeysRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[87]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListDnssecKeysRequest.ProtoReflect.Descriptor instead.
func (*ListDnssecKeysRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{87}
}

func (x *ListDnssecKeysRequest) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *ListDnssecKeysRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// ListDnssecKeysResponse contains DNSSEC keys.
type ListDnssecKeysResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Keys          []*DnssecKey           `protobuf:"bytes,1,rep,name=keys,proto3" json:"keys,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListDnssecKeysResponse) Reset() {
	*x = ListDnssecKeysResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[88]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListDnssecKeysResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListDnssecKeysResponse) ProtoMessage() {}

func (x *ListDnssecKeysResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[88]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListDnssecKeysResponse.ProtoReflect.Descriptor instead.
func (*ListDnssecKeysResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{88}
}

func (x *ListDnssecKeysResponse) GetKeys() []*DnssecKey {
	if x != nil {
		return x.Keys
	}
	return nil
}

// DeleteDnssecKeyRequest deletes a DNSSEC key.
type DeleteDnssecKeyRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	KeyId         int64                  `protobuf:"varint,1,opt,name=key_id,json=keyId,proto3" json:"key_id,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DeleteDnssecKeyRequest) Reset() {
	*x = DeleteDnssecKeyRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[89]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DeleteDnssecKeyRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteDnssecKeyRequest) ProtoMessage() {}

func (x *DeleteDnssecKeyRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[89]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteDnssecKeyRequest.ProtoReflect.Descriptor instead.
func (*DeleteDnssecKeyRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{89}
}

func (x *DeleteDnssecKeyRequest) GetKeyId() int64 {
	if x != nil {
		return x.KeyId
	}
	return 0
}

func (x *DeleteDnssecKeyRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// DeleteDnssecKeyResponse is returned after deleting a key.
type DeleteDnssecKeyResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DeleteDnssecKeyResponse) Reset() {
	*x = DeleteDnssecKeyResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[90]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DeleteDnssecKeyResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteDnssecKeyResponse) ProtoMessage() {}

func (x *DeleteDnssecKeyResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[90]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteDnssecKeyResponse.ProtoReflect.Descriptor instead.
func (*DeleteDnssecKeyResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{90}
}

func (x *DeleteDnssecKeyResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *DeleteDnssecKeyResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// GetDsRecordsRequest retrieves DS records for a zone.
type GetDsRecordsRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Zone          string                 `protobuf:"bytes,1,opt,name=zone,proto3" json:"zone,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetDsRecordsRequest) Reset() {
	*x = GetDsRecordsRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[91]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetDsRecordsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetDsRecordsRequest) ProtoMessage() {}

func (x *GetDsRecordsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[91]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetDsRecordsRequest.ProtoReflect.Descriptor instead.
func (*GetDsRecordsRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{91}
}

func (x *GetDsRecordsRequest) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *GetDsRecordsRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GetDsRecordsResponse contains DS records.
type GetDsRecordsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	DsRecords     []string               `protobuf:"bytes,1,rep,name=ds_records,json=dsRecords,proto3" json:"ds_records,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetDsRecordsResponse) Reset() {
	*x = GetDsRecordsResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[92]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetDsRecordsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetDsRecordsResponse) ProtoMessage() {}

func (x *GetDsRecordsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[92]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetDsRecordsResponse.ProtoReflect.Descriptor instead.
func (*GetDsRecordsResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{92}
}

func (x *GetDsRecordsResponse) GetDsRecords() []string {
	if x != nil {
		return x.DsRecords
	}
	return nil
}

// SignZoneRequest signs a zone with its DNSSEC keys.
type SignZoneRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Zone          string                 `protobuf:"bytes,1,opt,name=zone,proto3" json:"zone,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SignZoneRequest) Reset() {
	*x = SignZoneRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[93]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SignZoneRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SignZoneRequest) ProtoMessage() {}

func (x *SignZoneRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[93]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SignZoneRequest.ProtoReflect.Descriptor instead.
func (*SignZoneRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{93}
}

func (x *SignZoneRequest) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *SignZoneRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// SignZoneResponse is returned after signing a zone.
type SignZoneResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SignZoneResponse) Reset() {
	*x = SignZoneResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[94]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SignZoneResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SignZoneResponse) ProtoMessage() {}

func (x *SignZoneResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[94]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SignZoneResponse.ProtoReflect.Descriptor instead.
func (*SignZoneResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{94}
}

func (x *SignZoneResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *SignZoneResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// GenerateTlsaRecordRequest generates a TLSA record from a certificate.
type GenerateTlsaRecordRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Domain        string                 `protobuf:"bytes,1,opt,name=domain,proto3" json:"domain,omitempty"`
	Port          uint32                 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
	Protocol      string                 `protobuf:"bytes,3,opt,name=protocol,proto3" json:"protocol,omitempty"`
	Usage         uint32                 `protobuf:"varint,4,opt,name=usage,proto3" json:"usage,omitempty"`
	Selector      uint32                 `protobuf:"varint,5,opt,name=selector,proto3" json:"selector,omitempty"`
	MatchingType  uint32                 `protobuf:"varint,6,opt,name=matching_type,json=matchingType,proto3" json:"matching_type,omitempty"`
	CertPem       string                 `protobuf:"bytes,7,opt,name=cert_pem,json=certPem,proto3" json:"cert_pem,omitempty"`
	AuthToken     string                 `protobuf:"bytes,8,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GenerateTlsaRecordRequest) Reset() {
	*x = GenerateTlsaRecordRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[95]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GenerateTlsaRecordRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GenerateTlsaRecordRequest) ProtoMessage() {}

func (x *GenerateTlsaRecordRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[95]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GenerateTlsaRecordRequest.ProtoReflect.Descriptor instead.
func (*GenerateTlsaRecordRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{95}
}

func (x *GenerateTlsaRecordRequest) GetDomain() string {
	if x != nil {
		return x.Domain
	}
	return ""
}

func (x *GenerateTlsaRecordRequest) GetPort() uint32 {
	if x != nil {
		return x.Port
	}
	return 0
}

func (x *GenerateTlsaRecordRequest) GetProtocol() string {
	if x != nil {
		return x.Protocol
	}
	return ""
}

func (x *GenerateTlsaRecordRequest) GetUsage() uint32 {
	if x != nil {
		return x.Usage
	}
	return 0
}

func (x *GenerateTlsaRecordRequest) GetSelector() uint32 {
	if x != nil {
		return x.Selector
	}
	return 0
}

func (x *GenerateTlsaRecordRequest) GetMatchingType() uint32 {
	if x != nil {
		return x.MatchingType
	}
	return 0
}

func (x *GenerateTlsaRecordRequest) GetCertPem() string {
	if x != nil {
		return x.CertPem
	}
	return ""
}

func (x *GenerateTlsaRecordRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GenerateTlsaRecordResponse is returned after generating a TLSA record.
type GenerateTlsaRecordResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	TlsaRecord    string                 `protobuf:"bytes,3,opt,name=tlsa_record,json=tlsaRecord,proto3" json:"tlsa_record,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GenerateTlsaRecordResponse) Reset() {
	*x = GenerateTlsaRecordResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[96]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GenerateTlsaRecordResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GenerateTlsaRecordResponse) ProtoMessage() {}

func (x *GenerateTlsaRecordResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[96]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GenerateTlsaRecordResponse.ProtoReflect.Descriptor instead.
func (*GenerateTlsaRecordResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{96}
}

func (x *GenerateTlsaRecordResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *GenerateTlsaRecordResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

func (x *GenerateTlsaRecordResponse) GetTlsaRecord() string {
	if x != nil {
		return x.TlsaRecord
	}
	return ""
}

// ListTlsaRecordsRequest retrieves TLSA records for a domain.
type ListTlsaRecordsRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Domain        string                 `protobuf:"bytes,1,opt,name=domain,proto3" json:"domain,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListTlsaRecordsRequest) Reset() {
	*x = ListTlsaRecordsRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[97]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListTlsaRecordsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListTlsaRecordsRequest) ProtoMessage() {}

func (x *ListTlsaRecordsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[97]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListTlsaRecordsRequest.ProtoReflect.Descriptor instead.
func (*ListTlsaRecordsRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{97}
}

func (x *ListTlsaRecordsRequest) GetDomain() string {
	if x != nil {
		return x.Domain
	}
	return ""
}

func (x *ListTlsaRecordsRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// ListTlsaRecordsResponse contains TLSA records.
type ListTlsaRecordsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Records       []*DnsRecord           `protobuf:"bytes,1,rep,name=records,proto3" json:"records,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListTlsaRecordsResponse) Reset() {
	*x = ListTlsaRecordsResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[98]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListTlsaRecordsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListTlsaRecordsResponse) ProtoMessage() {}

func (x *ListTlsaRecordsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[98]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListTlsaRecordsResponse.ProtoReflect.Descriptor instead.
func (*ListTlsaRecordsResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{98}
}

func (x *ListTlsaRecordsResponse) GetRecords() []*DnsRecord {
	if x != nil {
		return x.Records
	}
	return nil
}

// GenerateDaneRootCaRequest generates a DANE root CA.
type GenerateDaneRootCaRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Name          string                 `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GenerateDaneRootCaRequest) Reset() {
	*x = GenerateDaneRootCaRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[99]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GenerateDaneRootCaRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GenerateDaneRootCaRequest) ProtoMessage() {}

func (x *GenerateDaneRootCaRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[99]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GenerateDaneRootCaRequest.ProtoReflect.Descriptor instead.
func (*GenerateDaneRootCaRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{99}
}

func (x *GenerateDaneRootCaRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *GenerateDaneRootCaRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GenerateDaneRootCaResponse is returned after generating a root CA.
type GenerateDaneRootCaResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	CertPem       string                 `protobuf:"bytes,3,opt,name=cert_pem,json=certPem,proto3" json:"cert_pem,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GenerateDaneRootCaResponse) Reset() {
	*x = GenerateDaneRootCaResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[100]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GenerateDaneRootCaResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GenerateDaneRootCaResponse) ProtoMessage() {}

func (x *GenerateDaneRootCaResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[100]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GenerateDaneRootCaResponse.ProtoReflect.Descriptor instead.
func (*GenerateDaneRootCaResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{100}
}

func (x *GenerateDaneRootCaResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *GenerateDaneRootCaResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

func (x *GenerateDaneRootCaResponse) GetCertPem() string {
	if x != nil {
		return x.CertPem
	}
	return ""
}

// RequestAcmeCertRequest requests a certificate via ACME DNS-01.
type RequestAcmeCertRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Domain        string                 `protobuf:"bytes,1,opt,name=domain,proto3" json:"domain,omitempty"`
	ProviderUrl   string                 `protobuf:"bytes,2,opt,name=provider_url,json=providerUrl,proto3" json:"provider_url,omitempty"`
	AuthToken     string                 `protobuf:"bytes,3,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RequestAcmeCertRequest) Reset() {
	*x = RequestAcmeCertRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[101]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RequestAcmeCertRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RequestAcmeCertRequest) ProtoMessage() {}

func (x *RequestAcmeCertRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[101]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RequestAcmeCertRequest.ProtoReflect.Descriptor instead.
func (*RequestAcmeCertRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{101}
}

func (x *RequestAcmeCertRequest) GetDomain() string {
	if x != nil {
		return x.Domain
	}
	return ""
}

func (x *RequestAcmeCertRequest) GetProviderUrl() string {
	if x != nil {
		return x.ProviderUrl
	}
	return ""
}

func (x *RequestAcmeCertRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// RequestAcmeCertResponse is returned after requesting an ACME cert.
type RequestAcmeCertResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RequestAcmeCertResponse) Reset() {
	*x = RequestAcmeCertResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[102]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RequestAcmeCertResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RequestAcmeCertResponse) ProtoMessage() {}

func (x *RequestAcmeCertResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[102]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RequestAcmeCertResponse.ProtoReflect.Descriptor instead.
func (*RequestAcmeCertResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{102}
}

func (x *RequestAcmeCertResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *RequestAcmeCertResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// GetAcmeStatusRequest retrieves ACME certificate status.
type GetAcmeStatusRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Domain        string                 `protobuf:"bytes,1,opt,name=domain,proto3" json:"domain,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetAcmeStatusRequest) Reset() {
	*x = GetAcmeStatusRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[103]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetAcmeStatusRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetAcmeStatusRequest) ProtoMessage() {}

func (x *GetAcmeStatusRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[103]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetAcmeStatusRequest.ProtoReflect.Descriptor instead.
func (*GetAcmeStatusRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{103}
}

func (x *GetAcmeStatusRequest) GetDomain() string {
	if x != nil {
		return x.Domain
	}
	return ""
}

func (x *GetAcmeStatusRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GetAcmeStatusResponse contains ACME certificate status.
type GetAcmeStatusResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Status        string                 `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	ExpiresAt     int64                  `protobuf:"varint,2,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
	Domain        string                 `protobuf:"bytes,3,opt,name=domain,proto3" json:"domain,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetAcmeStatusResponse) Reset() {
	*x = GetAcmeStatusResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[104]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetAcmeStatusResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetAcmeStatusResponse) ProtoMessage() {}

func (x *GetAcmeStatusResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[104]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetAcmeStatusResponse.ProtoReflect.Descriptor instead.
func (*GetAcmeStatusResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{104}
}

func (x *GetAcmeStatusResponse) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *GetAcmeStatusResponse) GetExpiresAt() int64 {
	if x != nil {
		return x.ExpiresAt
	}
	return 0
}

func (x *GetAcmeStatusResponse) GetDomain() string {
	if x != nil {
		return x.Domain
	}
	return ""
}

// EnsureZoneCaRequest ensures a per-zone intermediate CA exists.
type EnsureZoneCaRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Zone          string                 `protobuf:"bytes,1,opt,name=zone,proto3" json:"zone,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *EnsureZoneCaRequest) Reset() {
	*x = EnsureZoneCaRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[105]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *EnsureZoneCaRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*EnsureZoneCaRequest) ProtoMessage() {}

func (x *EnsureZoneCaRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[105]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use EnsureZoneCaRequest.ProtoReflect.Descriptor instead.
func (*EnsureZoneCaRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{105}
}

func (x *EnsureZoneCaRequest) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *EnsureZoneCaRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// EnsureZoneCaResponse returns the root and intermediate CA certificates.
type EnsureZoneCaResponse struct {
	state             protoimpl.MessageState `protogen:"open.v1"`
	Success           bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message           string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	RootCaPem         string                 `protobuf:"bytes,3,opt,name=root_ca_pem,json=rootCaPem,proto3" json:"root_ca_pem,omitempty"`
	IntermediateCaPem string                 `protobuf:"bytes,4,opt,name=intermediate_ca_pem,json=intermediateCaPem,proto3" json:"intermediate_ca_pem,omitempty"`
	unknownFields     protoimpl.UnknownFields
	sizeCache         protoimpl.SizeCache
}

func (x *EnsureZoneCaResponse) Reset() {
	*x = EnsureZoneCaResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[106]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *EnsureZoneCaResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*EnsureZoneCaResponse) ProtoMessage() {}

func (x *EnsureZoneCaResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[106]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use EnsureZoneCaResponse.ProtoReflect.Descriptor instead.
func (*EnsureZoneCaResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{106}
}

func (x *EnsureZoneCaResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *EnsureZoneCaResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

func (x *EnsureZoneCaResponse) GetRootCaPem() string {
	if x != nil {
		return x.RootCaPem
	}
	return ""
}

func (x *EnsureZoneCaResponse) GetIntermediateCaPem() string {
	if x != nil {
		return x.IntermediateCaPem
	}
	return ""
}

// CreateEabCredentialRequest mints an EAB credential scoped to a zone.
type CreateEabCredentialRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Zone          string                 `protobuf:"bytes,1,opt,name=zone,proto3" json:"zone,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *CreateEabCredentialRequest) Reset() {
	*x = CreateEabCredentialRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[107]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *CreateEabCredentialRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateEabCredentialRequest) ProtoMessage() {}

func (x *CreateEabCredentialRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[107]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateEabCredentialRequest.ProtoReflect.Descriptor instead.
func (*CreateEabCredentialRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{107}
}

func (x *CreateEabCredentialRequest) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *CreateEabCredentialRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// CreateEabCredentialResponse returns the EAB key id and base64url HMAC key.
type CreateEabCredentialResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	Kid           string                 `protobuf:"bytes,3,opt,name=kid,proto3" json:"kid,omitempty"`
	HmacKey       string                 `protobuf:"bytes,4,opt,name=hmac_key,json=hmacKey,proto3" json:"hmac_key,omitempty"`
	DirectoryUrl  string                 `protobuf:"bytes,5,opt,name=directory_url,json=directoryUrl,proto3" json:"directory_url,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *CreateEabCredentialResponse) Reset() {
	*x = CreateEabCredentialResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[108]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *CreateEabCredentialResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateEabCredentialResponse) ProtoMessage() {}

func (x *CreateEabCredentialResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[108]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateEabCredentialResponse.ProtoReflect.Descriptor instead.
func (*CreateEabCredentialResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{108}
}

func (x *CreateEabCredentialResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *CreateEabCredentialResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

func (x *CreateEabCredentialResponse) GetKid() string {
	if x != nil {
		return x.Kid
	}
	return ""
}

func (x *CreateEabCredentialResponse) GetHmacKey() string {
	if x != nil {
		return x.HmacKey
	}
	return ""
}

func (x *CreateEabCredentialResponse) GetDirectoryUrl() string {
	if x != nil {
		return x.DirectoryUrl
	}
	return ""
}

// RemoveEabCredentialRequest removes an EAB credential by kid.
type RemoveEabCredentialRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Kid           string                 `protobuf:"bytes,1,opt,name=kid,proto3" json:"kid,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveEabCredentialRequest) Reset() {
	*x = RemoveEabCredentialRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[109]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveEabCredentialRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveEabCredentialRequest) ProtoMessage() {}

func (x *RemoveEabCredentialRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[109]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveEabCredentialRequest.ProtoReflect.Descriptor instead.
func (*RemoveEabCredentialRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{109}
}

func (x *RemoveEabCredentialRequest) GetKid() string {
	if x != nil {
		return x.Kid
	}
	return ""
}

func (x *RemoveEabCredentialRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// RemoveEabCredentialResponse is returned after removing an EAB credential.
type RemoveEabCredentialResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveEabCredentialResponse) Reset() {
	*x = RemoveEabCredentialResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[110]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveEabCredentialResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveEabCredentialResponse) ProtoMessage() {}

func (x *RemoveEabCredentialResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[110]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveEabCredentialResponse.ProtoReflect.Descriptor instead.
func (*RemoveEabCredentialResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{110}
}

func (x *RemoveEabCredentialResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *RemoveEabCredentialResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// AcmeAccountInfo describes a registered ACME server account.
type AcmeAccountInfo struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AccountId     string                 `protobuf:"bytes,1,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
	Status        string                 `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"`
	Zone          string                 `protobuf:"bytes,3,opt,name=zone,proto3" json:"zone,omitempty"`
	EabKid        string                 `protobuf:"bytes,4,opt,name=eab_kid,json=eabKid,proto3" json:"eab_kid,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AcmeAccountInfo) Reset() {
	*x = AcmeAccountInfo{}
	mi := &file_rolodex_dns_proto_msgTypes[111]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AcmeAccountInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AcmeAccountInfo) ProtoMessage() {}

func (x *AcmeAccountInfo) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[111]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AcmeAccountInfo.ProtoReflect.Descriptor instead.
func (*AcmeAccountInfo) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{111}
}

func (x *AcmeAccountInfo) GetAccountId() string {
	if x != nil {
		return x.AccountId
	}
	return ""
}

func (x *AcmeAccountInfo) GetStatus() string {
	if x != nil {
		return x.Status
	}
	return ""
}

func (x *AcmeAccountInfo) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *AcmeAccountInfo) GetEabKid() string {
	if x != nil {
		return x.EabKid
	}
	return ""
}

// ListAcmeAccountsRequest lists ACME server accounts.
type ListAcmeAccountsRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AuthToken     string                 `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListAcmeAccountsRequest) Reset() {
	*x = ListAcmeAccountsRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[112]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListAcmeAccountsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListAcmeAccountsRequest) ProtoMessage() {}

func (x *ListAcmeAccountsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[112]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListAcmeAccountsRequest.ProtoReflect.Descriptor instead.
func (*ListAcmeAccountsRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{112}
}

func (x *ListAcmeAccountsRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// ListAcmeAccountsResponse contains ACME server accounts.
type ListAcmeAccountsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Accounts      []*AcmeAccountInfo     `protobuf:"bytes,1,rep,name=accounts,proto3" json:"accounts,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListAcmeAccountsResponse) Reset() {
	*x = ListAcmeAccountsResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[113]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListAcmeAccountsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListAcmeAccountsResponse) ProtoMessage() {}

func (x *ListAcmeAccountsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[113]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListAcmeAccountsResponse.ProtoReflect.Descriptor instead.
func (*ListAcmeAccountsResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{113}
}

func (x *ListAcmeAccountsResponse) GetAccounts() []*AcmeAccountInfo {
	if x != nil {
		return x.Accounts
	}
	return nil
}

// AcmeCertificateInfo describes an issued ACME certificate.
type AcmeCertificateInfo struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            int64                  `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Domain        string                 `protobuf:"bytes,2,opt,name=domain,proto3" json:"domain,omitempty"`
	IssuedAt      int64                  `protobuf:"varint,3,opt,name=issued_at,json=issuedAt,proto3" json:"issued_at,omitempty"`
	ExpiresAt     int64                  `protobuf:"varint,4,opt,name=expires_at,json=expiresAt,proto3" json:"expires_at,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AcmeCertificateInfo) Reset() {
	*x = AcmeCertificateInfo{}
	mi := &file_rolodex_dns_proto_msgTypes[114]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AcmeCertificateInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AcmeCertificateInfo) ProtoMessage() {}

func (x *AcmeCertificateInfo) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[114]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AcmeCertificateInfo.ProtoReflect.Descriptor instead.
func (*AcmeCertificateInfo) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{114}
}

func (x *AcmeCertificateInfo) GetId() int64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *AcmeCertificateInfo) GetDomain() string {
	if x != nil {
		return x.Domain
	}
	return ""
}

func (x *AcmeCertificateInfo) GetIssuedAt() int64 {
	if x != nil {
		return x.IssuedAt
	}
	return 0
}

func (x *AcmeCertificateInfo) GetExpiresAt() int64 {
	if x != nil {
		return x.ExpiresAt
	}
	return 0
}

// ListAcmeCertificatesRequest lists issued certificates, optionally by zone.
type ListAcmeCertificatesRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Zone          string                 `protobuf:"bytes,1,opt,name=zone,proto3" json:"zone,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListAcmeCertificatesRequest) Reset() {
	*x = ListAcmeCertificatesRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[115]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListAcmeCertificatesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListAcmeCertificatesRequest) ProtoMessage() {}

func (x *ListAcmeCertificatesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[115]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListAcmeCertificatesRequest.ProtoReflect.Descriptor instead.
func (*ListAcmeCertificatesRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{115}
}

func (x *ListAcmeCertificatesRequest) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *ListAcmeCertificatesRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// ListAcmeCertificatesResponse contains issued ACME certificates.
type ListAcmeCertificatesResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Certificates  []*AcmeCertificateInfo `protobuf:"bytes,1,rep,name=certificates,proto3" json:"certificates,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListAcmeCertificatesResponse) Reset() {
	*x = ListAcmeCertificatesResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[116]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListAcmeCertificatesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListAcmeCertificatesResponse) ProtoMessage() {}

func (x *ListAcmeCertificatesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[116]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListAcmeCertificatesResponse.ProtoReflect.Descriptor instead.
func (*ListAcmeCertificatesResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{116}
}

func (x *ListAcmeCertificatesResponse) GetCertificates() []*AcmeCertificateInfo {
	if x != nil {
		return x.Certificates
	}
	return nil
}

// Dns64Config configures DNS64 synthesis.
type Dns64Config struct {
	state   protoimpl.MessageState `protogen:"open.v1"`
	Enabled bool                   `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	// IPv6 prefix for synthesis (default: "64:ff9b::")
	Prefix        string `protobuf:"bytes,2,opt,name=prefix,proto3" json:"prefix,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Dns64Config) Reset() {
	*x = Dns64Config{}
	mi := &file_rolodex_dns_proto_msgTypes[117]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Dns64Config) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Dns64Config) ProtoMessage() {}

func (x *Dns64Config) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[117]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Dns64Config.ProtoReflect.Descriptor instead.
func (*Dns64Config) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{117}
}

func (x *Dns64Config) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

func (x *Dns64Config) GetPrefix() string {
	if x != nil {
		return x.Prefix
	}
	return ""
}

// SetDns64ConfigRequest sets the DNS64 configuration.
type SetDns64ConfigRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Config        *Dns64Config           `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetDns64ConfigRequest) Reset() {
	*x = SetDns64ConfigRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[118]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetDns64ConfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetDns64ConfigRequest) ProtoMessage() {}

func (x *SetDns64ConfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[118]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetDns64ConfigRequest.ProtoReflect.Descriptor instead.
func (*SetDns64ConfigRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{118}
}

func (x *SetDns64ConfigRequest) GetConfig() *Dns64Config {
	if x != nil {
		return x.Config
	}
	return nil
}

func (x *SetDns64ConfigRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// SetDns64ConfigResponse is returned after setting DNS64 config.
type SetDns64ConfigResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetDns64ConfigResponse) Reset() {
	*x = SetDns64ConfigResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[119]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetDns64ConfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetDns64ConfigResponse) ProtoMessage() {}

func (x *SetDns64ConfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[119]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetDns64ConfigResponse.ProtoReflect.Descriptor instead.
func (*SetDns64ConfigResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{119}
}

func (x *SetDns64ConfigResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *SetDns64ConfigResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// GetDns64ConfigRequest retrieves the DNS64 configuration.
type GetDns64ConfigRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	AuthToken     string                 `protobuf:"bytes,1,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetDns64ConfigRequest) Reset() {
	*x = GetDns64ConfigRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[120]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetDns64ConfigRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetDns64ConfigRequest) ProtoMessage() {}

func (x *GetDns64ConfigRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[120]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetDns64ConfigRequest.ProtoReflect.Descriptor instead.
func (*GetDns64ConfigRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{120}
}

func (x *GetDns64ConfigRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

// GetDns64ConfigResponse contains the DNS64 configuration.
type GetDns64ConfigResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Config        *Dns64Config           `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetDns64ConfigResponse) Reset() {
	*x = GetDns64ConfigResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[121]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetDns64ConfigResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetDns64ConfigResponse) ProtoMessage() {}

func (x *GetDns64ConfigResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[121]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetDns64ConfigResponse.ProtoReflect.Descriptor instead.
func (*GetDns64ConfigResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{121}
}

func (x *GetDns64ConfigResponse) GetConfig() *Dns64Config {
	if x != nil {
		return x.Config
	}
	return nil
}

// DhcpPool represents an IP address pool for DHCP allocation within a scope.
type DhcpPool struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            int64                  `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	ScopeName     string                 `protobuf:"bytes,2,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	RangeStart    string                 `protobuf:"bytes,3,opt,name=range_start,json=rangeStart,proto3" json:"range_start,omitempty"`
	RangeEnd      string                 `protobuf:"bytes,4,opt,name=range_end,json=rangeEnd,proto3" json:"range_end,omitempty"`
	Gateway       string                 `protobuf:"bytes,5,opt,name=gateway,proto3" json:"gateway,omitempty"`
	SubnetMask    string                 `protobuf:"bytes,6,opt,name=subnet_mask,json=subnetMask,proto3" json:"subnet_mask,omitempty"`
	DnsServers    string                 `protobuf:"bytes,7,opt,name=dns_servers,json=dnsServers,proto3" json:"dns_servers,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DhcpPool) Reset() {
	*x = DhcpPool{}
	mi := &file_rolodex_dns_proto_msgTypes[122]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DhcpPool) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DhcpPool) ProtoMessage() {}

func (x *DhcpPool) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[122]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DhcpPool.ProtoReflect.Descriptor instead.
func (*DhcpPool) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{122}
}

func (x *DhcpPool) GetId() int64 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *DhcpPool) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *DhcpPool) GetRangeStart() string {
	if x != nil {
		return x.RangeStart
	}
	return ""
}

func (x *DhcpPool) GetRangeEnd() string {
	if x != nil {
		return x.RangeEnd
	}
	return ""
}

func (x *DhcpPool) GetGateway() string {
	if x != nil {
		return x.Gateway
	}
	return ""
}

func (x *DhcpPool) GetSubnetMask() string {
	if x != nil {
		return x.SubnetMask
	}
	return ""
}

func (x *DhcpPool) GetDnsServers() string {
	if x != nil {
		return x.DnsServers
	}
	return ""
}

type AddDhcpPoolRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Pool          *DhcpPool              `protobuf:"bytes,1,opt,name=pool,proto3" json:"pool,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddDhcpPoolRequest) Reset() {
	*x = AddDhcpPoolRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[123]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AddDhcpPoolRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddDhcpPoolRequest) ProtoMessage() {}

func (x *AddDhcpPoolRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[123]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddDhcpPoolRequest.ProtoReflect.Descriptor instead.
func (*AddDhcpPoolRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{123}
}

func (x *AddDhcpPoolRequest) GetPool() *DhcpPool {
	if x != nil {
		return x.Pool
	}
	return nil
}

func (x *AddDhcpPoolRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

type AddDhcpPoolResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddDhcpPoolResponse) Reset() {
	*x = AddDhcpPoolResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[124]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AddDhcpPoolResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddDhcpPoolResponse) ProtoMessage() {}

func (x *AddDhcpPoolResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[124]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddDhcpPoolResponse.ProtoReflect.Descriptor instead.
func (*AddDhcpPoolResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{124}
}

func (x *AddDhcpPoolResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *AddDhcpPoolResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

type RemoveDhcpPoolRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	PoolId        int64                  `protobuf:"varint,1,opt,name=pool_id,json=poolId,proto3" json:"pool_id,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveDhcpPoolRequest) Reset() {
	*x = RemoveDhcpPoolRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[125]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveDhcpPoolRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveDhcpPoolRequest) ProtoMessage() {}

func (x *RemoveDhcpPoolRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[125]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveDhcpPoolRequest.ProtoReflect.Descriptor instead.
func (*RemoveDhcpPoolRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{125}
}

func (x *RemoveDhcpPoolRequest) GetPoolId() int64 {
	if x != nil {
		return x.PoolId
	}
	return 0
}

func (x *RemoveDhcpPoolRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

type RemoveDhcpPoolResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveDhcpPoolResponse) Reset() {
	*x = RemoveDhcpPoolResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[126]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveDhcpPoolResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveDhcpPoolResponse) ProtoMessage() {}

func (x *RemoveDhcpPoolResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[126]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveDhcpPoolResponse.ProtoReflect.Descriptor instead.
func (*RemoveDhcpPoolResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{126}
}

func (x *RemoveDhcpPoolResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *RemoveDhcpPoolResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

type ListDhcpPoolsRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ScopeName     string                 `protobuf:"bytes,1,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListDhcpPoolsRequest) Reset() {
	*x = ListDhcpPoolsRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[127]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListDhcpPoolsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListDhcpPoolsRequest) ProtoMessage() {}

func (x *ListDhcpPoolsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[127]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListDhcpPoolsRequest.ProtoReflect.Descriptor instead.
func (*ListDhcpPoolsRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{127}
}

func (x *ListDhcpPoolsRequest) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *ListDhcpPoolsRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

type ListDhcpPoolsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Pools         []*DhcpPool            `protobuf:"bytes,1,rep,name=pools,proto3" json:"pools,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListDhcpPoolsResponse) Reset() {
	*x = ListDhcpPoolsResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[128]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListDhcpPoolsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListDhcpPoolsResponse) ProtoMessage() {}

func (x *ListDhcpPoolsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[128]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListDhcpPoolsResponse.ProtoReflect.Descriptor instead.
func (*ListDhcpPoolsResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{128}
}

func (x *ListDhcpPoolsResponse) GetPools() []*DhcpPool {
	if x != nil {
		return x.Pools
	}
	return nil
}

// DhcpLease represents a DHCP lease binding a MAC address to an IP.
type DhcpLease struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Mac           string                 `protobuf:"bytes,1,opt,name=mac,proto3" json:"mac,omitempty"`
	Ip            string                 `protobuf:"bytes,2,opt,name=ip,proto3" json:"ip,omitempty"`
	ScopeName     string                 `protobuf:"bytes,3,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	Hostname      string                 `protobuf:"bytes,4,opt,name=hostname,proto3" json:"hostname,omitempty"`
	LeaseStart    int64                  `protobuf:"varint,5,opt,name=lease_start,json=leaseStart,proto3" json:"lease_start,omitempty"`
	LeaseDuration int64                  `protobuf:"varint,6,opt,name=lease_duration,json=leaseDuration,proto3" json:"lease_duration,omitempty"`
	State         string                 `protobuf:"bytes,7,opt,name=state,proto3" json:"state,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DhcpLease) Reset() {
	*x = DhcpLease{}
	mi := &file_rolodex_dns_proto_msgTypes[129]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DhcpLease) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DhcpLease) ProtoMessage() {}

func (x *DhcpLease) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[129]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DhcpLease.ProtoReflect.Descriptor instead.
func (*DhcpLease) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{129}
}

func (x *DhcpLease) GetMac() string {
	if x != nil {
		return x.Mac
	}
	return ""
}

func (x *DhcpLease) GetIp() string {
	if x != nil {
		return x.Ip
	}
	return ""
}

func (x *DhcpLease) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *DhcpLease) GetHostname() string {
	if x != nil {
		return x.Hostname
	}
	return ""
}

func (x *DhcpLease) GetLeaseStart() int64 {
	if x != nil {
		return x.LeaseStart
	}
	return 0
}

func (x *DhcpLease) GetLeaseDuration() int64 {
	if x != nil {
		return x.LeaseDuration
	}
	return 0
}

func (x *DhcpLease) GetState() string {
	if x != nil {
		return x.State
	}
	return ""
}

type ListDhcpLeasesRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ScopeName     string                 `protobuf:"bytes,1,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListDhcpLeasesRequest) Reset() {
	*x = ListDhcpLeasesRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[130]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListDhcpLeasesRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListDhcpLeasesRequest) ProtoMessage() {}

func (x *ListDhcpLeasesRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[130]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListDhcpLeasesRequest.ProtoReflect.Descriptor instead.
func (*ListDhcpLeasesRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{130}
}

func (x *ListDhcpLeasesRequest) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *ListDhcpLeasesRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

type ListDhcpLeasesResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Leases        []*DhcpLease           `protobuf:"bytes,1,rep,name=leases,proto3" json:"leases,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListDhcpLeasesResponse) Reset() {
	*x = ListDhcpLeasesResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[131]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListDhcpLeasesResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListDhcpLeasesResponse) ProtoMessage() {}

func (x *ListDhcpLeasesResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[131]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListDhcpLeasesResponse.ProtoReflect.Descriptor instead.
func (*ListDhcpLeasesResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{131}
}

func (x *ListDhcpLeasesResponse) GetLeases() []*DhcpLease {
	if x != nil {
		return x.Leases
	}
	return nil
}

type DeleteDhcpLeaseRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Mac           string                 `protobuf:"bytes,1,opt,name=mac,proto3" json:"mac,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DeleteDhcpLeaseRequest) Reset() {
	*x = DeleteDhcpLeaseRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[132]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DeleteDhcpLeaseRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteDhcpLeaseRequest) ProtoMessage() {}

func (x *DeleteDhcpLeaseRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[132]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteDhcpLeaseRequest.ProtoReflect.Descriptor instead.
func (*DeleteDhcpLeaseRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{132}
}

func (x *DeleteDhcpLeaseRequest) GetMac() string {
	if x != nil {
		return x.Mac
	}
	return ""
}

func (x *DeleteDhcpLeaseRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

type DeleteDhcpLeaseResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DeleteDhcpLeaseResponse) Reset() {
	*x = DeleteDhcpLeaseResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[133]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DeleteDhcpLeaseResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteDhcpLeaseResponse) ProtoMessage() {}

func (x *DeleteDhcpLeaseResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[133]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteDhcpLeaseResponse.ProtoReflect.Descriptor instead.
func (*DeleteDhcpLeaseResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{133}
}

func (x *DeleteDhcpLeaseResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *DeleteDhcpLeaseResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

// ScopeRblProvider represents an additional RBL provider for a specific scope.
type ScopeRblProvider struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ScopeName     string                 `protobuf:"bytes,1,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	Zone          string                 `protobuf:"bytes,2,opt,name=zone,proto3" json:"zone,omitempty"`
	Enabled       bool                   `protobuf:"varint,3,opt,name=enabled,proto3" json:"enabled,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ScopeRblProvider) Reset() {
	*x = ScopeRblProvider{}
	mi := &file_rolodex_dns_proto_msgTypes[134]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ScopeRblProvider) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ScopeRblProvider) ProtoMessage() {}

func (x *ScopeRblProvider) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[134]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ScopeRblProvider.ProtoReflect.Descriptor instead.
func (*ScopeRblProvider) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{134}
}

func (x *ScopeRblProvider) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *ScopeRblProvider) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *ScopeRblProvider) GetEnabled() bool {
	if x != nil {
		return x.Enabled
	}
	return false
}

type AddScopeRblProviderRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Provider      *ScopeRblProvider      `protobuf:"bytes,1,opt,name=provider,proto3" json:"provider,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddScopeRblProviderRequest) Reset() {
	*x = AddScopeRblProviderRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[135]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AddScopeRblProviderRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddScopeRblProviderRequest) ProtoMessage() {}

func (x *AddScopeRblProviderRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[135]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddScopeRblProviderRequest.ProtoReflect.Descriptor instead.
func (*AddScopeRblProviderRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{135}
}

func (x *AddScopeRblProviderRequest) GetProvider() *ScopeRblProvider {
	if x != nil {
		return x.Provider
	}
	return nil
}

func (x *AddScopeRblProviderRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

type AddScopeRblProviderResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AddScopeRblProviderResponse) Reset() {
	*x = AddScopeRblProviderResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[136]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AddScopeRblProviderResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AddScopeRblProviderResponse) ProtoMessage() {}

func (x *AddScopeRblProviderResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[136]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AddScopeRblProviderResponse.ProtoReflect.Descriptor instead.
func (*AddScopeRblProviderResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{136}
}

func (x *AddScopeRblProviderResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *AddScopeRblProviderResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

type RemoveScopeRblProviderRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ScopeName     string                 `protobuf:"bytes,1,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	Zone          string                 `protobuf:"bytes,2,opt,name=zone,proto3" json:"zone,omitempty"`
	AuthToken     string                 `protobuf:"bytes,3,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveScopeRblProviderRequest) Reset() {
	*x = RemoveScopeRblProviderRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[137]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveScopeRblProviderRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveScopeRblProviderRequest) ProtoMessage() {}

func (x *RemoveScopeRblProviderRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[137]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveScopeRblProviderRequest.ProtoReflect.Descriptor instead.
func (*RemoveScopeRblProviderRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{137}
}

func (x *RemoveScopeRblProviderRequest) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *RemoveScopeRblProviderRequest) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *RemoveScopeRblProviderRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

type RemoveScopeRblProviderResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveScopeRblProviderResponse) Reset() {
	*x = RemoveScopeRblProviderResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[138]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveScopeRblProviderResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveScopeRblProviderResponse) ProtoMessage() {}

func (x *RemoveScopeRblProviderResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[138]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveScopeRblProviderResponse.ProtoReflect.Descriptor instead.
func (*RemoveScopeRblProviderResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{138}
}

func (x *RemoveScopeRblProviderResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *RemoveScopeRblProviderResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

type ListScopeRblProvidersRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ScopeName     string                 `protobuf:"bytes,1,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListScopeRblProvidersRequest) Reset() {
	*x = ListScopeRblProvidersRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[139]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListScopeRblProvidersRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListScopeRblProvidersRequest) ProtoMessage() {}

func (x *ListScopeRblProvidersRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[139]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListScopeRblProvidersRequest.ProtoReflect.Descriptor instead.
func (*ListScopeRblProvidersRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{139}
}

func (x *ListScopeRblProvidersRequest) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *ListScopeRblProvidersRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

type ListScopeRblProvidersResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Providers     []*ScopeRblProvider    `protobuf:"bytes,1,rep,name=providers,proto3" json:"providers,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListScopeRblProvidersResponse) Reset() {
	*x = ListScopeRblProvidersResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[140]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListScopeRblProvidersResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListScopeRblProvidersResponse) ProtoMessage() {}

func (x *ListScopeRblProvidersResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[140]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListScopeRblProvidersResponse.ProtoReflect.Descriptor instead.
func (*ListScopeRblProvidersResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{140}
}

func (x *ListScopeRblProvidersResponse) GetProviders() []*ScopeRblProvider {
	if x != nil {
		return x.Providers
	}
	return nil
}

// DhcpCertOption represents a certificate delivered via DHCP options.
type DhcpCertOption struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ScopeName     string                 `protobuf:"bytes,1,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	OptionCode    uint32                 `protobuf:"varint,2,opt,name=option_code,json=optionCode,proto3" json:"option_code,omitempty"`
	CertData      []byte                 `protobuf:"bytes,3,opt,name=cert_data,json=certData,proto3" json:"cert_data,omitempty"`
	Description   string                 `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DhcpCertOption) Reset() {
	*x = DhcpCertOption{}
	mi := &file_rolodex_dns_proto_msgTypes[141]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DhcpCertOption) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DhcpCertOption) ProtoMessage() {}

func (x *DhcpCertOption) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[141]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DhcpCertOption.ProtoReflect.Descriptor instead.
func (*DhcpCertOption) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{141}
}

func (x *DhcpCertOption) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *DhcpCertOption) GetOptionCode() uint32 {
	if x != nil {
		return x.OptionCode
	}
	return 0
}

func (x *DhcpCertOption) GetCertData() []byte {
	if x != nil {
		return x.CertData
	}
	return nil
}

func (x *DhcpCertOption) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

type SetDhcpCertOptionRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Option        *DhcpCertOption        `protobuf:"bytes,1,opt,name=option,proto3" json:"option,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetDhcpCertOptionRequest) Reset() {
	*x = SetDhcpCertOptionRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[142]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetDhcpCertOptionRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetDhcpCertOptionRequest) ProtoMessage() {}

func (x *SetDhcpCertOptionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[142]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetDhcpCertOptionRequest.ProtoReflect.Descriptor instead.
func (*SetDhcpCertOptionRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{142}
}

func (x *SetDhcpCertOptionRequest) GetOption() *DhcpCertOption {
	if x != nil {
		return x.Option
	}
	return nil
}

func (x *SetDhcpCertOptionRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

type SetDhcpCertOptionResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SetDhcpCertOptionResponse) Reset() {
	*x = SetDhcpCertOptionResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[143]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SetDhcpCertOptionResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SetDhcpCertOptionResponse) ProtoMessage() {}

func (x *SetDhcpCertOptionResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[143]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SetDhcpCertOptionResponse.ProtoReflect.Descriptor instead.
func (*SetDhcpCertOptionResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{143}
}

func (x *SetDhcpCertOptionResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *SetDhcpCertOptionResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

type RemoveDhcpCertOptionRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ScopeName     string                 `protobuf:"bytes,1,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	OptionCode    uint32                 `protobuf:"varint,2,opt,name=option_code,json=optionCode,proto3" json:"option_code,omitempty"`
	AuthToken     string                 `protobuf:"bytes,3,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveDhcpCertOptionRequest) Reset() {
	*x = RemoveDhcpCertOptionRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[144]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveDhcpCertOptionRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveDhcpCertOptionRequest) ProtoMessage() {}

func (x *RemoveDhcpCertOptionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[144]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveDhcpCertOptionRequest.ProtoReflect.Descriptor instead.
func (*RemoveDhcpCertOptionRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{144}
}

func (x *RemoveDhcpCertOptionRequest) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *RemoveDhcpCertOptionRequest) GetOptionCode() uint32 {
	if x != nil {
		return x.OptionCode
	}
	return 0
}

func (x *RemoveDhcpCertOptionRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

type RemoveDhcpCertOptionResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Success       bool                   `protobuf:"varint,1,opt,name=success,proto3" json:"success,omitempty"`
	Message       string                 `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RemoveDhcpCertOptionResponse) Reset() {
	*x = RemoveDhcpCertOptionResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[145]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RemoveDhcpCertOptionResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RemoveDhcpCertOptionResponse) ProtoMessage() {}

func (x *RemoveDhcpCertOptionResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[145]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RemoveDhcpCertOptionResponse.ProtoReflect.Descriptor instead.
func (*RemoveDhcpCertOptionResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{145}
}

func (x *RemoveDhcpCertOptionResponse) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *RemoveDhcpCertOptionResponse) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

type ListDhcpCertOptionsRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ScopeName     string                 `protobuf:"bytes,1,opt,name=scope_name,json=scopeName,proto3" json:"scope_name,omitempty"`
	AuthToken     string                 `protobuf:"bytes,2,opt,name=auth_token,json=authToken,proto3" json:"auth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListDhcpCertOptionsRequest) Reset() {
	*x = ListDhcpCertOptionsRequest{}
	mi := &file_rolodex_dns_proto_msgTypes[146]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListDhcpCertOptionsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListDhcpCertOptionsRequest) ProtoMessage() {}

func (x *ListDhcpCertOptionsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[146]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListDhcpCertOptionsRequest.ProtoReflect.Descriptor instead.
func (*ListDhcpCertOptionsRequest) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{146}
}

func (x *ListDhcpCertOptionsRequest) GetScopeName() string {
	if x != nil {
		return x.ScopeName
	}
	return ""
}

func (x *ListDhcpCertOptionsRequest) GetAuthToken() string {
	if x != nil {
		return x.AuthToken
	}
	return ""
}

type ListDhcpCertOptionsResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Options       []*DhcpCertOption      `protobuf:"bytes,1,rep,name=options,proto3" json:"options,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListDhcpCertOptionsResponse) Reset() {
	*x = ListDhcpCertOptionsResponse{}
	mi := &file_rolodex_dns_proto_msgTypes[147]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListDhcpCertOptionsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListDhcpCertOptionsResponse) ProtoMessage() {}

func (x *ListDhcpCertOptionsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rolodex_dns_proto_msgTypes[147]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListDhcpCertOptionsResponse.ProtoReflect.Descriptor instead.
func (*ListDhcpCertOptionsResponse) Descriptor() ([]byte, []int) {
	return file_rolodex_dns_proto_rawDescGZIP(), []int{147}
}

func (x *ListDhcpCertOptionsResponse) GetOptions() []*DhcpCertOption {
	if x != nil {
		return x.Options
	}
	return nil
}

var File_rolodex_dns_proto protoreflect.FileDescriptor

const file_rolodex_dns_proto_rawDesc = "" +
	"\n" +
	"\x11rolodex_dns.proto\x12\vrolodex_dns\"\x9d\x01\n" +
	"\tDnsRecord\x12\x12\n" +
	"\x04name\x18\x01 \x01(\tR\x04name\x128\n" +
	"\vrecord_type\x18\x02 \x01(\x0e2\x17.rolodex_dns.RecordTypeR\n" +
	"recordType\x12\x14\n" +
	"\x05value\x18\x03 \x01(\tR\x05value\x12\x10\n" +
	"\x03ttl\x18\x04 \x01(\rR\x03ttl\x12\x1a\n" +
	"\bpriority\x18\x05 \x01(\rR\bpriority\"a\n" +
	"\x10AddRecordRequest\x12.\n" +
	"\x06record\x18\x01 \x01(\v2\x16.rolodex_dns.DnsRecordR\x06record\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"G\n" +
	"\x11AddRecordResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"\x98\x01\n" +
	"\x13RemoveRecordRequest\x12\x12\n" +
	"\x04name\x18\x01 \x01(\tR\x04name\x128\n" +
	"\vrecord_type\x18\x02 \x01(\x0e2\x17.rolodex_dns.RecordTypeR\n" +
	"recordType\x12\x14\n" +
	"\x05value\x18\x03 \x01(\tR\x05value\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x04 \x01(\tR\tauthToken\"o\n" +
	"\x14RemoveRecordResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12#\n" +
	"\rremoved_count\x18\x02 \x01(\rR\fremovedCount\x12\x18\n" +
	"\amessage\x18\x03 \x01(\tR\amessage\"\xc1\x01\n" +
	"\x12ListRecordsRequest\x12\x1f\n" +
	"\vname_filter\x18\x01 \x01(\tR\n" +
	"nameFilter\x12E\n" +
	"\x12record_type_filter\x18\x02 \x01(\x0e2\x17.rolodex_dns.RecordTypeR\x10recordTypeFilter\x12$\n" +
	"\x0efilter_by_type\x18\x03 \x01(\bR\ffilterByType\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x04 \x01(\tR\tauthToken\"G\n" +
	"\x13ListRecordsResponse\x120\n" +
	"\arecords\x18\x01 \x03(\v2\x16.rolodex_dns.DnsRecordR\arecords\"T\n" +
	"\x13SetForwarderRequest\x12\x1e\n" +
	"\n" +
	"forwarders\x18\x01 \x03(\tR\n" +
	"forwarders\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"J\n" +
	"\x14SetForwarderResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"9\n" +
	"\tRblConfig\x12\x12\n" +
	"\x04zone\x18\x01 \x01(\tR\x04zone\x12\x18\n" +
	"\aenabled\x18\x02 \x01(\bR\aenabled\"\x84\x01\n" +
	"\x13SetRblConfigRequest\x124\n" +
	"\tproviders\x18\x01 \x03(\v2\x16.rolodex_dns.RblConfigR\tproviders\x12\x18\n" +
	"\aenabled\x18\x02 \x01(\bR\aenabled\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x03 \x01(\tR\tauthToken\"J\n" +
	"\x14SetRblConfigResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"4\n" +
	"\x13GetRblConfigRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"f\n" +
	"\x14GetRblConfigResponse\x12\x18\n" +
	"\aenabled\x18\x01 \x01(\bR\aenabled\x124\n" +
	"\tproviders\x18\x02 \x03(\v2\x16.rolodex_dns.RblConfigR\tproviders\"2\n" +
	"\x11FlushCacheRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"H\n" +
	"\x12FlushCacheResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"C\n" +
	"\fNetworkScope\x12\x12\n" +
	"\x04name\x18\x01 \x01(\tR\x04name\x12\x1f\n" +
	"\vhome_domain\x18\x02 \x01(\tR\n" +
	"homeDomain\"k\n" +
	"\x19CreateNetworkScopeRequest\x12/\n" +
	"\x05scope\x18\x01 \x01(\v2\x19.rolodex_dns.NetworkScopeR\x05scope\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"P\n" +
	"\x1aCreateNetworkScopeResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"N\n" +
	"\x19DeleteNetworkScopeRequest\x12\x12\n" +
	"\x04name\x18\x01 \x01(\tR\x04name\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"P\n" +
	"\x1aDeleteNetworkScopeResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"9\n" +
	"\x18ListNetworkScopesRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"N\n" +
	"\x19ListNetworkScopesResponse\x121\n" +
	"\x06scopes\x18\x01 \x03(\v2\x19.rolodex_dns.NetworkScopeR\x06scopes\"\x92\x01\n" +
	"\x12JoinNetworkRequest\x12\x1d\n" +
	"\n" +
	"ip_address\x18\x01 \x01(\tR\tipAddress\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x02 \x01(\tR\tscopeName\x12\x1f\n" +
	"\vttl_seconds\x18\x03 \x01(\x04R\n" +
	"ttlSeconds\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x04 \x01(\tR\tauthToken\"I\n" +
	"\x13JoinNetworkResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"S\n" +
	"\x13LeaveNetworkRequest\x12\x1d\n" +
	"\n" +
	"ip_address\x18\x01 \x01(\tR\tipAddress\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"J\n" +
	"\x14LeaveNetworkResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"]\n" +
	"\x1dGetNetworkAssociationsRequest\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x01 \x01(\tR\tscopeName\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"s\n" +
	"\x12NetworkAssociation\x12\x1d\n" +
	"\n" +
	"ip_address\x18\x01 \x01(\tR\tipAddress\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x02 \x01(\tR\tscopeName\x12\x1f\n" +
	"\vttl_seconds\x18\x03 \x01(\x04R\n" +
	"ttlSeconds\"e\n" +
	"\x1eGetNetworkAssociationsResponse\x12C\n" +
	"\fassociations\x18\x01 \x03(\v2\x1f.rolodex_dns.NetworkAssociationR\fassociations\"\x86\x01\n" +
	"\x16AddScopedRecordRequest\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x01 \x01(\tR\tscopeName\x12.\n" +
	"\x06record\x18\x02 \x01(\v2\x16.rolodex_dns.DnsRecordR\x06record\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x03 \x01(\tR\tauthToken\"M\n" +
	"\x17AddScopedRecordResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"\xbd\x01\n" +
	"\x19RemoveScopedRecordRequest\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x01 \x01(\tR\tscopeName\x12\x12\n" +
	"\x04name\x18\x02 \x01(\tR\x04name\x128\n" +
	"\vrecord_type\x18\x03 \x01(\x0e2\x17.rolodex_dns.RecordTypeR\n" +
	"recordType\x12\x14\n" +
	"\x05value\x18\x04 \x01(\tR\x05value\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x05 \x01(\tR\tauthToken\"u\n" +
	"\x1aRemoveScopedRecordResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12#\n" +
	"\rremoved_count\x18\x02 \x01(\rR\fremovedCount\x12\x18\n" +
	"\amessage\x18\x03 \x01(\tR\amessage\"\xe6\x01\n" +
	"\x18ListScopedRecordsRequest\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x01 \x01(\tR\tscopeName\x12\x1f\n" +
	"\vname_filter\x18\x02 \x01(\tR\n" +
	"nameFilter\x12E\n" +
	"\x12record_type_filter\x18\x03 \x01(\x0e2\x17.rolodex_dns.RecordTypeR\x10recordTypeFilter\x12$\n" +
	"\x0efilter_by_type\x18\x04 \x01(\bR\ffilterByType\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x05 \x01(\tR\tauthToken\"M\n" +
	"\x19ListScopedRecordsResponse\x120\n" +
	"\arecords\x18\x01 \x03(\v2\x16.rolodex_dns.DnsRecordR\arecords\"W\n" +
	"\x17GetSearchDomainsRequest\x12\x1d\n" +
	"\n" +
	"ip_address\x18\x01 \x01(\tR\tipAddress\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"A\n" +
	"\x18GetSearchDomainsResponse\x12%\n" +
	"\x0esearch_domains\x18\x01 \x03(\tR\rsearchDomains\"P\n" +
	"\x1bAddAuthoritativeZoneRequest\x12\x12\n" +
	"\x04zone\x18\x01 \x01(\tR\x04zone\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"R\n" +
	"\x1cAddAuthoritativeZoneResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"S\n" +
	"\x1eRemoveAuthoritativeZoneRequest\x12\x12\n" +
	"\x04zone\x18\x01 \x01(\tR\x04zone\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"U\n" +
	"\x1fRemoveAuthoritativeZoneResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\">\n" +
	"\x1dListAuthoritativeZonesRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"6\n" +
	"\x1eListAuthoritativeZonesResponse\x12\x14\n" +
	"\x05zones\x18\x01 \x03(\tR\x05zones\"5\n" +
	"\x14GetCacheStatsRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"x\n" +
	"\x15GetCacheStatsResponse\x12#\n" +
	"\rtotal_entries\x18\x01 \x01(\x04R\ftotalEntries\x12\x1b\n" +
	"\thit_count\x18\x02 \x01(\x04R\bhitCount\x12\x1d\n" +
	"\n" +
	"miss_count\x18\x03 \x01(\x04R\tmissCount\"5\n" +
	"\x14FlushDnsCacheRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"K\n" +
	"\x15FlushDnsCacheResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"v\n" +
	"\x0eTtlDriftConfig\x12\x12\n" +
	"\x04mode\x18\x01 \x01(\tR\x04mode\x12)\n" +
	"\x10fixed_adjustment\x18\x02 \x01(\tR\x0ffixedAdjustment\x12%\n" +
	"\x0elog_multiplier\x18\x03 \x01(\x01R\rlogMultiplier\"n\n" +
	"\x18SetTtlDriftConfigRequest\x123\n" +
	"\x06config\x18\x01 \x01(\v2\x1b.rolodex_dns.TtlDriftConfigR\x06config\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"O\n" +
	"\x19SetTtlDriftConfigResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"9\n" +
	"\x18GetTtlDriftConfigRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"P\n" +
	"\x19GetTtlDriftConfigResponse\x123\n" +
	"\x06config\x18\x01 \x01(\v2\x1b.rolodex_dns.TtlDriftConfigR\x06config\"q\n" +
	"\x10QueryLatencyStat\x12\x16\n" +
	"\x06server\x18\x01 \x01(\tR\x06server\x12$\n" +
	"\x0eavg_latency_ms\x18\x02 \x01(\x01R\favgLatencyMs\x12\x1f\n" +
	"\vquery_count\x18\x03 \x01(\x04R\n" +
	"queryCount\"<\n" +
	"\x1bGetQueryLatencyStatsRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"S\n" +
	"\x1cGetQueryLatencyStatsResponse\x123\n" +
	"\x05stats\x18\x01 \x03(\v2\x1d.rolodex_dns.QueryLatencyStatR\x05stats\";\n" +
	"\rLocalRblEntry\x12\x12\n" +
	"\x04name\x18\x01 \x01(\tR\x04name\x12\x16\n" +
	"\x06reason\x18\x02 \x01(\tR\x06reason\"j\n" +
	"\x17AddLocalRblEntryRequest\x120\n" +
	"\x05entry\x18\x01 \x01(\v2\x1a.rolodex_dns.LocalRblEntryR\x05entry\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"N\n" +
	"\x18AddLocalRblEntryResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"O\n" +
	"\x1aRemoveLocalRblEntryRequest\x12\x12\n" +
	"\x04name\x18\x01 \x01(\tR\x04name\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"Q\n" +
	"\x1bRemoveLocalRblEntryResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\";\n" +
	"\x1aListLocalRblEntriesRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"S\n" +
	"\x1bListLocalRblEntriesResponse\x124\n" +
	"\aentries\x18\x01 \x03(\v2\x1a.rolodex_dns.LocalRblEntryR\aentries\"m\n" +
	"\tTlsConfig\x12\x1b\n" +
	"\tcert_path\x18\x01 \x01(\tR\bcertPath\x12\x19\n" +
	"\bkey_path\x18\x02 \x01(\tR\akeyPath\x12(\n" +
	"\x10auto_self_signed\x18\x03 \x01(\bR\x0eautoSelfSigned\"I\n" +
	"\tDotConfig\x12\x12\n" +
	"\x04bind\x18\x01 \x01(\tR\x04bind\x12(\n" +
	"\x03tls\x18\x02 \x01(\v2\x16.rolodex_dns.TlsConfigR\x03tls\"d\n" +
	"\x13SetDotConfigRequest\x12.\n" +
	"\x06config\x18\x01 \x01(\v2\x16.rolodex_dns.DotConfigR\x06config\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"J\n" +
	"\x14SetDotConfigResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"4\n" +
	"\x13GetDotConfigRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"F\n" +
	"\x14GetDotConfigResponse\x12.\n" +
	"\x06config\x18\x01 \x01(\v2\x16.rolodex_dns.DotConfigR\x06config\"f\n" +
	"\tDohConfig\x12\x12\n" +
	"\x04bind\x18\x01 \x01(\tR\x04bind\x12(\n" +
	"\x03tls\x18\x02 \x01(\v2\x16.rolodex_dns.TlsConfigR\x03tls\x12\x1b\n" +
	"\tenable_h3\x18\x03 \x01(\bR\benableH3\"d\n" +
	"\x13SetDohConfigRequest\x12.\n" +
	"\x06config\x18\x01 \x01(\v2\x16.rolodex_dns.DohConfigR\x06config\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"J\n" +
	"\x14SetDohConfigResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"4\n" +
	"\x13GetDohConfigRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"F\n" +
	"\x14GetDohConfigResponse\x12.\n" +
	"\x06config\x18\x01 \x01(\v2\x16.rolodex_dns.DohConfigR\x06config\"I\n" +
	"\tDoqConfig\x12\x12\n" +
	"\x04bind\x18\x01 \x01(\tR\x04bind\x12(\n" +
	"\x03tls\x18\x02 \x01(\v2\x16.rolodex_dns.TlsConfigR\x03tls\"d\n" +
	"\x13SetDoqConfigRequest\x12.\n" +
	"\x06config\x18\x01 \x01(\v2\x16.rolodex_dns.DoqConfigR\x06config\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"J\n" +
	"\x14SetDoqConfigResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"4\n" +
	"\x13GetDoqConfigRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"F\n" +
	"\x14GetDoqConfigResponse\x12.\n" +
	"\x06config\x18\x01 \x01(\v2\x16.rolodex_dns.DoqConfigR\x06config\"G\n" +
	"\vProxyConfig\x12\x10\n" +
	"\x03url\x18\x01 \x01(\tR\x03url\x12\x12\n" +
	"\x04auth\x18\x02 \x01(\tR\x04auth\x12\x12\n" +
	"\x04mode\x18\x03 \x01(\tR\x04mode\"h\n" +
	"\x15SetProxyConfigRequest\x120\n" +
	"\x06config\x18\x01 \x01(\v2\x18.rolodex_dns.ProxyConfigR\x06config\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"L\n" +
	"\x16SetProxyConfigResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"6\n" +
	"\x15GetProxyConfigRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"J\n" +
	"\x16GetProxyConfigResponse\x120\n" +
	"\x06config\x18\x01 \x01(\v2\x18.rolodex_dns.ProxyConfigR\x06config\"\xf6\x01\n" +
	"\tDnssecKey\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\x03R\x02id\x12\x12\n" +
	"\x04zone\x18\x02 \x01(\tR\x04zone\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x03 \x01(\tR\tscopeName\x12\x1c\n" +
	"\talgorithm\x18\x04 \x01(\tR\talgorithm\x12\x19\n" +
	"\bkey_type\x18\x05 \x01(\tR\akeyType\x12\x17\n" +
	"\akey_tag\x18\x06 \x01(\rR\x06keyTag\x12\x1d\n" +
	"\n" +
	"created_at\x18\a \x01(\x03R\tcreatedAt\x12\x1d\n" +
	"\n" +
	"expires_at\x18\b \x01(\x03R\texpiresAt\x12\x16\n" +
	"\x06active\x18\t \x01(\bR\x06active\"\x86\x01\n" +
	"\x18GenerateDnssecKeyRequest\x12\x12\n" +
	"\x04zone\x18\x01 \x01(\tR\x04zone\x12\x1c\n" +
	"\talgorithm\x18\x02 \x01(\tR\talgorithm\x12\x19\n" +
	"\bkey_type\x18\x03 \x01(\tR\akeyType\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x04 \x01(\tR\tauthToken\"y\n" +
	"\x19GenerateDnssecKeyResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\x12(\n" +
	"\x03key\x18\x03 \x01(\v2\x16.rolodex_dns.DnssecKeyR\x03key\"J\n" +
	"\x15ListDnssecKeysRequest\x12\x12\n" +
	"\x04zone\x18\x01 \x01(\tR\x04zone\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"D\n" +
	"\x16ListDnssecKeysResponse\x12*\n" +
	"\x04keys\x18\x01 \x03(\v2\x16.rolodex_dns.DnssecKeyR\x04keys\"N\n" +
	"\x16DeleteDnssecKeyRequest\x12\x15\n" +
	"\x06key_id\x18\x01 \x01(\x03R\x05keyId\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"M\n" +
	"\x17DeleteDnssecKeyResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"H\n" +
	"\x13GetDsRecordsRequest\x12\x12\n" +
	"\x04zone\x18\x01 \x01(\tR\x04zone\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"5\n" +
	"\x14GetDsRecordsResponse\x12\x1d\n" +
	"\n" +
	"ds_records\x18\x01 \x03(\tR\tdsRecords\"D\n" +
	"\x0fSignZoneRequest\x12\x12\n" +
	"\x04zone\x18\x01 \x01(\tR\x04zone\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"F\n" +
	"\x10SignZoneResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"\xf4\x01\n" +
	"\x19GenerateTlsaRecordRequest\x12\x16\n" +
	"\x06domain\x18\x01 \x01(\tR\x06domain\x12\x12\n" +
	"\x04port\x18\x02 \x01(\rR\x04port\x12\x1a\n" +
	"\bprotocol\x18\x03 \x01(\tR\bprotocol\x12\x14\n" +
	"\x05usage\x18\x04 \x01(\rR\x05usage\x12\x1a\n" +
	"\bselector\x18\x05 \x01(\rR\bselector\x12#\n" +
	"\rmatching_type\x18\x06 \x01(\rR\fmatchingType\x12\x19\n" +
	"\bcert_pem\x18\a \x01(\tR\acertPem\x12\x1d\n" +
	"\n" +
	"auth_token\x18\b \x01(\tR\tauthToken\"q\n" +
	"\x1aGenerateTlsaRecordResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\x12\x1f\n" +
	"\vtlsa_record\x18\x03 \x01(\tR\n" +
	"tlsaRecord\"O\n" +
	"\x16ListTlsaRecordsRequest\x12\x16\n" +
	"\x06domain\x18\x01 \x01(\tR\x06domain\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"K\n" +
	"\x17ListTlsaRecordsResponse\x120\n" +
	"\arecords\x18\x01 \x03(\v2\x16.rolodex_dns.DnsRecordR\arecords\"N\n" +
	"\x19GenerateDaneRootCaRequest\x12\x12\n" +
	"\x04name\x18\x01 \x01(\tR\x04name\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"k\n" +
	"\x1aGenerateDaneRootCaResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\x12\x19\n" +
	"\bcert_pem\x18\x03 \x01(\tR\acertPem\"r\n" +
	"\x16RequestAcmeCertRequest\x12\x16\n" +
	"\x06domain\x18\x01 \x01(\tR\x06domain\x12!\n" +
	"\fprovider_url\x18\x02 \x01(\tR\vproviderUrl\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x03 \x01(\tR\tauthToken\"M\n" +
	"\x17RequestAcmeCertResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"M\n" +
	"\x14GetAcmeStatusRequest\x12\x16\n" +
	"\x06domain\x18\x01 \x01(\tR\x06domain\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"f\n" +
	"\x15GetAcmeStatusResponse\x12\x16\n" +
	"\x06status\x18\x01 \x01(\tR\x06status\x12\x1d\n" +
	"\n" +
	"expires_at\x18\x02 \x01(\x03R\texpiresAt\x12\x16\n" +
	"\x06domain\x18\x03 \x01(\tR\x06domain\"H\n" +
	"\x13EnsureZoneCaRequest\x12\x12\n" +
	"\x04zone\x18\x01 \x01(\tR\x04zone\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"\x9a\x01\n" +
	"\x14EnsureZoneCaResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\x12\x1e\n" +
	"\vroot_ca_pem\x18\x03 \x01(\tR\trootCaPem\x12.\n" +
	"\x13intermediate_ca_pem\x18\x04 \x01(\tR\x11intermediateCaPem\"O\n" +
	"\x1aCreateEabCredentialRequest\x12\x12\n" +
	"\x04zone\x18\x01 \x01(\tR\x04zone\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"\xa3\x01\n" +
	"\x1bCreateEabCredentialResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\x12\x10\n" +
	"\x03kid\x18\x03 \x01(\tR\x03kid\x12\x19\n" +
	"\bhmac_key\x18\x04 \x01(\tR\ahmacKey\x12#\n" +
	"\rdirectory_url\x18\x05 \x01(\tR\fdirectoryUrl\"M\n" +
	"\x1aRemoveEabCredentialRequest\x12\x10\n" +
	"\x03kid\x18\x01 \x01(\tR\x03kid\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"Q\n" +
	"\x1bRemoveEabCredentialResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"u\n" +
	"\x0fAcmeAccountInfo\x12\x1d\n" +
	"\n" +
	"account_id\x18\x01 \x01(\tR\taccountId\x12\x16\n" +
	"\x06status\x18\x02 \x01(\tR\x06status\x12\x12\n" +
	"\x04zone\x18\x03 \x01(\tR\x04zone\x12\x17\n" +
	"\aeab_kid\x18\x04 \x01(\tR\x06eabKid\"8\n" +
	"\x17ListAcmeAccountsRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"T\n" +
	"\x18ListAcmeAccountsResponse\x128\n" +
	"\baccounts\x18\x01 \x03(\v2\x1c.rolodex_dns.AcmeAccountInfoR\baccounts\"y\n" +
	"\x13AcmeCertificateInfo\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\x03R\x02id\x12\x16\n" +
	"\x06domain\x18\x02 \x01(\tR\x06domain\x12\x1b\n" +
	"\tissued_at\x18\x03 \x01(\x03R\bissuedAt\x12\x1d\n" +
	"\n" +
	"expires_at\x18\x04 \x01(\x03R\texpiresAt\"P\n" +
	"\x1bListAcmeCertificatesRequest\x12\x12\n" +
	"\x04zone\x18\x01 \x01(\tR\x04zone\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"d\n" +
	"\x1cListAcmeCertificatesResponse\x12D\n" +
	"\fcertificates\x18\x01 \x03(\v2 .rolodex_dns.AcmeCertificateInfoR\fcertificates\"?\n" +
	"\vDns64Config\x12\x18\n" +
	"\aenabled\x18\x01 \x01(\bR\aenabled\x12\x16\n" +
	"\x06prefix\x18\x02 \x01(\tR\x06prefix\"h\n" +
	"\x15SetDns64ConfigRequest\x120\n" +
	"\x06config\x18\x01 \x01(\v2\x18.rolodex_dns.Dns64ConfigR\x06config\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"L\n" +
	"\x16SetDns64ConfigResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"6\n" +
	"\x15GetDns64ConfigRequest\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x01 \x01(\tR\tauthToken\"J\n" +
	"\x16GetDns64ConfigResponse\x120\n" +
	"\x06config\x18\x01 \x01(\v2\x18.rolodex_dns.Dns64ConfigR\x06config\"\xd3\x01\n" +
	"\bDhcpPool\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\x03R\x02id\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x02 \x01(\tR\tscopeName\x12\x1f\n" +
	"\vrange_start\x18\x03 \x01(\tR\n" +
	"rangeStart\x12\x1b\n" +
	"\trange_end\x18\x04 \x01(\tR\brangeEnd\x12\x18\n" +
	"\agateway\x18\x05 \x01(\tR\agateway\x12\x1f\n" +
	"\vsubnet_mask\x18\x06 \x01(\tR\n" +
	"subnetMask\x12\x1f\n" +
	"\vdns_servers\x18\a \x01(\tR\n" +
	"dnsServers\"^\n" +
	"\x12AddDhcpPoolRequest\x12)\n" +
	"\x04pool\x18\x01 \x01(\v2\x15.rolodex_dns.DhcpPoolR\x04pool\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"I\n" +
	"\x13AddDhcpPoolResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"O\n" +
	"\x15RemoveDhcpPoolRequest\x12\x17\n" +
	"\apool_id\x18\x01 \x01(\x03R\x06poolId\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"L\n" +
	"\x16RemoveDhcpPoolResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"T\n" +
	"\x14ListDhcpPoolsRequest\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x01 \x01(\tR\tscopeName\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"D\n" +
	"\x15ListDhcpPoolsResponse\x12+\n" +
	"\x05pools\x18\x01 \x03(\v2\x15.rolodex_dns.DhcpPoolR\x05pools\"\xc6\x01\n" +
	"\tDhcpLease\x12\x10\n" +
	"\x03mac\x18\x01 \x01(\tR\x03mac\x12\x0e\n" +
	"\x02ip\x18\x02 \x01(\tR\x02ip\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x03 \x01(\tR\tscopeName\x12\x1a\n" +
	"\bhostname\x18\x04 \x01(\tR\bhostname\x12\x1f\n" +
	"\vlease_start\x18\x05 \x01(\x03R\n" +
	"leaseStart\x12%\n" +
	"\x0elease_duration\x18\x06 \x01(\x03R\rleaseDuration\x12\x14\n" +
	"\x05state\x18\a \x01(\tR\x05state\"U\n" +
	"\x15ListDhcpLeasesRequest\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x01 \x01(\tR\tscopeName\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"H\n" +
	"\x16ListDhcpLeasesResponse\x12.\n" +
	"\x06leases\x18\x01 \x03(\v2\x16.rolodex_dns.DhcpLeaseR\x06leases\"I\n" +
	"\x16DeleteDhcpLeaseRequest\x12\x10\n" +
	"\x03mac\x18\x01 \x01(\tR\x03mac\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"M\n" +
	"\x17DeleteDhcpLeaseResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"_\n" +
	"\x10ScopeRblProvider\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x01 \x01(\tR\tscopeName\x12\x12\n" +
	"\x04zone\x18\x02 \x01(\tR\x04zone\x12\x18\n" +
	"\aenabled\x18\x03 \x01(\bR\aenabled\"v\n" +
	"\x1aAddScopeRblProviderRequest\x129\n" +
	"\bprovider\x18\x01 \x01(\v2\x1d.rolodex_dns.ScopeRblProviderR\bprovider\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"Q\n" +
	"\x1bAddScopeRblProviderResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"q\n" +
	"\x1dRemoveScopeRblProviderRequest\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x01 \x01(\tR\tscopeName\x12\x12\n" +
	"\x04zone\x18\x02 \x01(\tR\x04zone\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x03 \x01(\tR\tauthToken\"T\n" +
	"\x1eRemoveScopeRblProviderResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"\\\n" +
	"\x1cListScopeRblProvidersRequest\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x01 \x01(\tR\tscopeName\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"\\\n" +
	"\x1dListScopeRblProvidersResponse\x12;\n" +
	"\tproviders\x18\x01 \x03(\v2\x1d.rolodex_dns.ScopeRblProviderR\tproviders\"\x8f\x01\n" +
	"\x0eDhcpCertOption\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x01 \x01(\tR\tscopeName\x12\x1f\n" +
	"\voption_code\x18\x02 \x01(\rR\n" +
	"optionCode\x12\x1b\n" +
	"\tcert_data\x18\x03 \x01(\fR\bcertData\x12 \n" +
	"\vdescription\x18\x04 \x01(\tR\vdescription\"n\n" +
	"\x18SetDhcpCertOptionRequest\x123\n" +
	"\x06option\x18\x01 \x01(\v2\x1b.rolodex_dns.DhcpCertOptionR\x06option\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"O\n" +
	"\x19SetDhcpCertOptionResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"|\n" +
	"\x1bRemoveDhcpCertOptionRequest\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x01 \x01(\tR\tscopeName\x12\x1f\n" +
	"\voption_code\x18\x02 \x01(\rR\n" +
	"optionCode\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x03 \x01(\tR\tauthToken\"R\n" +
	"\x1cRemoveDhcpCertOptionResponse\x12\x18\n" +
	"\asuccess\x18\x01 \x01(\bR\asuccess\x12\x18\n" +
	"\amessage\x18\x02 \x01(\tR\amessage\"Z\n" +
	"\x1aListDhcpCertOptionsRequest\x12\x1d\n" +
	"\n" +
	"scope_name\x18\x01 \x01(\tR\tscopeName\x12\x1d\n" +
	"\n" +
	"auth_token\x18\x02 \x01(\tR\tauthToken\"T\n" +
	"\x1bListDhcpCertOptionsResponse\x125\n" +
	"\aoptions\x18\x01 \x03(\v2\x1b.rolodex_dns.DhcpCertOptionR\aoptions*\xea\x01\n" +
	"\n" +
	"RecordType\x12\x05\n" +
	"\x01A\x10\x00\x12\b\n" +
	"\x04AAAA\x10\x01\x12\t\n" +
	"\x05CNAME\x10\x02\x12\x06\n" +
	"\x02MX\x10\x03\x12\a\n" +
	"\x03TXT\x10\x04\x12\x06\n" +
	"\x02NS\x10\x05\x12\a\n" +
	"\x03SOA\x10\x06\x12\a\n" +
	"\x03SRV\x10\a\x12\a\n" +
	"\x03PTR\x10\b\x12\a\n" +
	"\x03URI\x10\t\x12\t\n" +
	"\x05SSHFP\x10\n" +
	"\x12\t\n" +
	"\x05DNAME\x10\v\x12\t\n" +
	"\x05ANAME\x10\f\x12\n" +
	"\n" +
	"\x06ZONEMD\x10\r\x12\b\n" +
	"\x04TLSA\x10\x0e\x12\n" +
	"\n" +
	"\x06DNSKEY\x10\x0f\x12\x06\n" +
	"\x02DS\x10\x10\x12\t\n" +
	"\x05RRSIG\x10\x11\x12\b\n" +
	"\x04NSEC\x10\x12\x12\t\n" +
	"\x05NSEC3\x10\x13\x12\x0e\n" +
	"\n" +
	"NSEC3PARAM\x10\x14\x12\b\n" +
	"\x04CERT\x10\x152\xdf/\n" +
	"\x11RolodexDnsService\x12J\n" +
	"\tAddRecord\x12\x1d.rolodex_dns.AddRecordRequest\x1a\x1e.rolodex_dns.AddRecordResponse\x12S\n" +
	"\fRemoveRecord\x12 .rolodex_dns.RemoveRecordRequest\x1a!.rolodex_dns.RemoveRecordResponse\x12P\n" +
	"\vListRecords\x12\x1f.rolodex_dns.ListRecordsRequest\x1a .rolodex_dns.ListRecordsResponse\x12T\n" +
	"\rSetForwarders\x12 .rolodex_dns.SetForwarderRequest\x1a!.rolodex_dns.SetForwarderResponse\x12S\n" +
	"\fSetRblConfig\x12 .rolodex_dns.SetRblConfigRequest\x1a!.rolodex_dns.SetRblConfigResponse\x12S\n" +
	"\fGetRblConfig\x12 .rolodex_dns.GetRblConfigRequest\x1a!.rolodex_dns.GetRblConfigResponse\x12M\n" +
	"\n" +
	"FlushCache\x12\x1e.rolodex_dns.FlushCacheRequest\x1a\x1f.rolodex_dns.FlushCacheResponse\x12e\n" +
	"\x12CreateNetworkScope\x12&.rolodex_dns.CreateNetworkScopeRequest\x1a'.rolodex_dns.CreateNetworkScopeResponse\x12e\n" +
	"\x12DeleteNetworkScope\x12&.rolodex_dns.DeleteNetworkScopeRequest\x1a'.rolodex_dns.DeleteNetworkScopeResponse\x12b\n" +
	"\x11ListNetworkScopes\x12%.rolodex_dns.ListNetworkScopesRequest\x1a&.rolodex_dns.ListNetworkScopesResponse\x12P\n" +
	"\vJoinNetwork\x12\x1f.rolodex_dns.JoinNetworkRequest\x1a .rolodex_dns.JoinNetworkResponse\x12S\n" +
	"\fLeaveNetwork\x12 .rolodex_dns.LeaveNetworkRequest\x1a!.rolodex_dns.LeaveNetworkResponse\x12q\n" +
	"\x16GetNetworkAssociations\x12*.rolodex_dns.GetNetworkAssociationsRequest\x1a+.rolodex_dns.GetNetworkAssociationsResponse\x12\\\n" +
	"\x0fAddScopedRecord\x12#.rolodex_dns.AddScopedRecordRequest\x1a$.rolodex_dns.AddScopedRecordResponse\x12e\n" +
	"\x12RemoveScopedRecord\x12&.rolodex_dns.RemoveScopedRecordRequest\x1a'.rolodex_dns.RemoveScopedRecordResponse\x12b\n" +
	"\x11ListScopedRecords\x12%.rolodex_dns.ListScopedRecordsRequest\x1a&.rolodex_dns.ListScopedRecordsResponse\x12_\n" +
	"\x10GetSearchDomains\x12$.rolodex_dns.GetSearchDomainsRequest\x1a%.rolodex_dns.GetSearchDomainsResponse\x12k\n" +
	"\x14AddAuthoritativeZone\x12(.rolodex_dns.AddAuthoritativeZoneRequest\x1a).rolodex_dns.AddAuthoritativeZoneResponse\x12t\n" +
	"\x17RemoveAuthoritativeZone\x12+.rolodex_dns.RemoveAuthoritativeZoneRequest\x1a,.rolodex_dns.RemoveAuthoritativeZoneResponse\x12q\n" +
	"\x16ListAuthoritativeZones\x12*.rolodex_dns.ListAuthoritativeZonesRequest\x1a+.rolodex_dns.ListAuthoritativeZonesResponse\x12V\n" +
	"\rGetCacheStats\x12!.rolodex_dns.GetCacheStatsRequest\x1a\".rolodex_dns.GetCacheStatsResponse\x12V\n" +
	"\rFlushDnsCache\x12!.rolodex_dns.FlushDnsCacheRequest\x1a\".rolodex_dns.FlushDnsCacheResponse\x12b\n" +
	"\x11SetTtlDriftConfig\x12%.rolodex_dns.SetTtlDriftConfigRequest\x1a&.rolodex_dns.SetTtlDriftConfigResponse\x12b\n" +
	"\x11GetTtlDriftConfig\x12%.rolodex_dns.GetTtlDriftConfigRequest\x1a&.rolodex_dns.GetTtlDriftConfigResponse\x12k\n" +
	"\x14GetQueryLatencyStats\x12(.rolodex_dns.GetQueryLatencyStatsRequest\x1a).rolodex_dns.GetQueryLatencyStatsResponse\x12_\n" +
	"\x10AddLocalRblEntry\x12$.rolodex_dns.AddLocalRblEntryRequest\x1a%.rolodex_dns.AddLocalRblEntryResponse\x12h\n" +
	"\x13RemoveLocalRblEntry\x12'.rolodex_dns.RemoveLocalRblEntryRequest\x1a(.rolodex_dns.RemoveLocalRblEntryResponse\x12h\n" +
	"\x13ListLocalRblEntries\x12'.rolodex_dns.ListLocalRblEntriesRequest\x1a(.rolodex_dns.ListLocalRblEntriesResponse\x12S\n" +
	"\fSetDotConfig\x12 .rolodex_dns.SetDotConfigRequest\x1a!.rolodex_dns.SetDotConfigResponse\x12S\n" +
	"\fGetDotConfig\x12 .rolodex_dns.GetDotConfigRequest\x1a!.rolodex_dns.GetDotConfigResponse\x12S\n" +
	"\fSetDohConfig\x12 .rolodex_dns.SetDohConfigRequest\x1a!.rolodex_dns.SetDohConfigResponse\x12S\n" +
	"\fGetDohConfig\x12 .rolodex_dns.GetDohConfigRequest\x1a!.rolodex_dns.GetDohConfigResponse\x12S\n" +
	"\fSetDoqConfig\x12 .rolodex_dns.SetDoqConfigRequest\x1a!.rolodex_dns.SetDoqConfigResponse\x12S\n" +
	"\fGetDoqConfig\x12 .rolodex_dns.GetDoqConfigRequest\x1a!.rolodex_dns.GetDoqConfigResponse\x12Y\n" +
	"\x0eSetProxyConfig\x12\".rolodex_dns.SetProxyConfigRequest\x1a#.rolodex_dns.SetProxyConfigResponse\x12Y\n" +
	"\x0eGetProxyConfig\x12\".rolodex_dns.GetProxyConfigRequest\x1a#.rolodex_dns.GetProxyConfigResponse\x12b\n" +
	"\x11GenerateDnssecKey\x12%.rolodex_dns.GenerateDnssecKeyRequest\x1a&.rolodex_dns.GenerateDnssecKeyResponse\x12Y\n" +
	"\x0eListDnssecKeys\x12\".rolodex_dns.ListDnssecKeysRequest\x1a#.rolodex_dns.ListDnssecKeysResponse\x12\\\n" +
	"\x0fDeleteDnssecKey\x12#.rolodex_dns.DeleteDnssecKeyRequest\x1a$.rolodex_dns.DeleteDnssecKeyResponse\x12S\n" +
	"\fGetDsRecords\x12 .rolodex_dns.GetDsRecordsRequest\x1a!.rolodex_dns.GetDsRecordsResponse\x12G\n" +
	"\bSignZone\x12\x1c.rolodex_dns.SignZoneRequest\x1a\x1d.rolodex_dns.SignZoneResponse\x12e\n" +
	"\x12GenerateTlsaRecord\x12&.rolodex_dns.GenerateTlsaRecordRequest\x1a'.rolodex_dns.GenerateTlsaRecordResponse\x12\\\n" +
	"\x0fListTlsaRecords\x12#.rolodex_dns.ListTlsaRecordsRequest\x1a$.rolodex_dns.ListTlsaRecordsResponse\x12e\n" +
	"\x12GenerateDaneRootCa\x12&.rolodex_dns.GenerateDaneRootCaRequest\x1a'.rolodex_dns.GenerateDaneRootCaResponse\x12\\\n" +
	"\x0fRequestAcmeCert\x12#.rolodex_dns.RequestAcmeCertRequest\x1a$.rolodex_dns.RequestAcmeCertResponse\x12V\n" +
	"\rGetAcmeStatus\x12!.rolodex_dns.GetAcmeStatusRequest\x1a\".rolodex_dns.GetAcmeStatusResponse\x12Y\n" +
	"\x0eSetDns64Config\x12\".rolodex_dns.SetDns64ConfigRequest\x1a#.rolodex_dns.SetDns64ConfigResponse\x12Y\n" +
	"\x0eGetDns64Config\x12\".rolodex_dns.GetDns64ConfigRequest\x1a#.rolodex_dns.GetDns64ConfigResponse\x12P\n" +
	"\vAddDhcpPool\x12\x1f.rolodex_dns.AddDhcpPoolRequest\x1a .rolodex_dns.AddDhcpPoolResponse\x12Y\n" +
	"\x0eRemoveDhcpPool\x12\".rolodex_dns.RemoveDhcpPoolRequest\x1a#.rolodex_dns.RemoveDhcpPoolResponse\x12V\n" +
	"\rListDhcpPools\x12!.rolodex_dns.ListDhcpPoolsRequest\x1a\".rolodex_dns.ListDhcpPoolsResponse\x12Y\n" +
	"\x0eListDhcpLeases\x12\".rolodex_dns.ListDhcpLeasesRequest\x1a#.rolodex_dns.ListDhcpLeasesResponse\x12\\\n" +
	"\x0fDeleteDhcpLease\x12#.rolodex_dns.DeleteDhcpLeaseRequest\x1a$.rolodex_dns.DeleteDhcpLeaseResponse\x12h\n" +
	"\x13AddScopeRblProvider\x12'.rolodex_dns.AddScopeRblProviderRequest\x1a(.rolodex_dns.AddScopeRblProviderResponse\x12q\n" +
	"\x16RemoveScopeRblProvider\x12*.rolodex_dns.RemoveScopeRblProviderRequest\x1a+.rolodex_dns.RemoveScopeRblProviderResponse\x12n\n" +
	"\x15ListScopeRblProviders\x12).rolodex_dns.ListScopeRblProvidersRequest\x1a*.rolodex_dns.ListScopeRblProvidersResponse\x12b\n" +
	"\x11SetDhcpCertOption\x12%.rolodex_dns.SetDhcpCertOptionRequest\x1a&.rolodex_dns.SetDhcpCertOptionResponse\x12k\n" +
	"\x14RemoveDhcpCertOption\x12(.rolodex_dns.RemoveDhcpCertOptionRequest\x1a).rolodex_dns.RemoveDhcpCertOptionResponse\x12h\n" +
	"\x13ListDhcpCertOptions\x12'.rolodex_dns.ListDhcpCertOptionsRequest\x1a(.rolodex_dns.ListDhcpCertOptionsResponse\x12S\n" +
	"\fEnsureZoneCa\x12 .rolodex_dns.EnsureZoneCaRequest\x1a!.rolodex_dns.EnsureZoneCaResponse\x12h\n" +
	"\x13CreateEabCredential\x12'.rolodex_dns.CreateEabCredentialRequest\x1a(.rolodex_dns.CreateEabCredentialResponse\x12h\n" +
	"\x13RemoveEabCredential\x12'.rolodex_dns.RemoveEabCredentialRequest\x1a(.rolodex_dns.RemoveEabCredentialResponse\x12_\n" +
	"\x10ListAcmeAccounts\x12$.rolodex_dns.ListAcmeAccountsRequest\x1a%.rolodex_dns.ListAcmeAccountsResponse\x12k\n" +
	"\x14ListAcmeCertificates\x12(.rolodex_dns.ListAcmeCertificatesRequest\x1a).rolodex_dns.ListAcmeCertificatesResponseB/Z-gitea.com/town-os/rolodex-dns/go/rolodexdnspbb\x06proto3"

var (
	file_rolodex_dns_proto_rawDescOnce sync.Once
	file_rolodex_dns_proto_rawDescData []byte
)

func file_rolodex_dns_proto_rawDescGZIP() []byte {
	file_rolodex_dns_proto_rawDescOnce.Do(func() {
		file_rolodex_dns_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_rolodex_dns_proto_rawDesc), len(file_rolodex_dns_proto_rawDesc)))
	})
	return file_rolodex_dns_proto_rawDescData
}

var file_rolodex_dns_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_rolodex_dns_proto_msgTypes = make([]protoimpl.MessageInfo, 148)
var file_rolodex_dns_proto_goTypes = []any{
	(RecordType)(0),                         // 0: rolodex_dns.RecordType
	(*DnsRecord)(nil),                       // 1: rolodex_dns.DnsRecord
	(*AddRecordRequest)(nil),                // 2: rolodex_dns.AddRecordRequest
	(*AddRecordResponse)(nil),               // 3: rolodex_dns.AddRecordResponse
	(*RemoveRecordRequest)(nil),             // 4: rolodex_dns.RemoveRecordRequest
	(*RemoveRecordResponse)(nil),            // 5: rolodex_dns.RemoveRecordResponse
	(*ListRecordsRequest)(nil),              // 6: rolodex_dns.ListRecordsRequest
	(*ListRecordsResponse)(nil),             // 7: rolodex_dns.ListRecordsResponse
	(*SetForwarderRequest)(nil),             // 8: rolodex_dns.SetForwarderRequest
	(*SetForwarderResponse)(nil),            // 9: rolodex_dns.SetForwarderResponse
	(*RblConfig)(nil),                       // 10: rolodex_dns.RblConfig
	(*SetRblConfigRequest)(nil),             // 11: rolodex_dns.SetRblConfigRequest
	(*SetRblConfigResponse)(nil),            // 12: rolodex_dns.SetRblConfigResponse
	(*GetRblConfigRequest)(nil),             // 13: rolodex_dns.GetRblConfigRequest
	(*GetRblConfigResponse)(nil),            // 14: rolodex_dns.GetRblConfigResponse
	(*FlushCacheRequest)(nil),               // 15: rolodex_dns.FlushCacheRequest
	(*FlushCacheResponse)(nil),              // 16: rolodex_dns.FlushCacheResponse
	(*NetworkScope)(nil),                    // 17: rolodex_dns.NetworkScope
	(*CreateNetworkScopeRequest)(nil),       // 18: rolodex_dns.CreateNetworkScopeRequest
	(*CreateNetworkScopeResponse)(nil),      // 19: rolodex_dns.CreateNetworkScopeResponse
	(*DeleteNetworkScopeRequest)(nil),       // 20: rolodex_dns.DeleteNetworkScopeRequest
	(*DeleteNetworkScopeResponse)(nil),      // 21: rolodex_dns.DeleteNetworkScopeResponse
	(*ListNetworkScopesRequest)(nil),        // 22: rolodex_dns.ListNetworkScopesRequest
	(*ListNetworkScopesResponse)(nil),       // 23: rolodex_dns.ListNetworkScopesResponse
	(*JoinNetworkRequest)(nil),              // 24: rolodex_dns.JoinNetworkRequest
	(*JoinNetworkResponse)(nil),             // 25: rolodex_dns.JoinNetworkResponse
	(*LeaveNetworkRequest)(nil),             // 26: rolodex_dns.LeaveNetworkRequest
	(*LeaveNetworkResponse)(nil),            // 27: rolodex_dns.LeaveNetworkResponse
	(*GetNetworkAssociationsRequest)(nil),   // 28: rolodex_dns.GetNetworkAssociationsRequest
	(*NetworkAssociation)(nil),              // 29: rolodex_dns.NetworkAssociation
	(*GetNetworkAssociationsResponse)(nil),  // 30: rolodex_dns.GetNetworkAssociationsResponse
	(*AddScopedRecordRequest)(nil),          // 31: rolodex_dns.AddScopedRecordRequest
	(*AddScopedRecordResponse)(nil),         // 32: rolodex_dns.AddScopedRecordResponse
	(*RemoveScopedRecordRequest)(nil),       // 33: rolodex_dns.RemoveScopedRecordRequest
	(*RemoveScopedRecordResponse)(nil),      // 34: rolodex_dns.RemoveScopedRecordResponse
	(*ListScopedRecordsRequest)(nil),        // 35: rolodex_dns.ListScopedRecordsRequest
	(*ListScopedRecordsResponse)(nil),       // 36: rolodex_dns.ListScopedRecordsResponse
	(*GetSearchDomainsRequest)(nil),         // 37: rolodex_dns.GetSearchDomainsRequest
	(*GetSearchDomainsResponse)(nil),        // 38: rolodex_dns.GetSearchDomainsResponse
	(*AddAuthoritativeZoneRequest)(nil),     // 39: rolodex_dns.AddAuthoritativeZoneRequest
	(*AddAuthoritativeZoneResponse)(nil),    // 40: rolodex_dns.AddAuthoritativeZoneResponse
	(*RemoveAuthoritativeZoneRequest)(nil),  // 41: rolodex_dns.RemoveAuthoritativeZoneRequest
	(*RemoveAuthoritativeZoneResponse)(nil), // 42: rolodex_dns.RemoveAuthoritativeZoneResponse
	(*ListAuthoritativeZonesRequest)(nil),   // 43: rolodex_dns.ListAuthoritativeZonesRequest
	(*ListAuthoritativeZonesResponse)(nil),  // 44: rolodex_dns.ListAuthoritativeZonesResponse
	(*GetCacheStatsRequest)(nil),            // 45: rolodex_dns.GetCacheStatsRequest
	(*GetCacheStatsResponse)(nil),           // 46: rolodex_dns.GetCacheStatsResponse
	(*FlushDnsCacheRequest)(nil),            // 47: rolodex_dns.FlushDnsCacheRequest
	(*FlushDnsCacheResponse)(nil),           // 48: rolodex_dns.FlushDnsCacheResponse
	(*TtlDriftConfig)(nil),                  // 49: rolodex_dns.TtlDriftConfig
	(*SetTtlDriftConfigRequest)(nil),        // 50: rolodex_dns.SetTtlDriftConfigRequest
	(*SetTtlDriftConfigResponse)(nil),       // 51: rolodex_dns.SetTtlDriftConfigResponse
	(*GetTtlDriftConfigRequest)(nil),        // 52: rolodex_dns.GetTtlDriftConfigRequest
	(*GetTtlDriftConfigResponse)(nil),       // 53: rolodex_dns.GetTtlDriftConfigResponse
	(*QueryLatencyStat)(nil),                // 54: rolodex_dns.QueryLatencyStat
	(*GetQueryLatencyStatsRequest)(nil),     // 55: rolodex_dns.GetQueryLatencyStatsRequest
	(*GetQueryLatencyStatsResponse)(nil),    // 56: rolodex_dns.GetQueryLatencyStatsResponse
	(*LocalRblEntry)(nil),                   // 57: rolodex_dns.LocalRblEntry
	(*AddLocalRblEntryRequest)(nil),         // 58: rolodex_dns.AddLocalRblEntryRequest
	(*AddLocalRblEntryResponse)(nil),        // 59: rolodex_dns.AddLocalRblEntryResponse
	(*RemoveLocalRblEntryRequest)(nil),      // 60: rolodex_dns.RemoveLocalRblEntryRequest
	(*RemoveLocalRblEntryResponse)(nil),     // 61: rolodex_dns.RemoveLocalRblEntryResponse
	(*ListLocalRblEntriesRequest)(nil),      // 62: rolodex_dns.ListLocalRblEntriesRequest
	(*ListLocalRblEntriesResponse)(nil),     // 63: rolodex_dns.ListLocalRblEntriesResponse
	(*TlsConfig)(nil),                       // 64: rolodex_dns.TlsConfig
	(*DotConfig)(nil),                       // 65: rolodex_dns.DotConfig
	(*SetDotConfigRequest)(nil),             // 66: rolodex_dns.SetDotConfigRequest
	(*SetDotConfigResponse)(nil),            // 67: rolodex_dns.SetDotConfigResponse
	(*GetDotConfigRequest)(nil),             // 68: rolodex_dns.GetDotConfigRequest
	(*GetDotConfigResponse)(nil),            // 69: rolodex_dns.GetDotConfigResponse
	(*DohConfig)(nil),                       // 70: rolodex_dns.DohConfig
	(*SetDohConfigRequest)(nil),             // 71: rolodex_dns.SetDohConfigRequest
	(*SetDohConfigResponse)(nil),            // 72: rolodex_dns.SetDohConfigResponse
	(*GetDohConfigRequest)(nil),             // 73: rolodex_dns.GetDohConfigRequest
	(*GetDohConfigResponse)(nil),            // 74: rolodex_dns.GetDohConfigResponse
	(*DoqConfig)(nil),                       // 75: rolodex_dns.DoqConfig
	(*SetDoqConfigRequest)(nil),             // 76: rolodex_dns.SetDoqConfigRequest
	(*SetDoqConfigResponse)(nil),            // 77: rolodex_dns.SetDoqConfigResponse
	(*GetDoqConfigRequest)(nil),             // 78: rolodex_dns.GetDoqConfigRequest
	(*GetDoqConfigResponse)(nil),            // 79: rolodex_dns.GetDoqConfigResponse
	(*ProxyConfig)(nil),                     // 80: rolodex_dns.ProxyConfig
	(*SetProxyConfigRequest)(nil),           // 81: rolodex_dns.SetProxyConfigRequest
	(*SetProxyConfigResponse)(nil),          // 82: rolodex_dns.SetProxyConfigResponse
	(*GetProxyConfigRequest)(nil),           // 83: rolodex_dns.GetProxyConfigRequest
	(*GetProxyConfigResponse)(nil),          // 84: rolodex_dns.GetProxyConfigResponse
	(*DnssecKey)(nil),                       // 85: rolodex_dns.DnssecKey
	(*GenerateDnssecKeyRequest)(nil),        // 86: rolodex_dns.GenerateDnssecKeyRequest
	(*GenerateDnssecKeyResponse)(nil),       // 87: rolodex_dns.GenerateDnssecKeyResponse
	(*ListDnssecKeysRequest)(nil),           // 88: rolodex_dns.ListDnssecKeysRequest
	(*ListDnssecKeysResponse)(nil),          // 89: rolodex_dns.ListDnssecKeysResponse
	(*DeleteDnssecKeyRequest)(nil),          // 90: rolodex_dns.DeleteDnssecKeyRequest
	(*DeleteDnssecKeyResponse)(nil),         // 91: rolodex_dns.DeleteDnssecKeyResponse
	(*GetDsRecordsRequest)(nil),             // 92: rolodex_dns.GetDsRecordsRequest
	(*GetDsRecordsResponse)(nil),            // 93: rolodex_dns.GetDsRecordsResponse
	(*SignZoneRequest)(nil),                 // 94: rolodex_dns.SignZoneRequest
	(*SignZoneResponse)(nil),                // 95: rolodex_dns.SignZoneResponse
	(*GenerateTlsaRecordRequest)(nil),       // 96: rolodex_dns.GenerateTlsaRecordRequest
	(*GenerateTlsaRecordResponse)(nil),      // 97: rolodex_dns.GenerateTlsaRecordResponse
	(*ListTlsaRecordsRequest)(nil),          // 98: rolodex_dns.ListTlsaRecordsRequest
	(*ListTlsaRecordsResponse)(nil),         // 99: rolodex_dns.ListTlsaRecordsResponse
	(*GenerateDaneRootCaRequest)(nil),       // 100: rolodex_dns.GenerateDaneRootCaRequest
	(*GenerateDaneRootCaResponse)(nil),      // 101: rolodex_dns.GenerateDaneRootCaResponse
	(*RequestAcmeCertRequest)(nil),          // 102: rolodex_dns.RequestAcmeCertRequest
	(*RequestAcmeCertResponse)(nil),         // 103: rolodex_dns.RequestAcmeCertResponse
	(*GetAcmeStatusRequest)(nil),            // 104: rolodex_dns.GetAcmeStatusRequest
	(*GetAcmeStatusResponse)(nil),           // 105: rolodex_dns.GetAcmeStatusResponse
	(*EnsureZoneCaRequest)(nil),             // 106: rolodex_dns.EnsureZoneCaRequest
	(*EnsureZoneCaResponse)(nil),            // 107: rolodex_dns.EnsureZoneCaResponse
	(*CreateEabCredentialRequest)(nil),      // 108: rolodex_dns.CreateEabCredentialRequest
	(*CreateEabCredentialResponse)(nil),     // 109: rolodex_dns.CreateEabCredentialResponse
	(*RemoveEabCredentialRequest)(nil),      // 110: rolodex_dns.RemoveEabCredentialRequest
	(*RemoveEabCredentialResponse)(nil),     // 111: rolodex_dns.RemoveEabCredentialResponse
	(*AcmeAccountInfo)(nil),                 // 112: rolodex_dns.AcmeAccountInfo
	(*ListAcmeAccountsRequest)(nil),         // 113: rolodex_dns.ListAcmeAccountsRequest
	(*ListAcmeAccountsResponse)(nil),        // 114: rolodex_dns.ListAcmeAccountsResponse
	(*AcmeCertificateInfo)(nil),             // 115: rolodex_dns.AcmeCertificateInfo
	(*ListAcmeCertificatesRequest)(nil),     // 116: rolodex_dns.ListAcmeCertificatesRequest
	(*ListAcmeCertificatesResponse)(nil),    // 117: rolodex_dns.ListAcmeCertificatesResponse
	(*Dns64Config)(nil),                     // 118: rolodex_dns.Dns64Config
	(*SetDns64ConfigRequest)(nil),           // 119: rolodex_dns.SetDns64ConfigRequest
	(*SetDns64ConfigResponse)(nil),          // 120: rolodex_dns.SetDns64ConfigResponse
	(*GetDns64ConfigRequest)(nil),           // 121: rolodex_dns.GetDns64ConfigRequest
	(*GetDns64ConfigResponse)(nil),          // 122: rolodex_dns.GetDns64ConfigResponse
	(*DhcpPool)(nil),                        // 123: rolodex_dns.DhcpPool
	(*AddDhcpPoolRequest)(nil),              // 124: rolodex_dns.AddDhcpPoolRequest
	(*AddDhcpPoolResponse)(nil),             // 125: rolodex_dns.AddDhcpPoolResponse
	(*RemoveDhcpPoolRequest)(nil),           // 126: rolodex_dns.RemoveDhcpPoolRequest
	(*RemoveDhcpPoolResponse)(nil),          // 127: rolodex_dns.RemoveDhcpPoolResponse
	(*ListDhcpPoolsRequest)(nil),            // 128: rolodex_dns.ListDhcpPoolsRequest
	(*ListDhcpPoolsResponse)(nil),           // 129: rolodex_dns.ListDhcpPoolsResponse
	(*DhcpLease)(nil),                       // 130: rolodex_dns.DhcpLease
	(*ListDhcpLeasesRequest)(nil),           // 131: rolodex_dns.ListDhcpLeasesRequest
	(*ListDhcpLeasesResponse)(nil),          // 132: rolodex_dns.ListDhcpLeasesResponse
	(*DeleteDhcpLeaseRequest)(nil),          // 133: rolodex_dns.DeleteDhcpLeaseRequest
	(*DeleteDhcpLeaseResponse)(nil),         // 134: rolodex_dns.DeleteDhcpLeaseResponse
	(*ScopeRblProvider)(nil),                // 135: rolodex_dns.ScopeRblProvider
	(*AddScopeRblProviderRequest)(nil),      // 136: rolodex_dns.AddScopeRblProviderRequest
	(*AddScopeRblProviderResponse)(nil),     // 137: rolodex_dns.AddScopeRblProviderResponse
	(*RemoveScopeRblProviderRequest)(nil),   // 138: rolodex_dns.RemoveScopeRblProviderRequest
	(*RemoveScopeRblProviderResponse)(nil),  // 139: rolodex_dns.RemoveScopeRblProviderResponse
	(*ListScopeRblProvidersRequest)(nil),    // 140: rolodex_dns.ListScopeRblProvidersRequest
	(*ListScopeRblProvidersResponse)(nil),   // 141: rolodex_dns.ListScopeRblProvidersResponse
	(*DhcpCertOption)(nil),                  // 142: rolodex_dns.DhcpCertOption
	(*SetDhcpCertOptionRequest)(nil),        // 143: rolodex_dns.SetDhcpCertOptionRequest
	(*SetDhcpCertOptionResponse)(nil),       // 144: rolodex_dns.SetDhcpCertOptionResponse
	(*RemoveDhcpCertOptionRequest)(nil),     // 145: rolodex_dns.RemoveDhcpCertOptionRequest
	(*RemoveDhcpCertOptionResponse)(nil),    // 146: rolodex_dns.RemoveDhcpCertOptionResponse
	(*ListDhcpCertOptionsRequest)(nil),      // 147: rolodex_dns.ListDhcpCertOptionsRequest
	(*ListDhcpCertOptionsResponse)(nil),     // 148: rolodex_dns.ListDhcpCertOptionsResponse
}
var file_rolodex_dns_proto_depIdxs = []int32{
	0,   // 0: rolodex_dns.DnsRecord.record_type:type_name -> rolodex_dns.RecordType
	1,   // 1: rolodex_dns.AddRecordRequest.record:type_name -> rolodex_dns.DnsRecord
	0,   // 2: rolodex_dns.RemoveRecordRequest.record_type:type_name -> rolodex_dns.RecordType
	0,   // 3: rolodex_dns.ListRecordsRequest.record_type_filter:type_name -> rolodex_dns.RecordType
	1,   // 4: rolodex_dns.ListRecordsResponse.records:type_name -> rolodex_dns.DnsRecord
	10,  // 5: rolodex_dns.SetRblConfigRequest.providers:type_name -> rolodex_dns.RblConfig
	10,  // 6: rolodex_dns.GetRblConfigResponse.providers:type_name -> rolodex_dns.RblConfig
	17,  // 7: rolodex_dns.CreateNetworkScopeRequest.scope:type_name -> rolodex_dns.NetworkScope
	17,  // 8: rolodex_dns.ListNetworkScopesResponse.scopes:type_name -> rolodex_dns.NetworkScope
	29,  // 9: rolodex_dns.GetNetworkAssociationsResponse.associations:type_name -> rolodex_dns.NetworkAssociation
	1,   // 10: rolodex_dns.AddScopedRecordRequest.record:type_name -> rolodex_dns.DnsRecord
	0,   // 11: rolodex_dns.RemoveScopedRecordRequest.record_type:type_name -> rolodex_dns.RecordType
	0,   // 12: rolodex_dns.ListScopedRecordsRequest.record_type_filter:type_name -> rolodex_dns.RecordType
	1,   // 13: rolodex_dns.ListScopedRecordsResponse.records:type_name -> rolodex_dns.DnsRecord
	49,  // 14: rolodex_dns.SetTtlDriftConfigRequest.config:type_name -> rolodex_dns.TtlDriftConfig
	49,  // 15: rolodex_dns.GetTtlDriftConfigResponse.config:type_name -> rolodex_dns.TtlDriftConfig
	54,  // 16: rolodex_dns.GetQueryLatencyStatsResponse.stats:type_name -> rolodex_dns.QueryLatencyStat
	57,  // 17: rolodex_dns.AddLocalRblEntryRequest.entry:type_name -> rolodex_dns.LocalRblEntry
	57,  // 18: rolodex_dns.ListLocalRblEntriesResponse.entries:type_name -> rolodex_dns.LocalRblEntry
	64,  // 19: rolodex_dns.DotConfig.tls:type_name -> rolodex_dns.TlsConfig
	65,  // 20: rolodex_dns.SetDotConfigRequest.config:type_name -> rolodex_dns.DotConfig
	65,  // 21: rolodex_dns.GetDotConfigResponse.config:type_name -> rolodex_dns.DotConfig
	64,  // 22: rolodex_dns.DohConfig.tls:type_name -> rolodex_dns.TlsConfig
	70,  // 23: rolodex_dns.SetDohConfigRequest.config:type_name -> rolodex_dns.DohConfig
	70,  // 24: rolodex_dns.GetDohConfigResponse.config:type_name -> rolodex_dns.DohConfig
	64,  // 25: rolodex_dns.DoqConfig.tls:type_name -> rolodex_dns.TlsConfig
	75,  // 26: rolodex_dns.SetDoqConfigRequest.config:type_name -> rolodex_dns.DoqConfig
	75,  // 27: rolodex_dns.GetDoqConfigResponse.config:type_name -> rolodex_dns.DoqConfig
	80,  // 28: rolodex_dns.SetProxyConfigRequest.config:type_name -> rolodex_dns.ProxyConfig
	80,  // 29: rolodex_dns.GetProxyConfigResponse.config:type_name -> rolodex_dns.ProxyConfig
	85,  // 30: rolodex_dns.GenerateDnssecKeyResponse.key:type_name -> rolodex_dns.DnssecKey
	85,  // 31: rolodex_dns.ListDnssecKeysResponse.keys:type_name -> rolodex_dns.DnssecKey
	1,   // 32: rolodex_dns.ListTlsaRecordsResponse.records:type_name -> rolodex_dns.DnsRecord
	112, // 33: rolodex_dns.ListAcmeAccountsResponse.accounts:type_name -> rolodex_dns.AcmeAccountInfo
	115, // 34: rolodex_dns.ListAcmeCertificatesResponse.certificates:type_name -> rolodex_dns.AcmeCertificateInfo
	118, // 35: rolodex_dns.SetDns64ConfigRequest.config:type_name -> rolodex_dns.Dns64Config
	118, // 36: rolodex_dns.GetDns64ConfigResponse.config:type_name -> rolodex_dns.Dns64Config
	123, // 37: rolodex_dns.AddDhcpPoolRequest.pool:type_name -> rolodex_dns.DhcpPool
	123, // 38: rolodex_dns.ListDhcpPoolsResponse.pools:type_name -> rolodex_dns.DhcpPool
	130, // 39: rolodex_dns.ListDhcpLeasesResponse.leases:type_name -> rolodex_dns.DhcpLease
	135, // 40: rolodex_dns.AddScopeRblProviderRequest.provider:type_name -> rolodex_dns.ScopeRblProvider
	135, // 41: rolodex_dns.ListScopeRblProvidersResponse.providers:type_name -> rolodex_dns.ScopeRblProvider
	142, // 42: rolodex_dns.SetDhcpCertOptionRequest.option:type_name -> rolodex_dns.DhcpCertOption
	142, // 43: rolodex_dns.ListDhcpCertOptionsResponse.options:type_name -> rolodex_dns.DhcpCertOption
	2,   // 44: rolodex_dns.RolodexDnsService.AddRecord:input_type -> rolodex_dns.AddRecordRequest
	4,   // 45: rolodex_dns.RolodexDnsService.RemoveRecord:input_type -> rolodex_dns.RemoveRecordRequest
	6,   // 46: rolodex_dns.RolodexDnsService.ListRecords:input_type -> rolodex_dns.ListRecordsRequest
	8,   // 47: rolodex_dns.RolodexDnsService.SetForwarders:input_type -> rolodex_dns.SetForwarderRequest
	11,  // 48: rolodex_dns.RolodexDnsService.SetRblConfig:input_type -> rolodex_dns.SetRblConfigRequest
	13,  // 49: rolodex_dns.RolodexDnsService.GetRblConfig:input_type -> rolodex_dns.GetRblConfigRequest
	15,  // 50: rolodex_dns.RolodexDnsService.FlushCache:input_type -> rolodex_dns.FlushCacheRequest
	18,  // 51: rolodex_dns.RolodexDnsService.CreateNetworkScope:input_type -> rolodex_dns.CreateNetworkScopeRequest
	20,  // 52: rolodex_dns.RolodexDnsService.DeleteNetworkScope:input_type -> rolodex_dns.DeleteNetworkScopeRequest
	22,  // 53: rolodex_dns.RolodexDnsService.ListNetworkScopes:input_type -> rolodex_dns.ListNetworkScopesRequest
	24,  // 54: rolodex_dns.RolodexDnsService.JoinNetwork:input_type -> rolodex_dns.JoinNetworkRequest
	26,  // 55: rolodex_dns.RolodexDnsService.LeaveNetwork:input_type -> rolodex_dns.LeaveNetworkRequest
	28,  // 56: rolodex_dns.RolodexDnsService.GetNetworkAssociations:input_type -> rolodex_dns.GetNetworkAssociationsRequest
	31,  // 57: rolodex_dns.RolodexDnsService.AddScopedRecord:input_type -> rolodex_dns.AddScopedRecordRequest
	33,  // 58: rolodex_dns.RolodexDnsService.RemoveScopedRecord:input_type -> rolodex_dns.RemoveScopedRecordRequest
	35,  // 59: rolodex_dns.RolodexDnsService.ListScopedRecords:input_type -> rolodex_dns.ListScopedRecordsRequest
	37,  // 60: rolodex_dns.RolodexDnsService.GetSearchDomains:input_type -> rolodex_dns.GetSearchDomainsRequest
	39,  // 61: rolodex_dns.RolodexDnsService.AddAuthoritativeZone:input_type -> rolodex_dns.AddAuthoritativeZoneRequest
	41,  // 62: rolodex_dns.RolodexDnsService.RemoveAuthoritativeZone:input_type -> rolodex_dns.RemoveAuthoritativeZoneRequest
	43,  // 63: rolodex_dns.RolodexDnsService.ListAuthoritativeZones:input_type -> rolodex_dns.ListAuthoritativeZonesRequest
	45,  // 64: rolodex_dns.RolodexDnsService.GetCacheStats:input_type -> rolodex_dns.GetCacheStatsRequest
	47,  // 65: rolodex_dns.RolodexDnsService.FlushDnsCache:input_type -> rolodex_dns.FlushDnsCacheRequest
	50,  // 66: rolodex_dns.RolodexDnsService.SetTtlDriftConfig:input_type -> rolodex_dns.SetTtlDriftConfigRequest
	52,  // 67: rolodex_dns.RolodexDnsService.GetTtlDriftConfig:input_type -> rolodex_dns.GetTtlDriftConfigRequest
	55,  // 68: rolodex_dns.RolodexDnsService.GetQueryLatencyStats:input_type -> rolodex_dns.GetQueryLatencyStatsRequest
	58,  // 69: rolodex_dns.RolodexDnsService.AddLocalRblEntry:input_type -> rolodex_dns.AddLocalRblEntryRequest
	60,  // 70: rolodex_dns.RolodexDnsService.RemoveLocalRblEntry:input_type -> rolodex_dns.RemoveLocalRblEntryRequest
	62,  // 71: rolodex_dns.RolodexDnsService.ListLocalRblEntries:input_type -> rolodex_dns.ListLocalRblEntriesRequest
	66,  // 72: rolodex_dns.RolodexDnsService.SetDotConfig:input_type -> rolodex_dns.SetDotConfigRequest
	68,  // 73: rolodex_dns.RolodexDnsService.GetDotConfig:input_type -> rolodex_dns.GetDotConfigRequest
	71,  // 74: rolodex_dns.RolodexDnsService.SetDohConfig:input_type -> rolodex_dns.SetDohConfigRequest
	73,  // 75: rolodex_dns.RolodexDnsService.GetDohConfig:input_type -> rolodex_dns.GetDohConfigRequest
	76,  // 76: rolodex_dns.RolodexDnsService.SetDoqConfig:input_type -> rolodex_dns.SetDoqConfigRequest
	78,  // 77: rolodex_dns.RolodexDnsService.GetDoqConfig:input_type -> rolodex_dns.GetDoqConfigRequest
	81,  // 78: rolodex_dns.RolodexDnsService.SetProxyConfig:input_type -> rolodex_dns.SetProxyConfigRequest
	83,  // 79: rolodex_dns.RolodexDnsService.GetProxyConfig:input_type -> rolodex_dns.GetProxyConfigRequest
	86,  // 80: rolodex_dns.RolodexDnsService.GenerateDnssecKey:input_type -> rolodex_dns.GenerateDnssecKeyRequest
	88,  // 81: rolodex_dns.RolodexDnsService.ListDnssecKeys:input_type -> rolodex_dns.ListDnssecKeysRequest
	90,  // 82: rolodex_dns.RolodexDnsService.DeleteDnssecKey:input_type -> rolodex_dns.DeleteDnssecKeyRequest
	92,  // 83: rolodex_dns.RolodexDnsService.GetDsRecords:input_type -> rolodex_dns.GetDsRecordsRequest
	94,  // 84: rolodex_dns.RolodexDnsService.SignZone:input_type -> rolodex_dns.SignZoneRequest
	96,  // 85: rolodex_dns.RolodexDnsService.GenerateTlsaRecord:input_type -> rolodex_dns.GenerateTlsaRecordRequest
	98,  // 86: rolodex_dns.RolodexDnsService.ListTlsaRecords:input_type -> rolodex_dns.ListTlsaRecordsRequest
	100, // 87: rolodex_dns.RolodexDnsService.GenerateDaneRootCa:input_type -> rolodex_dns.GenerateDaneRootCaRequest
	102, // 88: rolodex_dns.RolodexDnsService.RequestAcmeCert:input_type -> rolodex_dns.RequestAcmeCertRequest
	104, // 89: rolodex_dns.RolodexDnsService.GetAcmeStatus:input_type -> rolodex_dns.GetAcmeStatusRequest
	119, // 90: rolodex_dns.RolodexDnsService.SetDns64Config:input_type -> rolodex_dns.SetDns64ConfigRequest
	121, // 91: rolodex_dns.RolodexDnsService.GetDns64Config:input_type -> rolodex_dns.GetDns64ConfigRequest
	124, // 92: rolodex_dns.RolodexDnsService.AddDhcpPool:input_type -> rolodex_dns.AddDhcpPoolRequest
	126, // 93: rolodex_dns.RolodexDnsService.RemoveDhcpPool:input_type -> rolodex_dns.RemoveDhcpPoolRequest
	128, // 94: rolodex_dns.RolodexDnsService.ListDhcpPools:input_type -> rolodex_dns.ListDhcpPoolsRequest
	131, // 95: rolodex_dns.RolodexDnsService.ListDhcpLeases:input_type -> rolodex_dns.ListDhcpLeasesRequest
	133, // 96: rolodex_dns.RolodexDnsService.DeleteDhcpLease:input_type -> rolodex_dns.DeleteDhcpLeaseRequest
	136, // 97: rolodex_dns.RolodexDnsService.AddScopeRblProvider:input_type -> rolodex_dns.AddScopeRblProviderRequest
	138, // 98: rolodex_dns.RolodexDnsService.RemoveScopeRblProvider:input_type -> rolodex_dns.RemoveScopeRblProviderRequest
	140, // 99: rolodex_dns.RolodexDnsService.ListScopeRblProviders:input_type -> rolodex_dns.ListScopeRblProvidersRequest
	143, // 100: rolodex_dns.RolodexDnsService.SetDhcpCertOption:input_type -> rolodex_dns.SetDhcpCertOptionRequest
	145, // 101: rolodex_dns.RolodexDnsService.RemoveDhcpCertOption:input_type -> rolodex_dns.RemoveDhcpCertOptionRequest
	147, // 102: rolodex_dns.RolodexDnsService.ListDhcpCertOptions:input_type -> rolodex_dns.ListDhcpCertOptionsRequest
	106, // 103: rolodex_dns.RolodexDnsService.EnsureZoneCa:input_type -> rolodex_dns.EnsureZoneCaRequest
	108, // 104: rolodex_dns.RolodexDnsService.CreateEabCredential:input_type -> rolodex_dns.CreateEabCredentialRequest
	110, // 105: rolodex_dns.RolodexDnsService.RemoveEabCredential:input_type -> rolodex_dns.RemoveEabCredentialRequest
	113, // 106: rolodex_dns.RolodexDnsService.ListAcmeAccounts:input_type -> rolodex_dns.ListAcmeAccountsRequest
	116, // 107: rolodex_dns.RolodexDnsService.ListAcmeCertificates:input_type -> rolodex_dns.ListAcmeCertificatesRequest
	3,   // 108: rolodex_dns.RolodexDnsService.AddRecord:output_type -> rolodex_dns.AddRecordResponse
	5,   // 109: rolodex_dns.RolodexDnsService.RemoveRecord:output_type -> rolodex_dns.RemoveRecordResponse
	7,   // 110: rolodex_dns.RolodexDnsService.ListRecords:output_type -> rolodex_dns.ListRecordsResponse
	9,   // 111: rolodex_dns.RolodexDnsService.SetForwarders:output_type -> rolodex_dns.SetForwarderResponse
	12,  // 112: rolodex_dns.RolodexDnsService.SetRblConfig:output_type -> rolodex_dns.SetRblConfigResponse
	14,  // 113: rolodex_dns.RolodexDnsService.GetRblConfig:output_type -> rolodex_dns.GetRblConfigResponse
	16,  // 114: rolodex_dns.RolodexDnsService.FlushCache:output_type -> rolodex_dns.FlushCacheResponse
	19,  // 115: rolodex_dns.RolodexDnsService.CreateNetworkScope:output_type -> rolodex_dns.CreateNetworkScopeResponse
	21,  // 116: rolodex_dns.RolodexDnsService.DeleteNetworkScope:output_type -> rolodex_dns.DeleteNetworkScopeResponse
	23,  // 117: rolodex_dns.RolodexDnsService.ListNetworkScopes:output_type -> rolodex_dns.ListNetworkScopesResponse
	25,  // 118: rolodex_dns.RolodexDnsService.JoinNetwork:output_type -> rolodex_dns.JoinNetworkResponse
	27,  // 119: rolodex_dns.RolodexDnsService.LeaveNetwork:output_type -> rolodex_dns.LeaveNetworkResponse
	30,  // 120: rolodex_dns.RolodexDnsService.GetNetworkAssociations:output_type -> rolodex_dns.GetNetworkAssociationsResponse
	32,  // 121: rolodex_dns.RolodexDnsService.AddScopedRecord:output_type -> rolodex_dns.AddScopedRecordResponse
	34,  // 122: rolodex_dns.RolodexDnsService.RemoveScopedRecord:output_type -> rolodex_dns.RemoveScopedRecordResponse
	36,  // 123: rolodex_dns.RolodexDnsService.ListScopedRecords:output_type -> rolodex_dns.ListScopedRecordsResponse
	38,  // 124: rolodex_dns.RolodexDnsService.GetSearchDomains:output_type -> rolodex_dns.GetSearchDomainsResponse
	40,  // 125: rolodex_dns.RolodexDnsService.AddAuthoritativeZone:output_type -> rolodex_dns.AddAuthoritativeZoneResponse
	42,  // 126: rolodex_dns.RolodexDnsService.RemoveAuthoritativeZone:output_type -> rolodex_dns.RemoveAuthoritativeZoneResponse
	44,  // 127: rolodex_dns.RolodexDnsService.ListAuthoritativeZones:output_type -> rolodex_dns.ListAuthoritativeZonesResponse
	46,  // 128: rolodex_dns.RolodexDnsService.GetCacheStats:output_type -> rolodex_dns.GetCacheStatsResponse
	48,  // 129: rolodex_dns.RolodexDnsService.FlushDnsCache:output_type -> rolodex_dns.FlushDnsCacheResponse
	51,  // 130: rolodex_dns.RolodexDnsService.SetTtlDriftConfig:output_type -> rolodex_dns.SetTtlDriftConfigResponse
	53,  // 131: rolodex_dns.RolodexDnsService.GetTtlDriftConfig:output_type -> rolodex_dns.GetTtlDriftConfigResponse
	56,  // 132: rolodex_dns.RolodexDnsService.GetQueryLatencyStats:output_type -> rolodex_dns.GetQueryLatencyStatsResponse
	59,  // 133: rolodex_dns.RolodexDnsService.AddLocalRblEntry:output_type -> rolodex_dns.AddLocalRblEntryResponse
	61,  // 134: rolodex_dns.RolodexDnsService.RemoveLocalRblEntry:output_type -> rolodex_dns.RemoveLocalRblEntryResponse
	63,  // 135: rolodex_dns.RolodexDnsService.ListLocalRblEntries:output_type -> rolodex_dns.ListLocalRblEntriesResponse
	67,  // 136: rolodex_dns.RolodexDnsService.SetDotConfig:output_type -> rolodex_dns.SetDotConfigResponse
	69,  // 137: rolodex_dns.RolodexDnsService.GetDotConfig:output_type -> rolodex_dns.GetDotConfigResponse
	72,  // 138: rolodex_dns.RolodexDnsService.SetDohConfig:output_type -> rolodex_dns.SetDohConfigResponse
	74,  // 139: rolodex_dns.RolodexDnsService.GetDohConfig:output_type -> rolodex_dns.GetDohConfigResponse
	77,  // 140: rolodex_dns.RolodexDnsService.SetDoqConfig:output_type -> rolodex_dns.SetDoqConfigResponse
	79,  // 141: rolodex_dns.RolodexDnsService.GetDoqConfig:output_type -> rolodex_dns.GetDoqConfigResponse
	82,  // 142: rolodex_dns.RolodexDnsService.SetProxyConfig:output_type -> rolodex_dns.SetProxyConfigResponse
	84,  // 143: rolodex_dns.RolodexDnsService.GetProxyConfig:output_type -> rolodex_dns.GetProxyConfigResponse
	87,  // 144: rolodex_dns.RolodexDnsService.GenerateDnssecKey:output_type -> rolodex_dns.GenerateDnssecKeyResponse
	89,  // 145: rolodex_dns.RolodexDnsService.ListDnssecKeys:output_type -> rolodex_dns.ListDnssecKeysResponse
	91,  // 146: rolodex_dns.RolodexDnsService.DeleteDnssecKey:output_type -> rolodex_dns.DeleteDnssecKeyResponse
	93,  // 147: rolodex_dns.RolodexDnsService.GetDsRecords:output_type -> rolodex_dns.GetDsRecordsResponse
	95,  // 148: rolodex_dns.RolodexDnsService.SignZone:output_type -> rolodex_dns.SignZoneResponse
	97,  // 149: rolodex_dns.RolodexDnsService.GenerateTlsaRecord:output_type -> rolodex_dns.GenerateTlsaRecordResponse
	99,  // 150: rolodex_dns.RolodexDnsService.ListTlsaRecords:output_type -> rolodex_dns.ListTlsaRecordsResponse
	101, // 151: rolodex_dns.RolodexDnsService.GenerateDaneRootCa:output_type -> rolodex_dns.GenerateDaneRootCaResponse
	103, // 152: rolodex_dns.RolodexDnsService.RequestAcmeCert:output_type -> rolodex_dns.RequestAcmeCertResponse
	105, // 153: rolodex_dns.RolodexDnsService.GetAcmeStatus:output_type -> rolodex_dns.GetAcmeStatusResponse
	120, // 154: rolodex_dns.RolodexDnsService.SetDns64Config:output_type -> rolodex_dns.SetDns64ConfigResponse
	122, // 155: rolodex_dns.RolodexDnsService.GetDns64Config:output_type -> rolodex_dns.GetDns64ConfigResponse
	125, // 156: rolodex_dns.RolodexDnsService.AddDhcpPool:output_type -> rolodex_dns.AddDhcpPoolResponse
	127, // 157: rolodex_dns.RolodexDnsService.RemoveDhcpPool:output_type -> rolodex_dns.RemoveDhcpPoolResponse
	129, // 158: rolodex_dns.RolodexDnsService.ListDhcpPools:output_type -> rolodex_dns.ListDhcpPoolsResponse
	132, // 159: rolodex_dns.RolodexDnsService.ListDhcpLeases:output_type -> rolodex_dns.ListDhcpLeasesResponse
	134, // 160: rolodex_dns.RolodexDnsService.DeleteDhcpLease:output_type -> rolodex_dns.DeleteDhcpLeaseResponse
	137, // 161: rolodex_dns.RolodexDnsService.AddScopeRblProvider:output_type -> rolodex_dns.AddScopeRblProviderResponse
	139, // 162: rolodex_dns.RolodexDnsService.RemoveScopeRblProvider:output_type -> rolodex_dns.RemoveScopeRblProviderResponse
	141, // 163: rolodex_dns.RolodexDnsService.ListScopeRblProviders:output_type -> rolodex_dns.ListScopeRblProvidersResponse
	144, // 164: rolodex_dns.RolodexDnsService.SetDhcpCertOption:output_type -> rolodex_dns.SetDhcpCertOptionResponse
	146, // 165: rolodex_dns.RolodexDnsService.RemoveDhcpCertOption:output_type -> rolodex_dns.RemoveDhcpCertOptionResponse
	148, // 166: rolodex_dns.RolodexDnsService.ListDhcpCertOptions:output_type -> rolodex_dns.ListDhcpCertOptionsResponse
	107, // 167: rolodex_dns.RolodexDnsService.EnsureZoneCa:output_type -> rolodex_dns.EnsureZoneCaResponse
	109, // 168: rolodex_dns.RolodexDnsService.CreateEabCredential:output_type -> rolodex_dns.CreateEabCredentialResponse
	111, // 169: rolodex_dns.RolodexDnsService.RemoveEabCredential:output_type -> rolodex_dns.RemoveEabCredentialResponse
	114, // 170: rolodex_dns.RolodexDnsService.ListAcmeAccounts:output_type -> rolodex_dns.ListAcmeAccountsResponse
	117, // 171: rolodex_dns.RolodexDnsService.ListAcmeCertificates:output_type -> rolodex_dns.ListAcmeCertificatesResponse
	108, // [108:172] is the sub-list for method output_type
	44,  // [44:108] is the sub-list for method input_type
	44,  // [44:44] is the sub-list for extension type_name
	44,  // [44:44] is the sub-list for extension extendee
	0,   // [0:44] is the sub-list for field type_name
}

func init() { file_rolodex_dns_proto_init() }
func file_rolodex_dns_proto_init() {
	if File_rolodex_dns_proto != nil {
		return
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_rolodex_dns_proto_rawDesc), len(file_rolodex_dns_proto_rawDesc)),
			NumEnums:      1,
			NumMessages:   148,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_rolodex_dns_proto_goTypes,
		DependencyIndexes: file_rolodex_dns_proto_depIdxs,
		EnumInfos:         file_rolodex_dns_proto_enumTypes,
		MessageInfos:      file_rolodex_dns_proto_msgTypes,
	}.Build()
	File_rolodex_dns_proto = out.File
	file_rolodex_dns_proto_goTypes = nil
	file_rolodex_dns_proto_depIdxs = nil
}
