// Code generated by protoc-gen-go. DO NOT EDIT.
// source: remote.proto

package gitalypb

import (
	context "context"
	fmt "fmt"
	proto "github.com/golang/protobuf/proto"
	grpc "google.golang.org/grpc"
	codes "google.golang.org/grpc/codes"
	status "google.golang.org/grpc/status"
	math "math"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package

type AddRemoteRequest struct {
	Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
	Name       string      `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Url        string      `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"`
	// If any, the remote is configured as a mirror with those mappings
	MirrorRefmaps        []string `protobuf:"bytes,5,rep,name=mirror_refmaps,json=mirrorRefmaps,proto3" json:"mirror_refmaps,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AddRemoteRequest) Reset()         { *m = AddRemoteRequest{} }
func (m *AddRemoteRequest) String() string { return proto.CompactTextString(m) }
func (*AddRemoteRequest) ProtoMessage()    {}
func (*AddRemoteRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{0}
}

func (m *AddRemoteRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddRemoteRequest.Unmarshal(m, b)
}
func (m *AddRemoteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddRemoteRequest.Marshal(b, m, deterministic)
}
func (m *AddRemoteRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddRemoteRequest.Merge(m, src)
}
func (m *AddRemoteRequest) XXX_Size() int {
	return xxx_messageInfo_AddRemoteRequest.Size(m)
}
func (m *AddRemoteRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AddRemoteRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AddRemoteRequest proto.InternalMessageInfo

func (m *AddRemoteRequest) GetRepository() *Repository {
	if m != nil {
		return m.Repository
	}
	return nil
}

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

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

func (m *AddRemoteRequest) GetMirrorRefmaps() []string {
	if m != nil {
		return m.MirrorRefmaps
	}
	return nil
}

type AddRemoteResponse struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AddRemoteResponse) Reset()         { *m = AddRemoteResponse{} }
func (m *AddRemoteResponse) String() string { return proto.CompactTextString(m) }
func (*AddRemoteResponse) ProtoMessage()    {}
func (*AddRemoteResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{1}
}

func (m *AddRemoteResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddRemoteResponse.Unmarshal(m, b)
}
func (m *AddRemoteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddRemoteResponse.Marshal(b, m, deterministic)
}
func (m *AddRemoteResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddRemoteResponse.Merge(m, src)
}
func (m *AddRemoteResponse) XXX_Size() int {
	return xxx_messageInfo_AddRemoteResponse.Size(m)
}
func (m *AddRemoteResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_AddRemoteResponse.DiscardUnknown(m)
}

var xxx_messageInfo_AddRemoteResponse proto.InternalMessageInfo

type RemoveRemoteRequest struct {
	Repository           *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
	Name                 string      `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *RemoveRemoteRequest) Reset()         { *m = RemoveRemoteRequest{} }
func (m *RemoveRemoteRequest) String() string { return proto.CompactTextString(m) }
func (*RemoveRemoteRequest) ProtoMessage()    {}
func (*RemoveRemoteRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{2}
}

func (m *RemoveRemoteRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RemoveRemoteRequest.Unmarshal(m, b)
}
func (m *RemoveRemoteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RemoveRemoteRequest.Marshal(b, m, deterministic)
}
func (m *RemoveRemoteRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RemoveRemoteRequest.Merge(m, src)
}
func (m *RemoveRemoteRequest) XXX_Size() int {
	return xxx_messageInfo_RemoveRemoteRequest.Size(m)
}
func (m *RemoveRemoteRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_RemoveRemoteRequest.DiscardUnknown(m)
}

var xxx_messageInfo_RemoveRemoteRequest proto.InternalMessageInfo

func (m *RemoveRemoteRequest) GetRepository() *Repository {
	if m != nil {
		return m.Repository
	}
	return nil
}

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

type RemoveRemoteResponse struct {
	Result               bool     `protobuf:"varint,1,opt,name=result,proto3" json:"result,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *RemoveRemoteResponse) Reset()         { *m = RemoveRemoteResponse{} }
func (m *RemoveRemoteResponse) String() string { return proto.CompactTextString(m) }
func (*RemoveRemoteResponse) ProtoMessage()    {}
func (*RemoveRemoteResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{3}
}

func (m *RemoveRemoteResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RemoveRemoteResponse.Unmarshal(m, b)
}
func (m *RemoveRemoteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RemoveRemoteResponse.Marshal(b, m, deterministic)
}
func (m *RemoveRemoteResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RemoveRemoteResponse.Merge(m, src)
}
func (m *RemoveRemoteResponse) XXX_Size() int {
	return xxx_messageInfo_RemoveRemoteResponse.Size(m)
}
func (m *RemoveRemoteResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_RemoveRemoteResponse.DiscardUnknown(m)
}

var xxx_messageInfo_RemoveRemoteResponse proto.InternalMessageInfo

func (m *RemoveRemoteResponse) GetResult() bool {
	if m != nil {
		return m.Result
	}
	return false
}

type FetchInternalRemoteRequest struct {
	Repository           *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
	RemoteRepository     *Repository `protobuf:"bytes,2,opt,name=remote_repository,json=remoteRepository,proto3" json:"remote_repository,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *FetchInternalRemoteRequest) Reset()         { *m = FetchInternalRemoteRequest{} }
func (m *FetchInternalRemoteRequest) String() string { return proto.CompactTextString(m) }
func (*FetchInternalRemoteRequest) ProtoMessage()    {}
func (*FetchInternalRemoteRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{4}
}

func (m *FetchInternalRemoteRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FetchInternalRemoteRequest.Unmarshal(m, b)
}
func (m *FetchInternalRemoteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FetchInternalRemoteRequest.Marshal(b, m, deterministic)
}
func (m *FetchInternalRemoteRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FetchInternalRemoteRequest.Merge(m, src)
}
func (m *FetchInternalRemoteRequest) XXX_Size() int {
	return xxx_messageInfo_FetchInternalRemoteRequest.Size(m)
}
func (m *FetchInternalRemoteRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_FetchInternalRemoteRequest.DiscardUnknown(m)
}

var xxx_messageInfo_FetchInternalRemoteRequest proto.InternalMessageInfo

func (m *FetchInternalRemoteRequest) GetRepository() *Repository {
	if m != nil {
		return m.Repository
	}
	return nil
}

func (m *FetchInternalRemoteRequest) GetRemoteRepository() *Repository {
	if m != nil {
		return m.RemoteRepository
	}
	return nil
}

type FetchInternalRemoteResponse struct {
	Result               bool     `protobuf:"varint,1,opt,name=result,proto3" json:"result,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FetchInternalRemoteResponse) Reset()         { *m = FetchInternalRemoteResponse{} }
func (m *FetchInternalRemoteResponse) String() string { return proto.CompactTextString(m) }
func (*FetchInternalRemoteResponse) ProtoMessage()    {}
func (*FetchInternalRemoteResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{5}
}

func (m *FetchInternalRemoteResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FetchInternalRemoteResponse.Unmarshal(m, b)
}
func (m *FetchInternalRemoteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FetchInternalRemoteResponse.Marshal(b, m, deterministic)
}
func (m *FetchInternalRemoteResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FetchInternalRemoteResponse.Merge(m, src)
}
func (m *FetchInternalRemoteResponse) XXX_Size() int {
	return xxx_messageInfo_FetchInternalRemoteResponse.Size(m)
}
func (m *FetchInternalRemoteResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_FetchInternalRemoteResponse.DiscardUnknown(m)
}

var xxx_messageInfo_FetchInternalRemoteResponse proto.InternalMessageInfo

func (m *FetchInternalRemoteResponse) GetResult() bool {
	if m != nil {
		return m.Result
	}
	return false
}

type UpdateRemoteMirrorRequest struct {
	// repository is the repository whose mirror repository to update.
	Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
	// ref_name is actually the remote to update.
	RefName string `protobuf:"bytes,2,opt,name=ref_name,json=refName,proto3" json:"ref_name,omitempty"`
	// only_branches_matching contains patterns to match branches against. Only
	// the matched brances are updated in the remote mirror. If no patterns are
	// specified, all branches are updated. The patterns should only contain the
	// branch name without the 'refs/heads/' prefix. "*" can be used as a wildcard
	// to match anything. only_branches_matching can be streamed to the server over multiple
	// messages. Optional.
	OnlyBranchesMatching [][]byte `protobuf:"bytes,3,rep,name=only_branches_matching,json=onlyBranchesMatching,proto3" json:"only_branches_matching,omitempty"`
	// ssh_key is the SSH key to use for accessing to the mirror repository. Optional.
	SshKey string `protobuf:"bytes,4,opt,name=ssh_key,json=sshKey,proto3" json:"ssh_key,omitempty"`
	// known_hosts specifies the identities used for strict host key checking. Optional.
	KnownHosts string `protobuf:"bytes,5,opt,name=known_hosts,json=knownHosts,proto3" json:"known_hosts,omitempty"`
	// keep_divergent_refs specifies whether or not to update diverged references in the
	// mirror repository.
	KeepDivergentRefs    bool     `protobuf:"varint,6,opt,name=keep_divergent_refs,json=keepDivergentRefs,proto3" json:"keep_divergent_refs,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UpdateRemoteMirrorRequest) Reset()         { *m = UpdateRemoteMirrorRequest{} }
func (m *UpdateRemoteMirrorRequest) String() string { return proto.CompactTextString(m) }
func (*UpdateRemoteMirrorRequest) ProtoMessage()    {}
func (*UpdateRemoteMirrorRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{6}
}

func (m *UpdateRemoteMirrorRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UpdateRemoteMirrorRequest.Unmarshal(m, b)
}
func (m *UpdateRemoteMirrorRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UpdateRemoteMirrorRequest.Marshal(b, m, deterministic)
}
func (m *UpdateRemoteMirrorRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UpdateRemoteMirrorRequest.Merge(m, src)
}
func (m *UpdateRemoteMirrorRequest) XXX_Size() int {
	return xxx_messageInfo_UpdateRemoteMirrorRequest.Size(m)
}
func (m *UpdateRemoteMirrorRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_UpdateRemoteMirrorRequest.DiscardUnknown(m)
}

var xxx_messageInfo_UpdateRemoteMirrorRequest proto.InternalMessageInfo

func (m *UpdateRemoteMirrorRequest) GetRepository() *Repository {
	if m != nil {
		return m.Repository
	}
	return nil
}

func (m *UpdateRemoteMirrorRequest) GetRefName() string {
	if m != nil {
		return m.RefName
	}
	return ""
}

func (m *UpdateRemoteMirrorRequest) GetOnlyBranchesMatching() [][]byte {
	if m != nil {
		return m.OnlyBranchesMatching
	}
	return nil
}

func (m *UpdateRemoteMirrorRequest) GetSshKey() string {
	if m != nil {
		return m.SshKey
	}
	return ""
}

func (m *UpdateRemoteMirrorRequest) GetKnownHosts() string {
	if m != nil {
		return m.KnownHosts
	}
	return ""
}

func (m *UpdateRemoteMirrorRequest) GetKeepDivergentRefs() bool {
	if m != nil {
		return m.KeepDivergentRefs
	}
	return false
}

type UpdateRemoteMirrorResponse struct {
	// divergent_refs contains a list of references that had diverged in the mirror from the
	// source repository.
	DivergentRefs        [][]byte `protobuf:"bytes,1,rep,name=divergent_refs,json=divergentRefs,proto3" json:"divergent_refs,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UpdateRemoteMirrorResponse) Reset()         { *m = UpdateRemoteMirrorResponse{} }
func (m *UpdateRemoteMirrorResponse) String() string { return proto.CompactTextString(m) }
func (*UpdateRemoteMirrorResponse) ProtoMessage()    {}
func (*UpdateRemoteMirrorResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{7}
}

func (m *UpdateRemoteMirrorResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UpdateRemoteMirrorResponse.Unmarshal(m, b)
}
func (m *UpdateRemoteMirrorResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UpdateRemoteMirrorResponse.Marshal(b, m, deterministic)
}
func (m *UpdateRemoteMirrorResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UpdateRemoteMirrorResponse.Merge(m, src)
}
func (m *UpdateRemoteMirrorResponse) XXX_Size() int {
	return xxx_messageInfo_UpdateRemoteMirrorResponse.Size(m)
}
func (m *UpdateRemoteMirrorResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_UpdateRemoteMirrorResponse.DiscardUnknown(m)
}

var xxx_messageInfo_UpdateRemoteMirrorResponse proto.InternalMessageInfo

func (m *UpdateRemoteMirrorResponse) GetDivergentRefs() [][]byte {
	if m != nil {
		return m.DivergentRefs
	}
	return nil
}

type FindRemoteRepositoryRequest struct {
	Remote string `protobuf:"bytes,1,opt,name=remote,proto3" json:"remote,omitempty"`
	// This field is used to redirect request to proper storage where it can be handled.
	// As of now it doesn't matter what storage will be used, but it still must be a valid.
	// For more details: https://gitlab.com/gitlab-org/gitaly/-/issues/2442
	StorageName          string   `protobuf:"bytes,2,opt,name=storage_name,json=storageName,proto3" json:"storage_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FindRemoteRepositoryRequest) Reset()         { *m = FindRemoteRepositoryRequest{} }
func (m *FindRemoteRepositoryRequest) String() string { return proto.CompactTextString(m) }
func (*FindRemoteRepositoryRequest) ProtoMessage()    {}
func (*FindRemoteRepositoryRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{8}
}

func (m *FindRemoteRepositoryRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FindRemoteRepositoryRequest.Unmarshal(m, b)
}
func (m *FindRemoteRepositoryRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FindRemoteRepositoryRequest.Marshal(b, m, deterministic)
}
func (m *FindRemoteRepositoryRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FindRemoteRepositoryRequest.Merge(m, src)
}
func (m *FindRemoteRepositoryRequest) XXX_Size() int {
	return xxx_messageInfo_FindRemoteRepositoryRequest.Size(m)
}
func (m *FindRemoteRepositoryRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_FindRemoteRepositoryRequest.DiscardUnknown(m)
}

var xxx_messageInfo_FindRemoteRepositoryRequest proto.InternalMessageInfo

func (m *FindRemoteRepositoryRequest) GetRemote() string {
	if m != nil {
		return m.Remote
	}
	return ""
}

func (m *FindRemoteRepositoryRequest) GetStorageName() string {
	if m != nil {
		return m.StorageName
	}
	return ""
}

// This migth throw a GRPC Unavailable code, to signal the request failure
// is transient.
type FindRemoteRepositoryResponse struct {
	Exists               bool     `protobuf:"varint,1,opt,name=exists,proto3" json:"exists,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FindRemoteRepositoryResponse) Reset()         { *m = FindRemoteRepositoryResponse{} }
func (m *FindRemoteRepositoryResponse) String() string { return proto.CompactTextString(m) }
func (*FindRemoteRepositoryResponse) ProtoMessage()    {}
func (*FindRemoteRepositoryResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{9}
}

func (m *FindRemoteRepositoryResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FindRemoteRepositoryResponse.Unmarshal(m, b)
}
func (m *FindRemoteRepositoryResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FindRemoteRepositoryResponse.Marshal(b, m, deterministic)
}
func (m *FindRemoteRepositoryResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FindRemoteRepositoryResponse.Merge(m, src)
}
func (m *FindRemoteRepositoryResponse) XXX_Size() int {
	return xxx_messageInfo_FindRemoteRepositoryResponse.Size(m)
}
func (m *FindRemoteRepositoryResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_FindRemoteRepositoryResponse.DiscardUnknown(m)
}

var xxx_messageInfo_FindRemoteRepositoryResponse proto.InternalMessageInfo

func (m *FindRemoteRepositoryResponse) GetExists() bool {
	if m != nil {
		return m.Exists
	}
	return false
}

// FindRemoteRootRefRequest represents a request for the FindRemoteRootRef RPC.
type FindRemoteRootRefRequest struct {
	// Repository is the repository in which the request shall be executed in. If
	// a remote name is given, then this is the repository in which the remote
	// will be looked up.
	Repository *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
	// Remote is the name of the remote of which the root reference shall be
	// looked up. The remote must have been created before this call. This
	// parameter is deprecated in favor of `RemoteUrl`, see
	// https://gitlab.com/gitlab-org/gitaly/-/issues/1773.
	Remote string `protobuf:"bytes,2,opt,name=remote,proto3" json:"remote,omitempty"` // Deprecated: Do not use.
	// RemoteUrl specifies the remote repository URL which should be fetched from.
	RemoteUrl string `protobuf:"bytes,3,opt,name=remote_url,json=remoteUrl,proto3" json:"remote_url,omitempty"`
	// HttpAuthorizationHeader is the HTTP header which should be added to the
	// request in order to authenticate against the repository.
	HttpAuthorizationHeader string   `protobuf:"bytes,4,opt,name=http_authorization_header,json=httpAuthorizationHeader,proto3" json:"http_authorization_header,omitempty"`
	XXX_NoUnkeyedLiteral    struct{} `json:"-"`
	XXX_unrecognized        []byte   `json:"-"`
	XXX_sizecache           int32    `json:"-"`
}

func (m *FindRemoteRootRefRequest) Reset()         { *m = FindRemoteRootRefRequest{} }
func (m *FindRemoteRootRefRequest) String() string { return proto.CompactTextString(m) }
func (*FindRemoteRootRefRequest) ProtoMessage()    {}
func (*FindRemoteRootRefRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{10}
}

func (m *FindRemoteRootRefRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FindRemoteRootRefRequest.Unmarshal(m, b)
}
func (m *FindRemoteRootRefRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FindRemoteRootRefRequest.Marshal(b, m, deterministic)
}
func (m *FindRemoteRootRefRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FindRemoteRootRefRequest.Merge(m, src)
}
func (m *FindRemoteRootRefRequest) XXX_Size() int {
	return xxx_messageInfo_FindRemoteRootRefRequest.Size(m)
}
func (m *FindRemoteRootRefRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_FindRemoteRootRefRequest.DiscardUnknown(m)
}

var xxx_messageInfo_FindRemoteRootRefRequest proto.InternalMessageInfo

func (m *FindRemoteRootRefRequest) GetRepository() *Repository {
	if m != nil {
		return m.Repository
	}
	return nil
}

// Deprecated: Do not use.
func (m *FindRemoteRootRefRequest) GetRemote() string {
	if m != nil {
		return m.Remote
	}
	return ""
}

func (m *FindRemoteRootRefRequest) GetRemoteUrl() string {
	if m != nil {
		return m.RemoteUrl
	}
	return ""
}

func (m *FindRemoteRootRefRequest) GetHttpAuthorizationHeader() string {
	if m != nil {
		return m.HttpAuthorizationHeader
	}
	return ""
}

// FindRemoteRootRefResponse represents the response for the FindRemoteRootRef
// request.
type FindRemoteRootRefResponse struct {
	// Ref is the name of the remote root reference.
	Ref                  string   `protobuf:"bytes,1,opt,name=ref,proto3" json:"ref,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *FindRemoteRootRefResponse) Reset()         { *m = FindRemoteRootRefResponse{} }
func (m *FindRemoteRootRefResponse) String() string { return proto.CompactTextString(m) }
func (*FindRemoteRootRefResponse) ProtoMessage()    {}
func (*FindRemoteRootRefResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{11}
}

func (m *FindRemoteRootRefResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_FindRemoteRootRefResponse.Unmarshal(m, b)
}
func (m *FindRemoteRootRefResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_FindRemoteRootRefResponse.Marshal(b, m, deterministic)
}
func (m *FindRemoteRootRefResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_FindRemoteRootRefResponse.Merge(m, src)
}
func (m *FindRemoteRootRefResponse) XXX_Size() int {
	return xxx_messageInfo_FindRemoteRootRefResponse.Size(m)
}
func (m *FindRemoteRootRefResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_FindRemoteRootRefResponse.DiscardUnknown(m)
}

var xxx_messageInfo_FindRemoteRootRefResponse proto.InternalMessageInfo

func (m *FindRemoteRootRefResponse) GetRef() string {
	if m != nil {
		return m.Ref
	}
	return ""
}

type ListRemotesRequest struct {
	Repository           *Repository `protobuf:"bytes,1,opt,name=repository,proto3" json:"repository,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *ListRemotesRequest) Reset()         { *m = ListRemotesRequest{} }
func (m *ListRemotesRequest) String() string { return proto.CompactTextString(m) }
func (*ListRemotesRequest) ProtoMessage()    {}
func (*ListRemotesRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{12}
}

func (m *ListRemotesRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListRemotesRequest.Unmarshal(m, b)
}
func (m *ListRemotesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListRemotesRequest.Marshal(b, m, deterministic)
}
func (m *ListRemotesRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListRemotesRequest.Merge(m, src)
}
func (m *ListRemotesRequest) XXX_Size() int {
	return xxx_messageInfo_ListRemotesRequest.Size(m)
}
func (m *ListRemotesRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListRemotesRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListRemotesRequest proto.InternalMessageInfo

func (m *ListRemotesRequest) GetRepository() *Repository {
	if m != nil {
		return m.Repository
	}
	return nil
}

type ListRemotesResponse struct {
	Remotes              []*ListRemotesResponse_Remote `protobuf:"bytes,1,rep,name=remotes,proto3" json:"remotes,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                      `json:"-"`
	XXX_unrecognized     []byte                        `json:"-"`
	XXX_sizecache        int32                         `json:"-"`
}

func (m *ListRemotesResponse) Reset()         { *m = ListRemotesResponse{} }
func (m *ListRemotesResponse) String() string { return proto.CompactTextString(m) }
func (*ListRemotesResponse) ProtoMessage()    {}
func (*ListRemotesResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{13}
}

func (m *ListRemotesResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListRemotesResponse.Unmarshal(m, b)
}
func (m *ListRemotesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListRemotesResponse.Marshal(b, m, deterministic)
}
func (m *ListRemotesResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListRemotesResponse.Merge(m, src)
}
func (m *ListRemotesResponse) XXX_Size() int {
	return xxx_messageInfo_ListRemotesResponse.Size(m)
}
func (m *ListRemotesResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListRemotesResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListRemotesResponse proto.InternalMessageInfo

func (m *ListRemotesResponse) GetRemotes() []*ListRemotesResponse_Remote {
	if m != nil {
		return m.Remotes
	}
	return nil
}

type ListRemotesResponse_Remote struct {
	Name                 string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	FetchUrl             string   `protobuf:"bytes,2,opt,name=fetch_url,json=fetchUrl,proto3" json:"fetch_url,omitempty"`
	PushUrl              string   `protobuf:"bytes,3,opt,name=push_url,json=pushUrl,proto3" json:"push_url,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListRemotesResponse_Remote) Reset()         { *m = ListRemotesResponse_Remote{} }
func (m *ListRemotesResponse_Remote) String() string { return proto.CompactTextString(m) }
func (*ListRemotesResponse_Remote) ProtoMessage()    {}
func (*ListRemotesResponse_Remote) Descriptor() ([]byte, []int) {
	return fileDescriptor_eefc82927d57d89b, []int{13, 0}
}

func (m *ListRemotesResponse_Remote) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListRemotesResponse_Remote.Unmarshal(m, b)
}
func (m *ListRemotesResponse_Remote) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListRemotesResponse_Remote.Marshal(b, m, deterministic)
}
func (m *ListRemotesResponse_Remote) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListRemotesResponse_Remote.Merge(m, src)
}
func (m *ListRemotesResponse_Remote) XXX_Size() int {
	return xxx_messageInfo_ListRemotesResponse_Remote.Size(m)
}
func (m *ListRemotesResponse_Remote) XXX_DiscardUnknown() {
	xxx_messageInfo_ListRemotesResponse_Remote.DiscardUnknown(m)
}

var xxx_messageInfo_ListRemotesResponse_Remote proto.InternalMessageInfo

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

func (m *ListRemotesResponse_Remote) GetFetchUrl() string {
	if m != nil {
		return m.FetchUrl
	}
	return ""
}

func (m *ListRemotesResponse_Remote) GetPushUrl() string {
	if m != nil {
		return m.PushUrl
	}
	return ""
}

func init() {
	proto.RegisterType((*AddRemoteRequest)(nil), "gitaly.AddRemoteRequest")
	proto.RegisterType((*AddRemoteResponse)(nil), "gitaly.AddRemoteResponse")
	proto.RegisterType((*RemoveRemoteRequest)(nil), "gitaly.RemoveRemoteRequest")
	proto.RegisterType((*RemoveRemoteResponse)(nil), "gitaly.RemoveRemoteResponse")
	proto.RegisterType((*FetchInternalRemoteRequest)(nil), "gitaly.FetchInternalRemoteRequest")
	proto.RegisterType((*FetchInternalRemoteResponse)(nil), "gitaly.FetchInternalRemoteResponse")
	proto.RegisterType((*UpdateRemoteMirrorRequest)(nil), "gitaly.UpdateRemoteMirrorRequest")
	proto.RegisterType((*UpdateRemoteMirrorResponse)(nil), "gitaly.UpdateRemoteMirrorResponse")
	proto.RegisterType((*FindRemoteRepositoryRequest)(nil), "gitaly.FindRemoteRepositoryRequest")
	proto.RegisterType((*FindRemoteRepositoryResponse)(nil), "gitaly.FindRemoteRepositoryResponse")
	proto.RegisterType((*FindRemoteRootRefRequest)(nil), "gitaly.FindRemoteRootRefRequest")
	proto.RegisterType((*FindRemoteRootRefResponse)(nil), "gitaly.FindRemoteRootRefResponse")
	proto.RegisterType((*ListRemotesRequest)(nil), "gitaly.ListRemotesRequest")
	proto.RegisterType((*ListRemotesResponse)(nil), "gitaly.ListRemotesResponse")
	proto.RegisterType((*ListRemotesResponse_Remote)(nil), "gitaly.ListRemotesResponse.Remote")
}

func init() { proto.RegisterFile("remote.proto", fileDescriptor_eefc82927d57d89b) }

var fileDescriptor_eefc82927d57d89b = []byte{
	// 836 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x56, 0xcd, 0x8e, 0xe3, 0x44,
	0x10, 0x96, 0x1d, 0x6f, 0xc6, 0xa9, 0xc9, 0xac, 0x32, 0x9d, 0xd1, 0xae, 0xe3, 0x2c, 0x22, 0x6b,
	0x58, 0x91, 0x03, 0x9b, 0x88, 0x30, 0x20, 0x84, 0x90, 0xd0, 0x06, 0xb4, 0x1a, 0x7e, 0x76, 0x25,
	0x0c, 0x73, 0xe1, 0x80, 0x71, 0x92, 0x4e, 0x6c, 0xc5, 0x71, 0x9b, 0xee, 0x4e, 0x20, 0x3c, 0x01,
	0x47, 0x6e, 0xc3, 0x2b, 0x70, 0xe1, 0x31, 0x38, 0xc0, 0x1b, 0xed, 0x09, 0xf5, 0x4f, 0x1c, 0x27,
	0xe3, 0x84, 0xc3, 0xc0, 0xad, 0xfb, 0xab, 0xea, 0xaf, 0xaa, 0xbe, 0xea, 0x2e, 0x1b, 0xea, 0x14,
	0x2f, 0x08, 0xc7, 0xbd, 0x8c, 0x12, 0x4e, 0x50, 0x75, 0x16, 0xf3, 0x30, 0x59, 0xbb, 0x90, 0xc4,
	0x29, 0x57, 0x98, 0x5b, 0x67, 0x51, 0x48, 0xf1, 0x44, 0xed, 0xbc, 0x3f, 0x0c, 0x68, 0x3c, 0x9b,
	0x4c, 0x7c, 0x79, 0xca, 0xc7, 0x3f, 0x2c, 0x31, 0xe3, 0xe8, 0x03, 0x00, 0x8a, 0x33, 0xc2, 0x62,
	0x4e, 0xe8, 0xda, 0x31, 0x3a, 0x46, 0xf7, 0x74, 0x80, 0x7a, 0x8a, 0xab, 0xe7, 0xe7, 0x96, 0xa1,
	0xf5, 0xdb, 0x9f, 0x6f, 0x1b, 0x7e, 0xc1, 0x17, 0x21, 0xb0, 0xd2, 0x70, 0x81, 0x1d, 0xb3, 0x63,
	0x74, 0x6b, 0xbe, 0x5c, 0xa3, 0x06, 0x54, 0x96, 0x34, 0x71, 0x2a, 0x12, 0x12, 0x4b, 0xf4, 0x04,
	0xee, 0x2f, 0x62, 0x4a, 0x09, 0x0d, 0x28, 0x9e, 0x2e, 0xc2, 0x8c, 0x39, 0xf7, 0x3a, 0x95, 0x6e,
	0xcd, 0x3f, 0x53, 0xa8, 0xaf, 0xc0, 0xcf, 0x2d, 0xdb, 0x6a, 0xdc, 0xdb, 0x80, 0xda, 0xd5, 0x6b,
	0xc2, 0x79, 0x21, 0x5f, 0x96, 0x91, 0x94, 0x61, 0x6f, 0x0c, 0x4d, 0x81, 0xac, 0xf0, 0xff, 0x58,
	0x87, 0xd7, 0x83, 0x8b, 0xdd, 0x20, 0x2a, 0x38, 0x7a, 0x00, 0x55, 0x8a, 0xd9, 0x32, 0xe1, 0x32,
	0x82, 0xed, 0xeb, 0x9d, 0x77, 0x63, 0x80, 0xfb, 0x1c, 0xf3, 0x71, 0xf4, 0x59, 0xca, 0x31, 0x4d,
	0xc3, 0xe4, 0xbf, 0x4a, 0xee, 0x63, 0x38, 0x57, 0x5d, 0x0e, 0x0a, 0x04, 0xe6, 0x21, 0x02, 0xbf,
	0x41, 0x75, 0xdc, 0x0d, 0xe2, 0xbd, 0x07, 0xed, 0xd2, 0xc4, 0xfe, 0xa5, 0xa0, 0x5f, 0x4d, 0x68,
	0x5d, 0x67, 0x93, 0x90, 0x6b, 0x05, 0x5e, 0xe8, 0x6e, 0xdd, 0xb5, 0x9e, 0x16, 0xd8, 0x14, 0x4f,
	0x83, 0x82, 0xe0, 0x27, 0x14, 0x4f, 0x5f, 0x8a, 0xbb, 0x73, 0x09, 0x0f, 0x48, 0x9a, 0xac, 0x83,
	0x11, 0x0d, 0xd3, 0x71, 0x84, 0x59, 0xb0, 0x08, 0xf9, 0x38, 0x8a, 0xd3, 0x99, 0x53, 0xe9, 0x54,
	0xba, 0x75, 0xff, 0x42, 0x58, 0x87, 0xda, 0xf8, 0x42, 0xdb, 0xd0, 0x43, 0x38, 0x61, 0x2c, 0x0a,
	0xe6, 0x78, 0xed, 0x58, 0x92, 0xaf, 0xca, 0x58, 0xf4, 0x05, 0x5e, 0xa3, 0xd7, 0xe1, 0x74, 0x9e,
	0x92, 0x1f, 0xd3, 0x20, 0x22, 0x8c, 0x8b, 0x5b, 0x27, 0x8c, 0x20, 0xa1, 0x2b, 0x81, 0xa0, 0x1e,
	0x34, 0xe7, 0x18, 0x67, 0xc1, 0x24, 0x5e, 0x61, 0x3a, 0xc3, 0x29, 0x17, 0xd7, 0x8e, 0x39, 0x55,
	0xa9, 0xc3, 0xb9, 0x30, 0x7d, 0xba, 0xb1, 0xf8, 0x78, 0xca, 0xbc, 0x4f, 0xc0, 0x2d, 0x53, 0x44,
	0x0b, 0xf9, 0x04, 0xee, 0xef, 0x11, 0x19, 0x32, 0xeb, 0xb3, 0xc9, 0x0e, 0xc9, 0x77, 0xd0, 0x7e,
	0x1e, 0xa7, 0xf9, 0x9d, 0xce, 0x1b, 0xa7, 0x85, 0x95, 0xed, 0x10, 0x26, 0x29, 0x6a, 0xcd, 0xd7,
	0x3b, 0xf4, 0x16, 0xd4, 0x19, 0x27, 0x34, 0x9c, 0xe1, 0x82, 0x74, 0x43, 0xeb, 0x17, 0x21, 0xef,
	0xa9, 0xb6, 0x08, 0x11, 0xbd, 0xf7, 0xe1, 0x51, 0x39, 0xff, 0xb6, 0xdf, 0xf8, 0xa7, 0x58, 0x08,
	0xa2, 0xfb, 0xad, 0x76, 0xde, 0xdf, 0x06, 0x38, 0x85, 0x83, 0x84, 0x88, 0x74, 0xef, 0xde, 0x6e,
	0x37, 0xaf, 0x47, 0x65, 0x6c, 0x3a, 0x46, 0x5e, 0xd3, 0x6b, 0x82, 0x55, 0x5e, 0xed, 0xed, 0xc8,
	0xa8, 0x29, 0xe4, 0x9a, 0x26, 0xe8, 0x43, 0x68, 0x45, 0x9c, 0x67, 0x41, 0xb8, 0xe4, 0x11, 0xa1,
	0xf1, 0xcf, 0x21, 0x8f, 0x49, 0x1a, 0x44, 0x38, 0x9c, 0x60, 0xaa, 0x5b, 0xfd, 0x50, 0x38, 0x3c,
	0x2b, 0xda, 0xaf, 0xa4, 0xd9, 0x7b, 0x0a, 0xad, 0x92, 0x62, 0xb4, 0x04, 0x0d, 0xa8, 0x50, 0x3c,
	0xd5, 0x02, 0x8b, 0xa5, 0xf7, 0x12, 0xd0, 0x97, 0x31, 0xe3, 0xca, 0x9d, 0xdd, 0xb9, 0x6a, 0xef,
	0x77, 0x03, 0x9a, 0x3b, 0x84, 0x3a, 0xf2, 0x47, 0x70, 0xa2, 0xea, 0x53, 0x97, 0xe3, 0x74, 0xe0,
	0x6d, 0xe8, 0x4a, 0xbc, 0x7b, 0x3a, 0xfb, 0xcd, 0x11, 0xf7, 0x1b, 0xa8, 0x2a, 0x28, 0x9f, 0x58,
	0x46, 0x61, 0xf2, 0xb6, 0xa1, 0x36, 0x15, 0xef, 0x5c, 0x8a, 0xa9, 0x5e, 0x96, 0x2d, 0x01, 0xa1,
	0x65, 0x0b, 0xec, 0x6c, 0xc9, 0xa2, 0x82, 0xd0, 0x27, 0x62, 0x7f, 0x4d, 0x93, 0xc1, 0x5f, 0x16,
	0x9c, 0x29, 0xda, 0xaf, 0x31, 0x5d, 0xc5, 0x63, 0x8c, 0xae, 0xa0, 0x96, 0x4f, 0x5d, 0xe4, 0x6c,
	0x32, 0xdc, 0xff, 0x70, 0xb8, 0xad, 0x12, 0x8b, 0x1e, 0xd1, 0xd5, 0x57, 0x37, 0x5d, 0xd3, 0x36,
	0xd0, 0x14, 0x9a, 0x25, 0xb3, 0x07, 0xe5, 0x55, 0x1f, 0x9e, 0x98, 0xee, 0x1b, 0x47, 0x7d, 0xf6,
	0xe2, 0x7c, 0x05, 0xf5, 0xe2, 0xb4, 0x46, 0xed, 0x6d, 0x97, 0x6e, 0x7d, 0x28, 0xdc, 0x47, 0xe5,
	0xc6, 0x3d, 0x4a, 0x0c, 0xe8, 0xf6, 0x63, 0x47, 0x8f, 0x37, 0x67, 0x0f, 0x8e, 0x46, 0xd7, 0x3b,
	0xe6, 0xb2, 0x13, 0xc4, 0xec, 0x1a, 0x68, 0x0e, 0x17, 0x65, 0xcf, 0x15, 0x6d, 0xcb, 0x3f, 0x3c,
	0x2c, 0xdc, 0x37, 0x8f, 0x3b, 0xe9, 0x60, 0xf6, 0xab, 0x9b, 0xae, 0x65, 0x9b, 0x0d, 0x13, 0x7d,
	0x0f, 0xe7, 0xb7, 0x5e, 0x05, 0xea, 0x94, 0x90, 0xec, 0xbc, 0x7e, 0xf7, 0xf1, 0x11, 0x8f, 0xdd,
	0x82, 0x86, 0x97, 0xdf, 0x0e, 0x66, 0x31, 0x4f, 0xc2, 0x51, 0x6f, 0x4c, 0x16, 0x7d, 0xb5, 0x7c,
	0x4a, 0xe8, 0xac, 0xaf, 0x18, 0xfa, 0xab, 0x77, 0x2e, 0xfb, 0xf2, 0x5f, 0xa4, 0x3f, 0x23, 0x1a,
	0xcb, 0x46, 0xa3, 0xaa, 0x84, 0xde, 0xfd, 0x27, 0x00, 0x00, 0xff, 0xff, 0xfa, 0xfc, 0x84, 0xd1,
	0xd0, 0x08, 0x00, 0x00,
}

// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConn

// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion4

// RemoteServiceClient is the client API for RemoteService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type RemoteServiceClient interface {
	AddRemote(ctx context.Context, in *AddRemoteRequest, opts ...grpc.CallOption) (*AddRemoteResponse, error)
	FetchInternalRemote(ctx context.Context, in *FetchInternalRemoteRequest, opts ...grpc.CallOption) (*FetchInternalRemoteResponse, error)
	RemoveRemote(ctx context.Context, in *RemoveRemoteRequest, opts ...grpc.CallOption) (*RemoveRemoteResponse, error)
	// UpdateRemoteMirror compares the references in the target repository and its remote mirror
	// repository. Any differences in the references are then addressed by pushing the differing
	// references to the mirror. Created and modified references are updated, removed references are
	// deleted from the mirror. UpdateRemoteMirror updates all tags. Branches are updated if they match
	// the patterns specified in the requests.
	UpdateRemoteMirror(ctx context.Context, opts ...grpc.CallOption) (RemoteService_UpdateRemoteMirrorClient, error)
	FindRemoteRepository(ctx context.Context, in *FindRemoteRepositoryRequest, opts ...grpc.CallOption) (*FindRemoteRepositoryResponse, error)
	// FindRemoteRootRef tries to find the root reference of a remote
	// repository. The root reference is the default branch as pointed to by
	// the remotes HEAD reference. Returns an InvalidArgument error if the
	// specified remote does not exist and a NotFound error in case no HEAD
	// branch was found.
	FindRemoteRootRef(ctx context.Context, in *FindRemoteRootRefRequest, opts ...grpc.CallOption) (*FindRemoteRootRefResponse, error)
}

type remoteServiceClient struct {
	cc *grpc.ClientConn
}

func NewRemoteServiceClient(cc *grpc.ClientConn) RemoteServiceClient {
	return &remoteServiceClient{cc}
}

func (c *remoteServiceClient) AddRemote(ctx context.Context, in *AddRemoteRequest, opts ...grpc.CallOption) (*AddRemoteResponse, error) {
	out := new(AddRemoteResponse)
	err := c.cc.Invoke(ctx, "/gitaly.RemoteService/AddRemote", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *remoteServiceClient) FetchInternalRemote(ctx context.Context, in *FetchInternalRemoteRequest, opts ...grpc.CallOption) (*FetchInternalRemoteResponse, error) {
	out := new(FetchInternalRemoteResponse)
	err := c.cc.Invoke(ctx, "/gitaly.RemoteService/FetchInternalRemote", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *remoteServiceClient) RemoveRemote(ctx context.Context, in *RemoveRemoteRequest, opts ...grpc.CallOption) (*RemoveRemoteResponse, error) {
	out := new(RemoveRemoteResponse)
	err := c.cc.Invoke(ctx, "/gitaly.RemoteService/RemoveRemote", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *remoteServiceClient) UpdateRemoteMirror(ctx context.Context, opts ...grpc.CallOption) (RemoteService_UpdateRemoteMirrorClient, error) {
	stream, err := c.cc.NewStream(ctx, &_RemoteService_serviceDesc.Streams[0], "/gitaly.RemoteService/UpdateRemoteMirror", opts...)
	if err != nil {
		return nil, err
	}
	x := &remoteServiceUpdateRemoteMirrorClient{stream}
	return x, nil
}

type RemoteService_UpdateRemoteMirrorClient interface {
	Send(*UpdateRemoteMirrorRequest) error
	CloseAndRecv() (*UpdateRemoteMirrorResponse, error)
	grpc.ClientStream
}

type remoteServiceUpdateRemoteMirrorClient struct {
	grpc.ClientStream
}

func (x *remoteServiceUpdateRemoteMirrorClient) Send(m *UpdateRemoteMirrorRequest) error {
	return x.ClientStream.SendMsg(m)
}

func (x *remoteServiceUpdateRemoteMirrorClient) CloseAndRecv() (*UpdateRemoteMirrorResponse, error) {
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	m := new(UpdateRemoteMirrorResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *remoteServiceClient) FindRemoteRepository(ctx context.Context, in *FindRemoteRepositoryRequest, opts ...grpc.CallOption) (*FindRemoteRepositoryResponse, error) {
	out := new(FindRemoteRepositoryResponse)
	err := c.cc.Invoke(ctx, "/gitaly.RemoteService/FindRemoteRepository", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *remoteServiceClient) FindRemoteRootRef(ctx context.Context, in *FindRemoteRootRefRequest, opts ...grpc.CallOption) (*FindRemoteRootRefResponse, error) {
	out := new(FindRemoteRootRefResponse)
	err := c.cc.Invoke(ctx, "/gitaly.RemoteService/FindRemoteRootRef", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// RemoteServiceServer is the server API for RemoteService service.
type RemoteServiceServer interface {
	AddRemote(context.Context, *AddRemoteRequest) (*AddRemoteResponse, error)
	FetchInternalRemote(context.Context, *FetchInternalRemoteRequest) (*FetchInternalRemoteResponse, error)
	RemoveRemote(context.Context, *RemoveRemoteRequest) (*RemoveRemoteResponse, error)
	// UpdateRemoteMirror compares the references in the target repository and its remote mirror
	// repository. Any differences in the references are then addressed by pushing the differing
	// references to the mirror. Created and modified references are updated, removed references are
	// deleted from the mirror. UpdateRemoteMirror updates all tags. Branches are updated if they match
	// the patterns specified in the requests.
	UpdateRemoteMirror(RemoteService_UpdateRemoteMirrorServer) error
	FindRemoteRepository(context.Context, *FindRemoteRepositoryRequest) (*FindRemoteRepositoryResponse, error)
	// FindRemoteRootRef tries to find the root reference of a remote
	// repository. The root reference is the default branch as pointed to by
	// the remotes HEAD reference. Returns an InvalidArgument error if the
	// specified remote does not exist and a NotFound error in case no HEAD
	// branch was found.
	FindRemoteRootRef(context.Context, *FindRemoteRootRefRequest) (*FindRemoteRootRefResponse, error)
}

// UnimplementedRemoteServiceServer can be embedded to have forward compatible implementations.
type UnimplementedRemoteServiceServer struct {
}

func (*UnimplementedRemoteServiceServer) AddRemote(ctx context.Context, req *AddRemoteRequest) (*AddRemoteResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddRemote not implemented")
}
func (*UnimplementedRemoteServiceServer) FetchInternalRemote(ctx context.Context, req *FetchInternalRemoteRequest) (*FetchInternalRemoteResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method FetchInternalRemote not implemented")
}
func (*UnimplementedRemoteServiceServer) RemoveRemote(ctx context.Context, req *RemoveRemoteRequest) (*RemoveRemoteResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method RemoveRemote not implemented")
}
func (*UnimplementedRemoteServiceServer) UpdateRemoteMirror(srv RemoteService_UpdateRemoteMirrorServer) error {
	return status.Errorf(codes.Unimplemented, "method UpdateRemoteMirror not implemented")
}
func (*UnimplementedRemoteServiceServer) FindRemoteRepository(ctx context.Context, req *FindRemoteRepositoryRequest) (*FindRemoteRepositoryResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method FindRemoteRepository not implemented")
}
func (*UnimplementedRemoteServiceServer) FindRemoteRootRef(ctx context.Context, req *FindRemoteRootRefRequest) (*FindRemoteRootRefResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method FindRemoteRootRef not implemented")
}

func RegisterRemoteServiceServer(s *grpc.Server, srv RemoteServiceServer) {
	s.RegisterService(&_RemoteService_serviceDesc, srv)
}

func _RemoteService_AddRemote_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddRemoteRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RemoteServiceServer).AddRemote(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gitaly.RemoteService/AddRemote",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RemoteServiceServer).AddRemote(ctx, req.(*AddRemoteRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RemoteService_FetchInternalRemote_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(FetchInternalRemoteRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RemoteServiceServer).FetchInternalRemote(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gitaly.RemoteService/FetchInternalRemote",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RemoteServiceServer).FetchInternalRemote(ctx, req.(*FetchInternalRemoteRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RemoteService_RemoveRemote_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(RemoveRemoteRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RemoteServiceServer).RemoveRemote(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gitaly.RemoteService/RemoveRemote",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RemoteServiceServer).RemoveRemote(ctx, req.(*RemoveRemoteRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RemoteService_UpdateRemoteMirror_Handler(srv interface{}, stream grpc.ServerStream) error {
	return srv.(RemoteServiceServer).UpdateRemoteMirror(&remoteServiceUpdateRemoteMirrorServer{stream})
}

type RemoteService_UpdateRemoteMirrorServer interface {
	SendAndClose(*UpdateRemoteMirrorResponse) error
	Recv() (*UpdateRemoteMirrorRequest, error)
	grpc.ServerStream
}

type remoteServiceUpdateRemoteMirrorServer struct {
	grpc.ServerStream
}

func (x *remoteServiceUpdateRemoteMirrorServer) SendAndClose(m *UpdateRemoteMirrorResponse) error {
	return x.ServerStream.SendMsg(m)
}

func (x *remoteServiceUpdateRemoteMirrorServer) Recv() (*UpdateRemoteMirrorRequest, error) {
	m := new(UpdateRemoteMirrorRequest)
	if err := x.ServerStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func _RemoteService_FindRemoteRepository_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(FindRemoteRepositoryRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RemoteServiceServer).FindRemoteRepository(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gitaly.RemoteService/FindRemoteRepository",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RemoteServiceServer).FindRemoteRepository(ctx, req.(*FindRemoteRepositoryRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _RemoteService_FindRemoteRootRef_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(FindRemoteRootRefRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(RemoteServiceServer).FindRemoteRootRef(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gitaly.RemoteService/FindRemoteRootRef",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(RemoteServiceServer).FindRemoteRootRef(ctx, req.(*FindRemoteRootRefRequest))
	}
	return interceptor(ctx, in, info, handler)
}

var _RemoteService_serviceDesc = grpc.ServiceDesc{
	ServiceName: "gitaly.RemoteService",
	HandlerType: (*RemoteServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "AddRemote",
			Handler:    _RemoteService_AddRemote_Handler,
		},
		{
			MethodName: "FetchInternalRemote",
			Handler:    _RemoteService_FetchInternalRemote_Handler,
		},
		{
			MethodName: "RemoveRemote",
			Handler:    _RemoteService_RemoveRemote_Handler,
		},
		{
			MethodName: "FindRemoteRepository",
			Handler:    _RemoteService_FindRemoteRepository_Handler,
		},
		{
			MethodName: "FindRemoteRootRef",
			Handler:    _RemoteService_FindRemoteRootRef_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "UpdateRemoteMirror",
			Handler:       _RemoteService_UpdateRemoteMirror_Handler,
			ClientStreams: true,
		},
	},
	Metadata: "remote.proto",
}
