// Code generated by protoc-gen-go. DO NOT EDIT.
// source: cs3/storage/provider/v1beta1/provider_api.proto

package providerv1beta1

import (
	context "context"
	fmt "fmt"
	v1beta12 "github.com/cs3org/go-cs3apis/cs3/identity/user/v1beta1"
	v1beta11 "github.com/cs3org/go-cs3apis/cs3/rpc/v1beta1"
	v1beta1 "github.com/cs3org/go-cs3apis/cs3/types/v1beta1"
	proto "github.com/golang/protobuf/proto"
	field_mask "google.golang.org/genproto/protobuf/field_mask"
	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

// The filter to apply.
type ListStorageSpacesRequest_Filter_Type int32

const (
	ListStorageSpacesRequest_Filter_TYPE_INVALID    ListStorageSpacesRequest_Filter_Type = 0
	ListStorageSpacesRequest_Filter_TYPE_NO         ListStorageSpacesRequest_Filter_Type = 1
	ListStorageSpacesRequest_Filter_TYPE_ID         ListStorageSpacesRequest_Filter_Type = 2
	ListStorageSpacesRequest_Filter_TYPE_OWNER      ListStorageSpacesRequest_Filter_Type = 3
	ListStorageSpacesRequest_Filter_TYPE_SPACE_TYPE ListStorageSpacesRequest_Filter_Type = 4
	ListStorageSpacesRequest_Filter_TYPE_PATH       ListStorageSpacesRequest_Filter_Type = 5
	ListStorageSpacesRequest_Filter_TYPE_USER       ListStorageSpacesRequest_Filter_Type = 6
)

var ListStorageSpacesRequest_Filter_Type_name = map[int32]string{
	0: "TYPE_INVALID",
	1: "TYPE_NO",
	2: "TYPE_ID",
	3: "TYPE_OWNER",
	4: "TYPE_SPACE_TYPE",
	5: "TYPE_PATH",
	6: "TYPE_USER",
}

var ListStorageSpacesRequest_Filter_Type_value = map[string]int32{
	"TYPE_INVALID":    0,
	"TYPE_NO":         1,
	"TYPE_ID":         2,
	"TYPE_OWNER":      3,
	"TYPE_SPACE_TYPE": 4,
	"TYPE_PATH":       5,
	"TYPE_USER":       6,
}

func (x ListStorageSpacesRequest_Filter_Type) String() string {
	return proto.EnumName(ListStorageSpacesRequest_Filter_Type_name, int32(x))
}

func (ListStorageSpacesRequest_Filter_Type) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{66, 0, 0}
}

type GetHomeRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

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

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

var xxx_messageInfo_GetHomeRequest proto.InternalMessageInfo

func (m *GetHomeRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type GetHomeResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The path to the home in a storage provider.
	// For example /eos/user/h/hugo in the storage provider with root path /eos/user/.
	Path                 string   `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_GetHomeResponse proto.InternalMessageInfo

func (m *GetHomeResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *GetHomeResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *GetHomeResponse) GetPath() string {
	if m != nil {
		return m.Path
	}
	return ""
}

type AddGrantRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// REQUIRED.
	// The grant to be added.
	Grant *Grant `protobuf:"bytes,3,opt,name=grant,proto3" json:"grant,omitempty"`
	// OPTIONAL.
	// A lock_id: should the reference be locked, the stored
	// lock_id MUST be equal to the given value.
	LockId               string   `protobuf:"bytes,4,opt,name=lock_id,json=lockId,proto3" json:"lock_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_AddGrantRequest proto.InternalMessageInfo

func (m *AddGrantRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *AddGrantRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *AddGrantRequest) GetGrant() *Grant {
	if m != nil {
		return m.Grant
	}
	return nil
}

func (m *AddGrantRequest) GetLockId() string {
	if m != nil {
		return m.LockId
	}
	return ""
}

type AddGrantResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

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

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

var xxx_messageInfo_AddGrantResponse proto.InternalMessageInfo

func (m *AddGrantResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *AddGrantResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type DenyGrantRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// REQUIRED.
	// The grantee to remove permission.
	Grantee *Grantee `protobuf:"bytes,3,opt,name=grantee,proto3" json:"grantee,omitempty"`
	// OPTIONAL.
	// A lock_id: should the reference be locked, the stored
	// lock_id MUST be equal to the given value.
	LockId               string   `protobuf:"bytes,4,opt,name=lock_id,json=lockId,proto3" json:"lock_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_DenyGrantRequest proto.InternalMessageInfo

func (m *DenyGrantRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *DenyGrantRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *DenyGrantRequest) GetGrantee() *Grantee {
	if m != nil {
		return m.Grantee
	}
	return nil
}

func (m *DenyGrantRequest) GetLockId() string {
	if m != nil {
		return m.LockId
	}
	return ""
}

type DenyGrantResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

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

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

var xxx_messageInfo_DenyGrantResponse proto.InternalMessageInfo

func (m *DenyGrantResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *DenyGrantResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type CreateContainerRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref                  *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

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

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

var xxx_messageInfo_CreateContainerRequest proto.InternalMessageInfo

func (m *CreateContainerRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *CreateContainerRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

type CreateContainerResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

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

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

var xxx_messageInfo_CreateContainerResponse proto.InternalMessageInfo

func (m *CreateContainerResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *CreateContainerResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type TouchFileRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref                  *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

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

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

var xxx_messageInfo_TouchFileRequest proto.InternalMessageInfo

func (m *TouchFileRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *TouchFileRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

type TouchFileResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

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

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

var xxx_messageInfo_TouchFileResponse proto.InternalMessageInfo

func (m *TouchFileResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *TouchFileResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type DeleteRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// OPTIONAL.
	// A lock_id: should the reference be locked, the stored
	// lock_id MUST be equal to the given value.
	LockId               string   `protobuf:"bytes,3,opt,name=lock_id,json=lockId,proto3" json:"lock_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_DeleteRequest proto.InternalMessageInfo

func (m *DeleteRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *DeleteRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *DeleteRequest) GetLockId() string {
	if m != nil {
		return m.LockId
	}
	return ""
}

type DeleteResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

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

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

var xxx_messageInfo_DeleteResponse proto.InternalMessageInfo

func (m *DeleteResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *DeleteResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type GetPathRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The resource id of the resource.
	ResourceId           *ResourceId `protobuf:"bytes,2,opt,name=resource_id,json=resourceId,proto3" json:"resource_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

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

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

var xxx_messageInfo_GetPathRequest proto.InternalMessageInfo

func (m *GetPathRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *GetPathRequest) GetResourceId() *ResourceId {
	if m != nil {
		return m.ResourceId
	}
	return nil
}

type GetPathResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The path of the resource.
	Path                 string   `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

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

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

var xxx_messageInfo_GetPathResponse proto.InternalMessageInfo

func (m *GetPathResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *GetPathResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *GetPathResponse) GetPath() string {
	if m != nil {
		return m.Path
	}
	return ""
}

type GetQuotaRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// OPTIONAL.
	// Limit the quota Response to the given reference
	Ref                  *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *GetQuotaRequest) Reset()         { *m = GetQuotaRequest{} }
func (m *GetQuotaRequest) String() string { return proto.CompactTextString(m) }
func (*GetQuotaRequest) ProtoMessage()    {}
func (*GetQuotaRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{14}
}

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

var xxx_messageInfo_GetQuotaRequest proto.InternalMessageInfo

func (m *GetQuotaRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *GetQuotaRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

type GetQuotaResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The total available bytes.
	TotalBytes uint64 `protobuf:"varint,3,opt,name=total_bytes,json=totalBytes,proto3" json:"total_bytes,omitempty"`
	// REQUIRED.
	// The number of used bytes.
	UsedBytes            uint64   `protobuf:"varint,4,opt,name=used_bytes,json=usedBytes,proto3" json:"used_bytes,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetQuotaResponse) Reset()         { *m = GetQuotaResponse{} }
func (m *GetQuotaResponse) String() string { return proto.CompactTextString(m) }
func (*GetQuotaResponse) ProtoMessage()    {}
func (*GetQuotaResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{15}
}

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

var xxx_messageInfo_GetQuotaResponse proto.InternalMessageInfo

func (m *GetQuotaResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *GetQuotaResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *GetQuotaResponse) GetTotalBytes() uint64 {
	if m != nil {
		return m.TotalBytes
	}
	return 0
}

func (m *GetQuotaResponse) GetUsedBytes() uint64 {
	if m != nil {
		return m.UsedBytes
	}
	return 0
}

type InitiateFileUploadRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// Types that are valid to be assigned to Options:
	//	*InitiateFileUploadRequest_IfNotExist
	//	*InitiateFileUploadRequest_IfMatch
	//	*InitiateFileUploadRequest_IfUnmodifiedSince
	Options isInitiateFileUploadRequest_Options `protobuf_oneof:"options"`
	// OPTIONAL.
	// A lock_id: should the reference exist and be locked, the stored
	// lock_id MUST be equal to the given value.
	LockId               string   `protobuf:"bytes,5,opt,name=lock_id,json=lockId,proto3" json:"lock_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *InitiateFileUploadRequest) Reset()         { *m = InitiateFileUploadRequest{} }
func (m *InitiateFileUploadRequest) String() string { return proto.CompactTextString(m) }
func (*InitiateFileUploadRequest) ProtoMessage()    {}
func (*InitiateFileUploadRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{16}
}

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

var xxx_messageInfo_InitiateFileUploadRequest proto.InternalMessageInfo

func (m *InitiateFileUploadRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *InitiateFileUploadRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

type isInitiateFileUploadRequest_Options interface {
	isInitiateFileUploadRequest_Options()
}

type InitiateFileUploadRequest_IfNotExist struct {
	IfNotExist bool `protobuf:"varint,3,opt,name=if_not_exist,json=ifNotExist,proto3,oneof"`
}

type InitiateFileUploadRequest_IfMatch struct {
	IfMatch string `protobuf:"bytes,4,opt,name=if_match,json=ifMatch,proto3,oneof"`
}

type InitiateFileUploadRequest_IfUnmodifiedSince struct {
	IfUnmodifiedSince *v1beta1.Timestamp `protobuf:"bytes,6,opt,name=if_unmodified_since,json=ifUnmodifiedSince,proto3,oneof"`
}

func (*InitiateFileUploadRequest_IfNotExist) isInitiateFileUploadRequest_Options() {}

func (*InitiateFileUploadRequest_IfMatch) isInitiateFileUploadRequest_Options() {}

func (*InitiateFileUploadRequest_IfUnmodifiedSince) isInitiateFileUploadRequest_Options() {}

func (m *InitiateFileUploadRequest) GetOptions() isInitiateFileUploadRequest_Options {
	if m != nil {
		return m.Options
	}
	return nil
}

func (m *InitiateFileUploadRequest) GetIfNotExist() bool {
	if x, ok := m.GetOptions().(*InitiateFileUploadRequest_IfNotExist); ok {
		return x.IfNotExist
	}
	return false
}

func (m *InitiateFileUploadRequest) GetIfMatch() string {
	if x, ok := m.GetOptions().(*InitiateFileUploadRequest_IfMatch); ok {
		return x.IfMatch
	}
	return ""
}

func (m *InitiateFileUploadRequest) GetIfUnmodifiedSince() *v1beta1.Timestamp {
	if x, ok := m.GetOptions().(*InitiateFileUploadRequest_IfUnmodifiedSince); ok {
		return x.IfUnmodifiedSince
	}
	return nil
}

func (m *InitiateFileUploadRequest) GetLockId() string {
	if m != nil {
		return m.LockId
	}
	return ""
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*InitiateFileUploadRequest) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*InitiateFileUploadRequest_IfNotExist)(nil),
		(*InitiateFileUploadRequest_IfMatch)(nil),
		(*InitiateFileUploadRequest_IfUnmodifiedSince)(nil),
	}
}

type InitiateFileUploadResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The protocols through which data can be uploaded.
	Protocols            []*FileUploadProtocol `protobuf:"bytes,3,rep,name=protocols,proto3" json:"protocols,omitempty"`
	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
	XXX_unrecognized     []byte                `json:"-"`
	XXX_sizecache        int32                 `json:"-"`
}

func (m *InitiateFileUploadResponse) Reset()         { *m = InitiateFileUploadResponse{} }
func (m *InitiateFileUploadResponse) String() string { return proto.CompactTextString(m) }
func (*InitiateFileUploadResponse) ProtoMessage()    {}
func (*InitiateFileUploadResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{17}
}

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

var xxx_messageInfo_InitiateFileUploadResponse proto.InternalMessageInfo

func (m *InitiateFileUploadResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *InitiateFileUploadResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *InitiateFileUploadResponse) GetProtocols() []*FileUploadProtocol {
	if m != nil {
		return m.Protocols
	}
	return nil
}

type InitiateFileDownloadRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// OPTIONAL.
	// A lock_id: should the reference be locked and the lock type be LOCK_TYPE_EXCL,
	// the stored lock_id MUST be equal to the given value.
	LockId               string   `protobuf:"bytes,3,opt,name=lock_id,json=lockId,proto3" json:"lock_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *InitiateFileDownloadRequest) Reset()         { *m = InitiateFileDownloadRequest{} }
func (m *InitiateFileDownloadRequest) String() string { return proto.CompactTextString(m) }
func (*InitiateFileDownloadRequest) ProtoMessage()    {}
func (*InitiateFileDownloadRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{18}
}

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

var xxx_messageInfo_InitiateFileDownloadRequest proto.InternalMessageInfo

func (m *InitiateFileDownloadRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *InitiateFileDownloadRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *InitiateFileDownloadRequest) GetLockId() string {
	if m != nil {
		return m.LockId
	}
	return ""
}

type InitiateFileDownloadResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The protocols through which data can be downloaded.
	Protocols            []*FileDownloadProtocol `protobuf:"bytes,3,rep,name=protocols,proto3" json:"protocols,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                `json:"-"`
	XXX_unrecognized     []byte                  `json:"-"`
	XXX_sizecache        int32                   `json:"-"`
}

func (m *InitiateFileDownloadResponse) Reset()         { *m = InitiateFileDownloadResponse{} }
func (m *InitiateFileDownloadResponse) String() string { return proto.CompactTextString(m) }
func (*InitiateFileDownloadResponse) ProtoMessage()    {}
func (*InitiateFileDownloadResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{19}
}

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

var xxx_messageInfo_InitiateFileDownloadResponse proto.InternalMessageInfo

func (m *InitiateFileDownloadResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *InitiateFileDownloadResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *InitiateFileDownloadResponse) GetProtocols() []*FileDownloadProtocol {
	if m != nil {
		return m.Protocols
	}
	return nil
}

type ListGrantsRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// OPTIONAL.
	// Clients use this field to specify the maximum number of results to be returned by the server.
	// The server may further constrain the maximum number of results returned in a single page.
	// If the page_size is 0, the server will decide the number of results to be returned.
	// see https://cloud.google.com/apis/design/design_patterns#list_pagination
	PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// OPTIONAL.
	// The client uses this field to request a specific page of the list results.
	PageToken            string   `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListGrantsRequest) Reset()         { *m = ListGrantsRequest{} }
func (m *ListGrantsRequest) String() string { return proto.CompactTextString(m) }
func (*ListGrantsRequest) ProtoMessage()    {}
func (*ListGrantsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{20}
}

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

var xxx_messageInfo_ListGrantsRequest proto.InternalMessageInfo

func (m *ListGrantsRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *ListGrantsRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *ListGrantsRequest) GetPageSize() int32 {
	if m != nil {
		return m.PageSize
	}
	return 0
}

func (m *ListGrantsRequest) GetPageToken() string {
	if m != nil {
		return m.PageToken
	}
	return ""
}

type ListGrantsResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The grants.
	Grants []*Grant `protobuf:"bytes,3,rep,name=grants,proto3" json:"grants,omitempty"`
	// OPTIONAL.
	// This field represents the pagination token to retrieve the next page of results.
	// If the value is "", it means no further results for the request.
	// see https://cloud.google.com/apis/design/design_patterns#list_pagination
	NextPageToken        string   `protobuf:"bytes,4,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListGrantsResponse) Reset()         { *m = ListGrantsResponse{} }
func (m *ListGrantsResponse) String() string { return proto.CompactTextString(m) }
func (*ListGrantsResponse) ProtoMessage()    {}
func (*ListGrantsResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{21}
}

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

var xxx_messageInfo_ListGrantsResponse proto.InternalMessageInfo

func (m *ListGrantsResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *ListGrantsResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *ListGrantsResponse) GetGrants() []*Grant {
	if m != nil {
		return m.Grants
	}
	return nil
}

func (m *ListGrantsResponse) GetNextPageToken() string {
	if m != nil {
		return m.NextPageToken
	}
	return ""
}

type ListContainerStreamRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// OPTIONAL.
	// Arbitrary metadata to be included with the resource.
	// A key with the name '*' means to return all available arbitrary metadata.
	ArbitraryMetadataKeys []string `protobuf:"bytes,3,rep,name=arbitrary_metadata_keys,json=arbitraryMetadataKeys,proto3" json:"arbitrary_metadata_keys,omitempty"`
	// OPTIONAL.
	// The field mask applies to the resource. For the `FieldMask` definition,
	// see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
	FieldMask *field_mask.FieldMask `protobuf:"bytes,4,opt,name=field_mask,json=fieldMask,proto3" json:"field_mask,omitempty"`
	// OPTIONAL.
	// Clients use this field to specify the maximum number of results to be returned by the server.
	// The server may further constrain the maximum number of results returned in a single page.
	// If the page_size is 0, the server will decide the number of results to be returned.
	// see https://cloud.google.com/apis/design/design_patterns#list_pagination
	PageSize int32 `protobuf:"varint,5,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// OPTIONAL.
	// The client uses this field to request a specific page of the list results.
	PageToken            string   `protobuf:"bytes,6,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListContainerStreamRequest) Reset()         { *m = ListContainerStreamRequest{} }
func (m *ListContainerStreamRequest) String() string { return proto.CompactTextString(m) }
func (*ListContainerStreamRequest) ProtoMessage()    {}
func (*ListContainerStreamRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{22}
}

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

var xxx_messageInfo_ListContainerStreamRequest proto.InternalMessageInfo

func (m *ListContainerStreamRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *ListContainerStreamRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *ListContainerStreamRequest) GetArbitraryMetadataKeys() []string {
	if m != nil {
		return m.ArbitraryMetadataKeys
	}
	return nil
}

func (m *ListContainerStreamRequest) GetFieldMask() *field_mask.FieldMask {
	if m != nil {
		return m.FieldMask
	}
	return nil
}

func (m *ListContainerStreamRequest) GetPageSize() int32 {
	if m != nil {
		return m.PageSize
	}
	return 0
}

func (m *ListContainerStreamRequest) GetPageToken() string {
	if m != nil {
		return m.PageToken
	}
	return ""
}

type ListContainerStreamResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The resource information.
	Info *ResourceInfo `protobuf:"bytes,3,opt,name=info,proto3" json:"info,omitempty"`
	// OPTIONAL.
	// This field represents the pagination token to retrieve the next page of results.
	// If the value is "", it means no further results for the request.
	// see https://cloud.google.com/apis/design/design_patterns#list_pagination
	NextPageToken        string   `protobuf:"bytes,4,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListContainerStreamResponse) Reset()         { *m = ListContainerStreamResponse{} }
func (m *ListContainerStreamResponse) String() string { return proto.CompactTextString(m) }
func (*ListContainerStreamResponse) ProtoMessage()    {}
func (*ListContainerStreamResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{23}
}

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

var xxx_messageInfo_ListContainerStreamResponse proto.InternalMessageInfo

func (m *ListContainerStreamResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *ListContainerStreamResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *ListContainerStreamResponse) GetInfo() *ResourceInfo {
	if m != nil {
		return m.Info
	}
	return nil
}

func (m *ListContainerStreamResponse) GetNextPageToken() string {
	if m != nil {
		return m.NextPageToken
	}
	return ""
}

type ListContainerRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// OPTIONAL.
	// Arbitrary metadata to be included with the resource.
	// A key with the name '*' means to return all available arbitrary metadata.
	ArbitraryMetadataKeys []string `protobuf:"bytes,3,rep,name=arbitrary_metadata_keys,json=arbitraryMetadataKeys,proto3" json:"arbitrary_metadata_keys,omitempty"`
	// OPTIONAL.
	// The field mask applies to the resource. For the `FieldMask` definition,
	// see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
	FieldMask *field_mask.FieldMask `protobuf:"bytes,4,opt,name=field_mask,json=fieldMask,proto3" json:"field_mask,omitempty"`
	// OPTIONAL.
	// Clients use this field to specify the maximum number of results to be returned by the server.
	// The server may further constrain the maximum number of results returned in a single page.
	// If the page_size is 0, the server will decide the number of results to be returned.
	// see https://cloud.google.com/apis/design/design_patterns#list_pagination
	PageSize int32 `protobuf:"varint,5,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// OPTIONAL.
	// The client uses this field to request a specific page of the list results.
	PageToken            string   `protobuf:"bytes,6,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListContainerRequest) Reset()         { *m = ListContainerRequest{} }
func (m *ListContainerRequest) String() string { return proto.CompactTextString(m) }
func (*ListContainerRequest) ProtoMessage()    {}
func (*ListContainerRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{24}
}

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

var xxx_messageInfo_ListContainerRequest proto.InternalMessageInfo

func (m *ListContainerRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *ListContainerRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *ListContainerRequest) GetArbitraryMetadataKeys() []string {
	if m != nil {
		return m.ArbitraryMetadataKeys
	}
	return nil
}

func (m *ListContainerRequest) GetFieldMask() *field_mask.FieldMask {
	if m != nil {
		return m.FieldMask
	}
	return nil
}

func (m *ListContainerRequest) GetPageSize() int32 {
	if m != nil {
		return m.PageSize
	}
	return 0
}

func (m *ListContainerRequest) GetPageToken() string {
	if m != nil {
		return m.PageToken
	}
	return ""
}

type ListContainerResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The list of resource informations.
	Infos []*ResourceInfo `protobuf:"bytes,3,rep,name=infos,proto3" json:"infos,omitempty"`
	// OPTIONAL.
	// This field represents the pagination token to retrieve the next page of results.
	// If the value is "", it means no further results for the request.
	// see https://cloud.google.com/apis/design/design_patterns#list_pagination
	NextPageToken        string   `protobuf:"bytes,4,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListContainerResponse) Reset()         { *m = ListContainerResponse{} }
func (m *ListContainerResponse) String() string { return proto.CompactTextString(m) }
func (*ListContainerResponse) ProtoMessage()    {}
func (*ListContainerResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{25}
}

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

var xxx_messageInfo_ListContainerResponse proto.InternalMessageInfo

func (m *ListContainerResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *ListContainerResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *ListContainerResponse) GetInfos() []*ResourceInfo {
	if m != nil {
		return m.Infos
	}
	return nil
}

func (m *ListContainerResponse) GetNextPageToken() string {
	if m != nil {
		return m.NextPageToken
	}
	return ""
}

type ListFileVersionsRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// OPTIONAL.
	// Clients use this field to specify the maximum number of results to be returned by the server.
	// The server may further constrain the maximum number of results returned in a single page.
	// If the page_size is 0, the server will decide the number of results to be returned.
	// see https://cloud.google.com/apis/design/design_patterns#list_pagination
	PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// OPTIONAL.
	// The client uses this field to request a specific page of the list results.
	PageToken            string   `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListFileVersionsRequest) Reset()         { *m = ListFileVersionsRequest{} }
func (m *ListFileVersionsRequest) String() string { return proto.CompactTextString(m) }
func (*ListFileVersionsRequest) ProtoMessage()    {}
func (*ListFileVersionsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{26}
}

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

var xxx_messageInfo_ListFileVersionsRequest proto.InternalMessageInfo

func (m *ListFileVersionsRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *ListFileVersionsRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *ListFileVersionsRequest) GetPageSize() int32 {
	if m != nil {
		return m.PageSize
	}
	return 0
}

func (m *ListFileVersionsRequest) GetPageToken() string {
	if m != nil {
		return m.PageToken
	}
	return ""
}

type ListFileVersionsResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The list of file versions.
	Versions []*FileVersion `protobuf:"bytes,3,rep,name=versions,proto3" json:"versions,omitempty"`
	// OPTIONAL.
	// This field represents the pagination token to retrieve the next page of results.
	// If the value is "", it means no further results for the request.
	// see https://cloud.google.com/apis/design/design_patterns#list_pagination
	NextPageToken        string   `protobuf:"bytes,4,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListFileVersionsResponse) Reset()         { *m = ListFileVersionsResponse{} }
func (m *ListFileVersionsResponse) String() string { return proto.CompactTextString(m) }
func (*ListFileVersionsResponse) ProtoMessage()    {}
func (*ListFileVersionsResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{27}
}

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

var xxx_messageInfo_ListFileVersionsResponse proto.InternalMessageInfo

func (m *ListFileVersionsResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *ListFileVersionsResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *ListFileVersionsResponse) GetVersions() []*FileVersion {
	if m != nil {
		return m.Versions
	}
	return nil
}

func (m *ListFileVersionsResponse) GetNextPageToken() string {
	if m != nil {
		return m.NextPageToken
	}
	return ""
}

type ListRecycleRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// OPTIONAL.
	// SHOULD be specified.
	// The start time range to query for recycle items.
	// The value is the Unix Epoch timestamp in seconds.
	FromTs *v1beta1.Timestamp `protobuf:"bytes,2,opt,name=from_ts,json=fromTs,proto3" json:"from_ts,omitempty"`
	// OPTIONAL.
	// SHOULD be specified.
	// The end time range to query for recycle items.
	// The value is Unix Epoch timestamp in seconds.
	ToTs *v1beta1.Timestamp `protobuf:"bytes,3,opt,name=to_ts,json=toTs,proto3" json:"to_ts,omitempty"`
	// OPTIONAL.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,4,opt,name=ref,proto3" json:"ref,omitempty"`
	// OPTIONAL.
	// The key for a recycle item to be listed.
	// If provided, the item corresponding to the key will be listed.
	Key string `protobuf:"bytes,5,opt,name=key,proto3" json:"key,omitempty"`
	// OPTIONAL.
	// Clients use this field to specify the maximum number of results to be returned by the server.
	// The server may further constrain the maximum number of results returned in a single page.
	// If the page_size is 0, the server will decide the number of results to be returned.
	// see https://cloud.google.com/apis/design/design_patterns#list_pagination
	PageSize int32 `protobuf:"varint,6,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// OPTIONAL.
	// The client uses this field to request a specific page of the list results.
	PageToken            string   `protobuf:"bytes,7,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListRecycleRequest) Reset()         { *m = ListRecycleRequest{} }
func (m *ListRecycleRequest) String() string { return proto.CompactTextString(m) }
func (*ListRecycleRequest) ProtoMessage()    {}
func (*ListRecycleRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{28}
}

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

var xxx_messageInfo_ListRecycleRequest proto.InternalMessageInfo

func (m *ListRecycleRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *ListRecycleRequest) GetFromTs() *v1beta1.Timestamp {
	if m != nil {
		return m.FromTs
	}
	return nil
}

func (m *ListRecycleRequest) GetToTs() *v1beta1.Timestamp {
	if m != nil {
		return m.ToTs
	}
	return nil
}

func (m *ListRecycleRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *ListRecycleRequest) GetKey() string {
	if m != nil {
		return m.Key
	}
	return ""
}

func (m *ListRecycleRequest) GetPageSize() int32 {
	if m != nil {
		return m.PageSize
	}
	return 0
}

func (m *ListRecycleRequest) GetPageToken() string {
	if m != nil {
		return m.PageToken
	}
	return ""
}

type ListRecycleResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The list of recycle items.
	RecycleItems []*RecycleItem `protobuf:"bytes,3,rep,name=recycle_items,json=recycleItems,proto3" json:"recycle_items,omitempty"`
	// OPTIONAL.
	// This field represents the pagination token to retrieve the next page of results.
	// If the value is "", it means no further results for the request.
	// see https://cloud.google.com/apis/design/design_patterns#list_pagination
	NextPageToken        string   `protobuf:"bytes,4,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListRecycleResponse) Reset()         { *m = ListRecycleResponse{} }
func (m *ListRecycleResponse) String() string { return proto.CompactTextString(m) }
func (*ListRecycleResponse) ProtoMessage()    {}
func (*ListRecycleResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{29}
}

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

var xxx_messageInfo_ListRecycleResponse proto.InternalMessageInfo

func (m *ListRecycleResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *ListRecycleResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *ListRecycleResponse) GetRecycleItems() []*RecycleItem {
	if m != nil {
		return m.RecycleItems
	}
	return nil
}

func (m *ListRecycleResponse) GetNextPageToken() string {
	if m != nil {
		return m.NextPageToken
	}
	return ""
}

type ListRecycleStreamRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// OPTIONAL.
	// SHOULD be specified.
	// The start time range to query for recycle items.
	// The value is the Unix Epoch timestamp in seconds.
	FromTs *v1beta1.Timestamp `protobuf:"bytes,2,opt,name=from_ts,json=fromTs,proto3" json:"from_ts,omitempty"`
	// OPTIONAL.
	// SHOULD be specified.
	// The end time range to query for recycle items.
	// The value is Unix Epoch timestamp in seconds.
	ToTs *v1beta1.Timestamp `protobuf:"bytes,3,opt,name=to_ts,json=toTs,proto3" json:"to_ts,omitempty"`
	// OPTIONAL.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,4,opt,name=ref,proto3" json:"ref,omitempty"`
	// OPTIONAL.
	// The key for a recycle item to be listed.
	// If provided, the item corresponding to the key will be listed.
	Key string `protobuf:"bytes,5,opt,name=key,proto3" json:"key,omitempty"`
	// OPTIONAL.
	// Clients use this field to specify the maximum number of results to be returned by the server.
	// The server may further constrain the maximum number of results returned in a single page.
	// If the page_size is 0, the server will decide the number of results to be returned.
	// see https://cloud.google.com/apis/design/design_patterns#list_pagination
	PageSize int32 `protobuf:"varint,6,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// OPTIONAL.
	// The client uses this field to request a specific page of the list results.
	PageToken            string   `protobuf:"bytes,7,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListRecycleStreamRequest) Reset()         { *m = ListRecycleStreamRequest{} }
func (m *ListRecycleStreamRequest) String() string { return proto.CompactTextString(m) }
func (*ListRecycleStreamRequest) ProtoMessage()    {}
func (*ListRecycleStreamRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{30}
}

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

var xxx_messageInfo_ListRecycleStreamRequest proto.InternalMessageInfo

func (m *ListRecycleStreamRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *ListRecycleStreamRequest) GetFromTs() *v1beta1.Timestamp {
	if m != nil {
		return m.FromTs
	}
	return nil
}

func (m *ListRecycleStreamRequest) GetToTs() *v1beta1.Timestamp {
	if m != nil {
		return m.ToTs
	}
	return nil
}

func (m *ListRecycleStreamRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *ListRecycleStreamRequest) GetKey() string {
	if m != nil {
		return m.Key
	}
	return ""
}

func (m *ListRecycleStreamRequest) GetPageSize() int32 {
	if m != nil {
		return m.PageSize
	}
	return 0
}

func (m *ListRecycleStreamRequest) GetPageToken() string {
	if m != nil {
		return m.PageToken
	}
	return ""
}

type ListRecycleStreamResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The recycle items.
	RecycleItem *RecycleItem `protobuf:"bytes,3,opt,name=recycle_item,json=recycleItem,proto3" json:"recycle_item,omitempty"`
	// OPTIONAL.
	// This field represents the pagination token to retrieve the next page of results.
	// If the value is "", it means no further results for the request.
	// see https://cloud.google.com/apis/design/design_patterns#list_pagination
	NextPageToken        string   `protobuf:"bytes,4,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListRecycleStreamResponse) Reset()         { *m = ListRecycleStreamResponse{} }
func (m *ListRecycleStreamResponse) String() string { return proto.CompactTextString(m) }
func (*ListRecycleStreamResponse) ProtoMessage()    {}
func (*ListRecycleStreamResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{31}
}

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

var xxx_messageInfo_ListRecycleStreamResponse proto.InternalMessageInfo

func (m *ListRecycleStreamResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *ListRecycleStreamResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *ListRecycleStreamResponse) GetRecycleItem() *RecycleItem {
	if m != nil {
		return m.RecycleItem
	}
	return nil
}

func (m *ListRecycleStreamResponse) GetNextPageToken() string {
	if m != nil {
		return m.NextPageToken
	}
	return ""
}

type MoveRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The source reference the resource is moved from.
	Source *Reference `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
	// REQUIRED.
	// The destination reference the resource is moved to.
	Destination *Reference `protobuf:"bytes,3,opt,name=destination,proto3" json:"destination,omitempty"`
	// OPTIONAL.
	// A lock_id: should the source reference be locked, the stored
	// lock_id MUST be equal to the given value.
	LockId               string   `protobuf:"bytes,4,opt,name=lock_id,json=lockId,proto3" json:"lock_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *MoveRequest) Reset()         { *m = MoveRequest{} }
func (m *MoveRequest) String() string { return proto.CompactTextString(m) }
func (*MoveRequest) ProtoMessage()    {}
func (*MoveRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{32}
}

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

var xxx_messageInfo_MoveRequest proto.InternalMessageInfo

func (m *MoveRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *MoveRequest) GetSource() *Reference {
	if m != nil {
		return m.Source
	}
	return nil
}

func (m *MoveRequest) GetDestination() *Reference {
	if m != nil {
		return m.Destination
	}
	return nil
}

func (m *MoveRequest) GetLockId() string {
	if m != nil {
		return m.LockId
	}
	return ""
}

type MoveResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *MoveResponse) Reset()         { *m = MoveResponse{} }
func (m *MoveResponse) String() string { return proto.CompactTextString(m) }
func (*MoveResponse) ProtoMessage()    {}
func (*MoveResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{33}
}

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

var xxx_messageInfo_MoveResponse proto.InternalMessageInfo

func (m *MoveResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *MoveResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type PurgeRecycleRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// REQUIRED.
	// The key corresponding to the item to be purged..
	Key                  string   `protobuf:"bytes,3,opt,name=key,proto3" json:"key,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PurgeRecycleRequest) Reset()         { *m = PurgeRecycleRequest{} }
func (m *PurgeRecycleRequest) String() string { return proto.CompactTextString(m) }
func (*PurgeRecycleRequest) ProtoMessage()    {}
func (*PurgeRecycleRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{34}
}

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

var xxx_messageInfo_PurgeRecycleRequest proto.InternalMessageInfo

func (m *PurgeRecycleRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *PurgeRecycleRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *PurgeRecycleRequest) GetKey() string {
	if m != nil {
		return m.Key
	}
	return ""
}

type PurgeRecycleResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *PurgeRecycleResponse) Reset()         { *m = PurgeRecycleResponse{} }
func (m *PurgeRecycleResponse) String() string { return proto.CompactTextString(m) }
func (*PurgeRecycleResponse) ProtoMessage()    {}
func (*PurgeRecycleResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{35}
}

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

var xxx_messageInfo_PurgeRecycleResponse proto.InternalMessageInfo

func (m *PurgeRecycleResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *PurgeRecycleResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type RestoreFileVersionRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// REQUIRED.
	// The key to restore a specific file version.
	Key string `protobuf:"bytes,3,opt,name=key,proto3" json:"key,omitempty"`
	// OPTIONAL.
	// A lock_id: should the reference be locked, the stored
	// lock_id MUST be equal to the given value.
	LockId               string   `protobuf:"bytes,4,opt,name=lock_id,json=lockId,proto3" json:"lock_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *RestoreFileVersionRequest) Reset()         { *m = RestoreFileVersionRequest{} }
func (m *RestoreFileVersionRequest) String() string { return proto.CompactTextString(m) }
func (*RestoreFileVersionRequest) ProtoMessage()    {}
func (*RestoreFileVersionRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{36}
}

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

var xxx_messageInfo_RestoreFileVersionRequest proto.InternalMessageInfo

func (m *RestoreFileVersionRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *RestoreFileVersionRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *RestoreFileVersionRequest) GetKey() string {
	if m != nil {
		return m.Key
	}
	return ""
}

func (m *RestoreFileVersionRequest) GetLockId() string {
	if m != nil {
		return m.LockId
	}
	return ""
}

type RestoreFileVersionResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *RestoreFileVersionResponse) Reset()         { *m = RestoreFileVersionResponse{} }
func (m *RestoreFileVersionResponse) String() string { return proto.CompactTextString(m) }
func (*RestoreFileVersionResponse) ProtoMessage()    {}
func (*RestoreFileVersionResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{37}
}

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

var xxx_messageInfo_RestoreFileVersionResponse proto.InternalMessageInfo

func (m *RestoreFileVersionResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *RestoreFileVersionResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

// TODO: restore to original location if not specified as OPTIONAL?
type RestoreRecycleItemRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to the user's home directory.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// REQUIRED.
	// The key for the recycle item to be restored.
	Key string `protobuf:"bytes,3,opt,name=key,proto3" json:"key,omitempty"`
	// OPTIONAL.
	// An optional restore path for the deleted resource.
	// It can be useful to restore to another location rather than
	// the original.
	// If empty, service implementors MUST restore
	// to original location if possible.
	RestoreRef *Reference `protobuf:"bytes,4,opt,name=restore_ref,json=restoreRef,proto3" json:"restore_ref,omitempty"`
	// OPTIONAL.
	// A lock_id: should a lock exist for the reference where the file is
	// to be restored, the stored lock_id MUST be equal to the given value.
	LockId               string   `protobuf:"bytes,5,opt,name=lock_id,json=lockId,proto3" json:"lock_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *RestoreRecycleItemRequest) Reset()         { *m = RestoreRecycleItemRequest{} }
func (m *RestoreRecycleItemRequest) String() string { return proto.CompactTextString(m) }
func (*RestoreRecycleItemRequest) ProtoMessage()    {}
func (*RestoreRecycleItemRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{38}
}

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

var xxx_messageInfo_RestoreRecycleItemRequest proto.InternalMessageInfo

func (m *RestoreRecycleItemRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *RestoreRecycleItemRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *RestoreRecycleItemRequest) GetKey() string {
	if m != nil {
		return m.Key
	}
	return ""
}

func (m *RestoreRecycleItemRequest) GetRestoreRef() *Reference {
	if m != nil {
		return m.RestoreRef
	}
	return nil
}

func (m *RestoreRecycleItemRequest) GetLockId() string {
	if m != nil {
		return m.LockId
	}
	return ""
}

type RestoreRecycleItemResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *RestoreRecycleItemResponse) Reset()         { *m = RestoreRecycleItemResponse{} }
func (m *RestoreRecycleItemResponse) String() string { return proto.CompactTextString(m) }
func (*RestoreRecycleItemResponse) ProtoMessage()    {}
func (*RestoreRecycleItemResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{39}
}

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

var xxx_messageInfo_RestoreRecycleItemResponse proto.InternalMessageInfo

func (m *RestoreRecycleItemResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *RestoreRecycleItemResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type RemoveGrantRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// REQUIRED.
	// The grant to remove.
	Grant *Grant `protobuf:"bytes,3,opt,name=grant,proto3" json:"grant,omitempty"`
	// OPTIONAL.
	// A lock_id: should the reference be locked, the stored
	// lock_id MUST be equal to the given value.
	LockId               string   `protobuf:"bytes,4,opt,name=lock_id,json=lockId,proto3" json:"lock_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *RemoveGrantRequest) Reset()         { *m = RemoveGrantRequest{} }
func (m *RemoveGrantRequest) String() string { return proto.CompactTextString(m) }
func (*RemoveGrantRequest) ProtoMessage()    {}
func (*RemoveGrantRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{40}
}

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

var xxx_messageInfo_RemoveGrantRequest proto.InternalMessageInfo

func (m *RemoveGrantRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *RemoveGrantRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *RemoveGrantRequest) GetGrant() *Grant {
	if m != nil {
		return m.Grant
	}
	return nil
}

func (m *RemoveGrantRequest) GetLockId() string {
	if m != nil {
		return m.LockId
	}
	return ""
}

type RemoveGrantResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *RemoveGrantResponse) Reset()         { *m = RemoveGrantResponse{} }
func (m *RemoveGrantResponse) String() string { return proto.CompactTextString(m) }
func (*RemoveGrantResponse) ProtoMessage()    {}
func (*RemoveGrantResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{41}
}

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

var xxx_messageInfo_RemoveGrantResponse proto.InternalMessageInfo

func (m *RemoveGrantResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *RemoveGrantResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type StatRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// OPTIONAL.
	// Arbitrary metadata be included with the resource.
	// A key with the name '*' means to return all available arbitrary metadata.
	ArbitraryMetadataKeys []string `protobuf:"bytes,3,rep,name=arbitrary_metadata_keys,json=arbitraryMetadataKeys,proto3" json:"arbitrary_metadata_keys,omitempty"`
	// OPTIONAL.
	// The field mask applies to the resource. For the `FieldMask` definition,
	// see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
	FieldMask            *field_mask.FieldMask `protobuf:"bytes,4,opt,name=field_mask,json=fieldMask,proto3" json:"field_mask,omitempty"`
	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
	XXX_unrecognized     []byte                `json:"-"`
	XXX_sizecache        int32                 `json:"-"`
}

func (m *StatRequest) Reset()         { *m = StatRequest{} }
func (m *StatRequest) String() string { return proto.CompactTextString(m) }
func (*StatRequest) ProtoMessage()    {}
func (*StatRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{42}
}

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

var xxx_messageInfo_StatRequest proto.InternalMessageInfo

func (m *StatRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *StatRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *StatRequest) GetArbitraryMetadataKeys() []string {
	if m != nil {
		return m.ArbitraryMetadataKeys
	}
	return nil
}

func (m *StatRequest) GetFieldMask() *field_mask.FieldMask {
	if m != nil {
		return m.FieldMask
	}
	return nil
}

type StatResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The resource information.
	Info                 *ResourceInfo `protobuf:"bytes,3,opt,name=info,proto3" json:"info,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *StatResponse) Reset()         { *m = StatResponse{} }
func (m *StatResponse) String() string { return proto.CompactTextString(m) }
func (*StatResponse) ProtoMessage()    {}
func (*StatResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{43}
}

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

var xxx_messageInfo_StatResponse proto.InternalMessageInfo

func (m *StatResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *StatResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *StatResponse) GetInfo() *ResourceInfo {
	if m != nil {
		return m.Info
	}
	return nil
}

type UpdateGrantRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// REQUIRED.
	// The grant to be updated.
	Grant *Grant `protobuf:"bytes,3,opt,name=grant,proto3" json:"grant,omitempty"`
	// OPTIONAL.
	// A lock_id: should the reference be locked, the stored
	// lock_id MUST be equal to the given value.
	LockId               string   `protobuf:"bytes,4,opt,name=lock_id,json=lockId,proto3" json:"lock_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UpdateGrantRequest) Reset()         { *m = UpdateGrantRequest{} }
func (m *UpdateGrantRequest) String() string { return proto.CompactTextString(m) }
func (*UpdateGrantRequest) ProtoMessage()    {}
func (*UpdateGrantRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{44}
}

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

var xxx_messageInfo_UpdateGrantRequest proto.InternalMessageInfo

func (m *UpdateGrantRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *UpdateGrantRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *UpdateGrantRequest) GetGrant() *Grant {
	if m != nil {
		return m.Grant
	}
	return nil
}

func (m *UpdateGrantRequest) GetLockId() string {
	if m != nil {
		return m.LockId
	}
	return ""
}

type UpdateGrantResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *UpdateGrantResponse) Reset()         { *m = UpdateGrantResponse{} }
func (m *UpdateGrantResponse) String() string { return proto.CompactTextString(m) }
func (*UpdateGrantResponse) ProtoMessage()    {}
func (*UpdateGrantResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{45}
}

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

var xxx_messageInfo_UpdateGrantResponse proto.InternalMessageInfo

func (m *UpdateGrantResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *UpdateGrantResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type CreateSymlinkRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The location where to store the symlink.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// REQUIRED.
	// The link target can hold arbitrary text; if later resolved,
	// a relative link is interpreted in relation to its parent directory
	Target               string   `protobuf:"bytes,3,opt,name=target,proto3" json:"target,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *CreateSymlinkRequest) Reset()         { *m = CreateSymlinkRequest{} }
func (m *CreateSymlinkRequest) String() string { return proto.CompactTextString(m) }
func (*CreateSymlinkRequest) ProtoMessage()    {}
func (*CreateSymlinkRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{46}
}

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

var xxx_messageInfo_CreateSymlinkRequest proto.InternalMessageInfo

func (m *CreateSymlinkRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *CreateSymlinkRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *CreateSymlinkRequest) GetTarget() string {
	if m != nil {
		return m.Target
	}
	return ""
}

type CreateSymlinkResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *CreateSymlinkResponse) Reset()         { *m = CreateSymlinkResponse{} }
func (m *CreateSymlinkResponse) String() string { return proto.CompactTextString(m) }
func (*CreateSymlinkResponse) ProtoMessage()    {}
func (*CreateSymlinkResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{47}
}

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

var xxx_messageInfo_CreateSymlinkResponse proto.InternalMessageInfo

func (m *CreateSymlinkResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *CreateSymlinkResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type CreateReferenceRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The location where to store the reference.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// REQUIRED.
	// The reference resource by RFC3986.
	TargetUri            string   `protobuf:"bytes,3,opt,name=target_uri,json=targetUri,proto3" json:"target_uri,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *CreateReferenceRequest) Reset()         { *m = CreateReferenceRequest{} }
func (m *CreateReferenceRequest) String() string { return proto.CompactTextString(m) }
func (*CreateReferenceRequest) ProtoMessage()    {}
func (*CreateReferenceRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{48}
}

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

var xxx_messageInfo_CreateReferenceRequest proto.InternalMessageInfo

func (m *CreateReferenceRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *CreateReferenceRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *CreateReferenceRequest) GetTargetUri() string {
	if m != nil {
		return m.TargetUri
	}
	return ""
}

type CreateReferenceResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *CreateReferenceResponse) Reset()         { *m = CreateReferenceResponse{} }
func (m *CreateReferenceResponse) String() string { return proto.CompactTextString(m) }
func (*CreateReferenceResponse) ProtoMessage()    {}
func (*CreateReferenceResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{49}
}

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

var xxx_messageInfo_CreateReferenceResponse proto.InternalMessageInfo

func (m *CreateReferenceResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *CreateReferenceResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type SetArbitraryMetadataRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// REQUIRED.
	// The arbitrary metadata to add to the resource.
	ArbitraryMetadata *ArbitraryMetadata `protobuf:"bytes,3,opt,name=arbitrary_metadata,json=arbitraryMetadata,proto3" json:"arbitrary_metadata,omitempty"`
	// OPTIONAL.
	// A lock_id: should the reference be locked, the stored
	// lock_id MUST be equal to the given value.
	LockId               string   `protobuf:"bytes,4,opt,name=lock_id,json=lockId,proto3" json:"lock_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SetArbitraryMetadataRequest) Reset()         { *m = SetArbitraryMetadataRequest{} }
func (m *SetArbitraryMetadataRequest) String() string { return proto.CompactTextString(m) }
func (*SetArbitraryMetadataRequest) ProtoMessage()    {}
func (*SetArbitraryMetadataRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{50}
}

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

var xxx_messageInfo_SetArbitraryMetadataRequest proto.InternalMessageInfo

func (m *SetArbitraryMetadataRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *SetArbitraryMetadataRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *SetArbitraryMetadataRequest) GetArbitraryMetadata() *ArbitraryMetadata {
	if m != nil {
		return m.ArbitraryMetadata
	}
	return nil
}

func (m *SetArbitraryMetadataRequest) GetLockId() string {
	if m != nil {
		return m.LockId
	}
	return ""
}

type SetArbitraryMetadataResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *SetArbitraryMetadataResponse) Reset()         { *m = SetArbitraryMetadataResponse{} }
func (m *SetArbitraryMetadataResponse) String() string { return proto.CompactTextString(m) }
func (*SetArbitraryMetadataResponse) ProtoMessage()    {}
func (*SetArbitraryMetadataResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{51}
}

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

var xxx_messageInfo_SetArbitraryMetadataResponse proto.InternalMessageInfo

func (m *SetArbitraryMetadataResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *SetArbitraryMetadataResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type UnsetArbitraryMetadataRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference to which the action should be performed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// REQUIRED.
	// The arbitrary metadata to delete.
	ArbitraryMetadataKeys []string `protobuf:"bytes,3,rep,name=arbitrary_metadata_keys,json=arbitraryMetadataKeys,proto3" json:"arbitrary_metadata_keys,omitempty"`
	// OPTIONAL.
	// A lock_id: should the reference be locked, the stored
	// lock_id MUST be equal to the given value.
	LockId               string   `protobuf:"bytes,4,opt,name=lock_id,json=lockId,proto3" json:"lock_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UnsetArbitraryMetadataRequest) Reset()         { *m = UnsetArbitraryMetadataRequest{} }
func (m *UnsetArbitraryMetadataRequest) String() string { return proto.CompactTextString(m) }
func (*UnsetArbitraryMetadataRequest) ProtoMessage()    {}
func (*UnsetArbitraryMetadataRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{52}
}

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

var xxx_messageInfo_UnsetArbitraryMetadataRequest proto.InternalMessageInfo

func (m *UnsetArbitraryMetadataRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *UnsetArbitraryMetadataRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *UnsetArbitraryMetadataRequest) GetArbitraryMetadataKeys() []string {
	if m != nil {
		return m.ArbitraryMetadataKeys
	}
	return nil
}

func (m *UnsetArbitraryMetadataRequest) GetLockId() string {
	if m != nil {
		return m.LockId
	}
	return ""
}

type UnsetArbitraryMetadataResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *UnsetArbitraryMetadataResponse) Reset()         { *m = UnsetArbitraryMetadataResponse{} }
func (m *UnsetArbitraryMetadataResponse) String() string { return proto.CompactTextString(m) }
func (*UnsetArbitraryMetadataResponse) ProtoMessage()    {}
func (*UnsetArbitraryMetadataResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{53}
}

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

var xxx_messageInfo_UnsetArbitraryMetadataResponse proto.InternalMessageInfo

func (m *UnsetArbitraryMetadataResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *UnsetArbitraryMetadataResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type SetLockRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference on which the lock should be set,
	// if no lock is present.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// REQUIRED.
	// The lock metadata.
	Lock                 *Lock    `protobuf:"bytes,3,opt,name=lock,proto3" json:"lock,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *SetLockRequest) Reset()         { *m = SetLockRequest{} }
func (m *SetLockRequest) String() string { return proto.CompactTextString(m) }
func (*SetLockRequest) ProtoMessage()    {}
func (*SetLockRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{54}
}

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

var xxx_messageInfo_SetLockRequest proto.InternalMessageInfo

func (m *SetLockRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *SetLockRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *SetLockRequest) GetLock() *Lock {
	if m != nil {
		return m.Lock
	}
	return nil
}

type SetLockResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *SetLockResponse) Reset()         { *m = SetLockResponse{} }
func (m *SetLockResponse) String() string { return proto.CompactTextString(m) }
func (*SetLockResponse) ProtoMessage()    {}
func (*SetLockResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{55}
}

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

var xxx_messageInfo_SetLockResponse proto.InternalMessageInfo

func (m *SetLockResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *SetLockResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type GetLockRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference the lock is associated to.
	Ref                  *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *GetLockRequest) Reset()         { *m = GetLockRequest{} }
func (m *GetLockRequest) String() string { return proto.CompactTextString(m) }
func (*GetLockRequest) ProtoMessage()    {}
func (*GetLockRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{56}
}

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

var xxx_messageInfo_GetLockRequest proto.InternalMessageInfo

func (m *GetLockRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *GetLockRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

type GetLockResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The lock metadata
	Lock                 *Lock    `protobuf:"bytes,3,opt,name=lock,proto3" json:"lock,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetLockResponse) Reset()         { *m = GetLockResponse{} }
func (m *GetLockResponse) String() string { return proto.CompactTextString(m) }
func (*GetLockResponse) ProtoMessage()    {}
func (*GetLockResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{57}
}

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

var xxx_messageInfo_GetLockResponse proto.InternalMessageInfo

func (m *GetLockResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *GetLockResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *GetLockResponse) GetLock() *Lock {
	if m != nil {
		return m.Lock
	}
	return nil
}

type RefreshLockRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference on which the lock should be refreshed.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// REQUIRED.
	// The lock metadata.
	Lock *Lock `protobuf:"bytes,3,opt,name=lock,proto3" json:"lock,omitempty"`
	// OPTIONAL.
	// The existing lock id.
	// This can be used to refresh the existing lock with a new lock while
	// checking if the lock holder sends the correct existing lock_id
	ExistingLockId       string   `protobuf:"bytes,4,opt,name=existing_lock_id,json=existingLockId,proto3" json:"existing_lock_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *RefreshLockRequest) Reset()         { *m = RefreshLockRequest{} }
func (m *RefreshLockRequest) String() string { return proto.CompactTextString(m) }
func (*RefreshLockRequest) ProtoMessage()    {}
func (*RefreshLockRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{58}
}

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

var xxx_messageInfo_RefreshLockRequest proto.InternalMessageInfo

func (m *RefreshLockRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *RefreshLockRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *RefreshLockRequest) GetLock() *Lock {
	if m != nil {
		return m.Lock
	}
	return nil
}

func (m *RefreshLockRequest) GetExistingLockId() string {
	if m != nil {
		return m.ExistingLockId
	}
	return ""
}

type RefreshLockResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *RefreshLockResponse) Reset()         { *m = RefreshLockResponse{} }
func (m *RefreshLockResponse) String() string { return proto.CompactTextString(m) }
func (*RefreshLockResponse) ProtoMessage()    {}
func (*RefreshLockResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{59}
}

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

var xxx_messageInfo_RefreshLockResponse proto.InternalMessageInfo

func (m *RefreshLockResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *RefreshLockResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type UnlockRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The reference the lock is associated to.
	Ref *Reference `protobuf:"bytes,2,opt,name=ref,proto3" json:"ref,omitempty"`
	// REQUIRED.
	// The lock metadata.
	Lock                 *Lock    `protobuf:"bytes,3,opt,name=lock,proto3" json:"lock,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UnlockRequest) Reset()         { *m = UnlockRequest{} }
func (m *UnlockRequest) String() string { return proto.CompactTextString(m) }
func (*UnlockRequest) ProtoMessage()    {}
func (*UnlockRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{60}
}

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

var xxx_messageInfo_UnlockRequest proto.InternalMessageInfo

func (m *UnlockRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *UnlockRequest) GetRef() *Reference {
	if m != nil {
		return m.Ref
	}
	return nil
}

func (m *UnlockRequest) GetLock() *Lock {
	if m != nil {
		return m.Lock
	}
	return nil
}

type UnlockResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *UnlockResponse) Reset()         { *m = UnlockResponse{} }
func (m *UnlockResponse) String() string { return proto.CompactTextString(m) }
func (*UnlockResponse) ProtoMessage()    {}
func (*UnlockResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{61}
}

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

var xxx_messageInfo_UnlockResponse proto.InternalMessageInfo

func (m *UnlockResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *UnlockResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type CreateHomeRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// OPTIONAL.
	Quota                *Quota   `protobuf:"bytes,2,opt,name=quota,proto3" json:"quota,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *CreateHomeRequest) Reset()         { *m = CreateHomeRequest{} }
func (m *CreateHomeRequest) String() string { return proto.CompactTextString(m) }
func (*CreateHomeRequest) ProtoMessage()    {}
func (*CreateHomeRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{62}
}

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

var xxx_messageInfo_CreateHomeRequest proto.InternalMessageInfo

func (m *CreateHomeRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *CreateHomeRequest) GetQuota() *Quota {
	if m != nil {
		return m.Quota
	}
	return nil
}

type CreateHomeResponse struct {
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
	// OPTIONAL.
	// Opaque information.
	Opaque               *v1beta1.Opaque `protobuf:"bytes,2,opt,name=opaque,proto3" json:"opaque,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *CreateHomeResponse) Reset()         { *m = CreateHomeResponse{} }
func (m *CreateHomeResponse) String() string { return proto.CompactTextString(m) }
func (*CreateHomeResponse) ProtoMessage()    {}
func (*CreateHomeResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{63}
}

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

var xxx_messageInfo_CreateHomeResponse proto.InternalMessageInfo

func (m *CreateHomeResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *CreateHomeResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

type CreateStorageSpaceRequest struct {
	// OPTIONAL.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	Owner *v1beta12.User `protobuf:"bytes,2,opt,name=owner,proto3" json:"owner,omitempty"`
	// OPTIONAL.
	// Could be 'home', 'share', 'project', 'space'...
	Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"`
	// OPTIONAL.
	// User readable name of the storage space.
	Name string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"`
	// OPTIONAL.
	Quota                *Quota   `protobuf:"bytes,5,opt,name=quota,proto3" json:"quota,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *CreateStorageSpaceRequest) Reset()         { *m = CreateStorageSpaceRequest{} }
func (m *CreateStorageSpaceRequest) String() string { return proto.CompactTextString(m) }
func (*CreateStorageSpaceRequest) ProtoMessage()    {}
func (*CreateStorageSpaceRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{64}
}

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

var xxx_messageInfo_CreateStorageSpaceRequest proto.InternalMessageInfo

func (m *CreateStorageSpaceRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *CreateStorageSpaceRequest) GetOwner() *v1beta12.User {
	if m != nil {
		return m.Owner
	}
	return nil
}

func (m *CreateStorageSpaceRequest) GetType() string {
	if m != nil {
		return m.Type
	}
	return ""
}

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

func (m *CreateStorageSpaceRequest) GetQuota() *Quota {
	if m != nil {
		return m.Quota
	}
	return nil
}

type CreateStorageSpaceResponse struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"`
	// REQUIRED.
	// The created storage space.
	StorageSpace         *StorageSpace `protobuf:"bytes,3,opt,name=storage_space,json=storageSpace,proto3" json:"storage_space,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *CreateStorageSpaceResponse) Reset()         { *m = CreateStorageSpaceResponse{} }
func (m *CreateStorageSpaceResponse) String() string { return proto.CompactTextString(m) }
func (*CreateStorageSpaceResponse) ProtoMessage()    {}
func (*CreateStorageSpaceResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{65}
}

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

var xxx_messageInfo_CreateStorageSpaceResponse proto.InternalMessageInfo

func (m *CreateStorageSpaceResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *CreateStorageSpaceResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *CreateStorageSpaceResponse) GetStorageSpace() *StorageSpace {
	if m != nil {
		return m.StorageSpace
	}
	return nil
}

type ListStorageSpacesRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// OPTIONAL.
	// The list of filters to apply if any.
	Filters []*ListStorageSpacesRequest_Filter `protobuf:"bytes,2,rep,name=filters,proto3" json:"filters,omitempty"`
	// OPTIONAL.
	// The field mask applies to the resource. For the `FieldMask` definition,
	// see https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
	FieldMask *field_mask.FieldMask `protobuf:"bytes,3,opt,name=field_mask,json=fieldMask,proto3" json:"field_mask,omitempty"`
	// OPTIONAL.
	// Clients use this field to specify the maximum number of results to be returned by the server.
	// The server may further constrain the maximum number of results returned in a single page.
	// If the page_size is 0, the server will decide the number of results to be returned.
	// see https://cloud.google.com/apis/design/design_patterns#list_pagination
	PageSize int32 `protobuf:"varint,4,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// OPTIONAL.
	// The client uses this field to request a specific page of the list results.
	PageToken            string   `protobuf:"bytes,5,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListStorageSpacesRequest) Reset()         { *m = ListStorageSpacesRequest{} }
func (m *ListStorageSpacesRequest) String() string { return proto.CompactTextString(m) }
func (*ListStorageSpacesRequest) ProtoMessage()    {}
func (*ListStorageSpacesRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{66}
}

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

var xxx_messageInfo_ListStorageSpacesRequest proto.InternalMessageInfo

func (m *ListStorageSpacesRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *ListStorageSpacesRequest) GetFilters() []*ListStorageSpacesRequest_Filter {
	if m != nil {
		return m.Filters
	}
	return nil
}

func (m *ListStorageSpacesRequest) GetFieldMask() *field_mask.FieldMask {
	if m != nil {
		return m.FieldMask
	}
	return nil
}

func (m *ListStorageSpacesRequest) GetPageSize() int32 {
	if m != nil {
		return m.PageSize
	}
	return 0
}

func (m *ListStorageSpacesRequest) GetPageToken() string {
	if m != nil {
		return m.PageToken
	}
	return ""
}

// Represents a filter to apply to the request.
type ListStorageSpacesRequest_Filter struct {
	// REQUIRED.
	Type ListStorageSpacesRequest_Filter_Type `protobuf:"varint,1,opt,name=type,proto3,enum=cs3.storage.provider.v1beta1.ListStorageSpacesRequest_Filter_Type" json:"type,omitempty"`
	// Types that are valid to be assigned to Term:
	//	*ListStorageSpacesRequest_Filter_Id
	//	*ListStorageSpacesRequest_Filter_Owner
	//	*ListStorageSpacesRequest_Filter_SpaceType
	//	*ListStorageSpacesRequest_Filter_Path
	//	*ListStorageSpacesRequest_Filter_User
	Term                 isListStorageSpacesRequest_Filter_Term `protobuf_oneof:"term"`
	XXX_NoUnkeyedLiteral struct{}                               `json:"-"`
	XXX_unrecognized     []byte                                 `json:"-"`
	XXX_sizecache        int32                                  `json:"-"`
}

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

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

var xxx_messageInfo_ListStorageSpacesRequest_Filter proto.InternalMessageInfo

func (m *ListStorageSpacesRequest_Filter) GetType() ListStorageSpacesRequest_Filter_Type {
	if m != nil {
		return m.Type
	}
	return ListStorageSpacesRequest_Filter_TYPE_INVALID
}

type isListStorageSpacesRequest_Filter_Term interface {
	isListStorageSpacesRequest_Filter_Term()
}

type ListStorageSpacesRequest_Filter_Id struct {
	Id *StorageSpaceId `protobuf:"bytes,2,opt,name=id,proto3,oneof"`
}

type ListStorageSpacesRequest_Filter_Owner struct {
	Owner *v1beta12.UserId `protobuf:"bytes,3,opt,name=owner,proto3,oneof"`
}

type ListStorageSpacesRequest_Filter_SpaceType struct {
	SpaceType string `protobuf:"bytes,4,opt,name=space_type,json=spaceType,proto3,oneof"`
}

type ListStorageSpacesRequest_Filter_Path struct {
	Path string `protobuf:"bytes,5,opt,name=path,proto3,oneof"`
}

type ListStorageSpacesRequest_Filter_User struct {
	User *v1beta12.UserId `protobuf:"bytes,6,opt,name=user,proto3,oneof"`
}

func (*ListStorageSpacesRequest_Filter_Id) isListStorageSpacesRequest_Filter_Term() {}

func (*ListStorageSpacesRequest_Filter_Owner) isListStorageSpacesRequest_Filter_Term() {}

func (*ListStorageSpacesRequest_Filter_SpaceType) isListStorageSpacesRequest_Filter_Term() {}

func (*ListStorageSpacesRequest_Filter_Path) isListStorageSpacesRequest_Filter_Term() {}

func (*ListStorageSpacesRequest_Filter_User) isListStorageSpacesRequest_Filter_Term() {}

func (m *ListStorageSpacesRequest_Filter) GetTerm() isListStorageSpacesRequest_Filter_Term {
	if m != nil {
		return m.Term
	}
	return nil
}

func (m *ListStorageSpacesRequest_Filter) GetId() *StorageSpaceId {
	if x, ok := m.GetTerm().(*ListStorageSpacesRequest_Filter_Id); ok {
		return x.Id
	}
	return nil
}

func (m *ListStorageSpacesRequest_Filter) GetOwner() *v1beta12.UserId {
	if x, ok := m.GetTerm().(*ListStorageSpacesRequest_Filter_Owner); ok {
		return x.Owner
	}
	return nil
}

func (m *ListStorageSpacesRequest_Filter) GetSpaceType() string {
	if x, ok := m.GetTerm().(*ListStorageSpacesRequest_Filter_SpaceType); ok {
		return x.SpaceType
	}
	return ""
}

func (m *ListStorageSpacesRequest_Filter) GetPath() string {
	if x, ok := m.GetTerm().(*ListStorageSpacesRequest_Filter_Path); ok {
		return x.Path
	}
	return ""
}

func (m *ListStorageSpacesRequest_Filter) GetUser() *v1beta12.UserId {
	if x, ok := m.GetTerm().(*ListStorageSpacesRequest_Filter_User); ok {
		return x.User
	}
	return nil
}

// XXX_OneofWrappers is for the internal use of the proto package.
func (*ListStorageSpacesRequest_Filter) XXX_OneofWrappers() []interface{} {
	return []interface{}{
		(*ListStorageSpacesRequest_Filter_Id)(nil),
		(*ListStorageSpacesRequest_Filter_Owner)(nil),
		(*ListStorageSpacesRequest_Filter_SpaceType)(nil),
		(*ListStorageSpacesRequest_Filter_Path)(nil),
		(*ListStorageSpacesRequest_Filter_User)(nil),
	}
}

type ListStorageSpacesResponse struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"`
	// REQUIRED.
	StorageSpaces []*StorageSpace `protobuf:"bytes,3,rep,name=storage_spaces,json=storageSpaces,proto3" json:"storage_spaces,omitempty"`
	// OPTIONAL.
	// This field represents the pagination token to retrieve the next page of results.
	// If the value is "", it means no further results for the request.
	// see https://cloud.google.com/apis/design/design_patterns#list_pagination
	NextPageToken        string   `protobuf:"bytes,4,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListStorageSpacesResponse) Reset()         { *m = ListStorageSpacesResponse{} }
func (m *ListStorageSpacesResponse) String() string { return proto.CompactTextString(m) }
func (*ListStorageSpacesResponse) ProtoMessage()    {}
func (*ListStorageSpacesResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{67}
}

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

var xxx_messageInfo_ListStorageSpacesResponse proto.InternalMessageInfo

func (m *ListStorageSpacesResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *ListStorageSpacesResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *ListStorageSpacesResponse) GetStorageSpaces() []*StorageSpace {
	if m != nil {
		return m.StorageSpaces
	}
	return nil
}

func (m *ListStorageSpacesResponse) GetNextPageToken() string {
	if m != nil {
		return m.NextPageToken
	}
	return ""
}

type UpdateStorageSpaceRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	StorageSpace         *StorageSpace `protobuf:"bytes,2,opt,name=storage_space,json=storageSpace,proto3" json:"storage_space,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *UpdateStorageSpaceRequest) Reset()         { *m = UpdateStorageSpaceRequest{} }
func (m *UpdateStorageSpaceRequest) String() string { return proto.CompactTextString(m) }
func (*UpdateStorageSpaceRequest) ProtoMessage()    {}
func (*UpdateStorageSpaceRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{68}
}

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

var xxx_messageInfo_UpdateStorageSpaceRequest proto.InternalMessageInfo

func (m *UpdateStorageSpaceRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *UpdateStorageSpaceRequest) GetStorageSpace() *StorageSpace {
	if m != nil {
		return m.StorageSpace
	}
	return nil
}

type UpdateStorageSpaceResponse struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The response status.
	Status *v1beta11.Status `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"`
	// REQUIRED.
	// The updated storage space.
	StorageSpace         *StorageSpace `protobuf:"bytes,3,opt,name=storage_space,json=storageSpace,proto3" json:"storage_space,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *UpdateStorageSpaceResponse) Reset()         { *m = UpdateStorageSpaceResponse{} }
func (m *UpdateStorageSpaceResponse) String() string { return proto.CompactTextString(m) }
func (*UpdateStorageSpaceResponse) ProtoMessage()    {}
func (*UpdateStorageSpaceResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{69}
}

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

var xxx_messageInfo_UpdateStorageSpaceResponse proto.InternalMessageInfo

func (m *UpdateStorageSpaceResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *UpdateStorageSpaceResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func (m *UpdateStorageSpaceResponse) GetStorageSpace() *StorageSpace {
	if m != nil {
		return m.StorageSpace
	}
	return nil
}

type DeleteStorageSpaceRequest struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	Id                   *StorageSpaceId `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *DeleteStorageSpaceRequest) Reset()         { *m = DeleteStorageSpaceRequest{} }
func (m *DeleteStorageSpaceRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteStorageSpaceRequest) ProtoMessage()    {}
func (*DeleteStorageSpaceRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{70}
}

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

var xxx_messageInfo_DeleteStorageSpaceRequest proto.InternalMessageInfo

func (m *DeleteStorageSpaceRequest) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *DeleteStorageSpaceRequest) GetId() *StorageSpaceId {
	if m != nil {
		return m.Id
	}
	return nil
}

type DeleteStorageSpaceResponse struct {
	// OPTIONAL.
	// Opaque information.
	Opaque *v1beta1.Opaque `protobuf:"bytes,1,opt,name=opaque,proto3" json:"opaque,omitempty"`
	// REQUIRED.
	// The response status.
	Status               *v1beta11.Status `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *DeleteStorageSpaceResponse) Reset()         { *m = DeleteStorageSpaceResponse{} }
func (m *DeleteStorageSpaceResponse) String() string { return proto.CompactTextString(m) }
func (*DeleteStorageSpaceResponse) ProtoMessage()    {}
func (*DeleteStorageSpaceResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_d1968a7258bd7add, []int{71}
}

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

var xxx_messageInfo_DeleteStorageSpaceResponse proto.InternalMessageInfo

func (m *DeleteStorageSpaceResponse) GetOpaque() *v1beta1.Opaque {
	if m != nil {
		return m.Opaque
	}
	return nil
}

func (m *DeleteStorageSpaceResponse) GetStatus() *v1beta11.Status {
	if m != nil {
		return m.Status
	}
	return nil
}

func init() {
	proto.RegisterEnum("cs3.storage.provider.v1beta1.ListStorageSpacesRequest_Filter_Type", ListStorageSpacesRequest_Filter_Type_name, ListStorageSpacesRequest_Filter_Type_value)
	proto.RegisterType((*GetHomeRequest)(nil), "cs3.storage.provider.v1beta1.GetHomeRequest")
	proto.RegisterType((*GetHomeResponse)(nil), "cs3.storage.provider.v1beta1.GetHomeResponse")
	proto.RegisterType((*AddGrantRequest)(nil), "cs3.storage.provider.v1beta1.AddGrantRequest")
	proto.RegisterType((*AddGrantResponse)(nil), "cs3.storage.provider.v1beta1.AddGrantResponse")
	proto.RegisterType((*DenyGrantRequest)(nil), "cs3.storage.provider.v1beta1.DenyGrantRequest")
	proto.RegisterType((*DenyGrantResponse)(nil), "cs3.storage.provider.v1beta1.DenyGrantResponse")
	proto.RegisterType((*CreateContainerRequest)(nil), "cs3.storage.provider.v1beta1.CreateContainerRequest")
	proto.RegisterType((*CreateContainerResponse)(nil), "cs3.storage.provider.v1beta1.CreateContainerResponse")
	proto.RegisterType((*TouchFileRequest)(nil), "cs3.storage.provider.v1beta1.TouchFileRequest")
	proto.RegisterType((*TouchFileResponse)(nil), "cs3.storage.provider.v1beta1.TouchFileResponse")
	proto.RegisterType((*DeleteRequest)(nil), "cs3.storage.provider.v1beta1.DeleteRequest")
	proto.RegisterType((*DeleteResponse)(nil), "cs3.storage.provider.v1beta1.DeleteResponse")
	proto.RegisterType((*GetPathRequest)(nil), "cs3.storage.provider.v1beta1.GetPathRequest")
	proto.RegisterType((*GetPathResponse)(nil), "cs3.storage.provider.v1beta1.GetPathResponse")
	proto.RegisterType((*GetQuotaRequest)(nil), "cs3.storage.provider.v1beta1.GetQuotaRequest")
	proto.RegisterType((*GetQuotaResponse)(nil), "cs3.storage.provider.v1beta1.GetQuotaResponse")
	proto.RegisterType((*InitiateFileUploadRequest)(nil), "cs3.storage.provider.v1beta1.InitiateFileUploadRequest")
	proto.RegisterType((*InitiateFileUploadResponse)(nil), "cs3.storage.provider.v1beta1.InitiateFileUploadResponse")
	proto.RegisterType((*InitiateFileDownloadRequest)(nil), "cs3.storage.provider.v1beta1.InitiateFileDownloadRequest")
	proto.RegisterType((*InitiateFileDownloadResponse)(nil), "cs3.storage.provider.v1beta1.InitiateFileDownloadResponse")
	proto.RegisterType((*ListGrantsRequest)(nil), "cs3.storage.provider.v1beta1.ListGrantsRequest")
	proto.RegisterType((*ListGrantsResponse)(nil), "cs3.storage.provider.v1beta1.ListGrantsResponse")
	proto.RegisterType((*ListContainerStreamRequest)(nil), "cs3.storage.provider.v1beta1.ListContainerStreamRequest")
	proto.RegisterType((*ListContainerStreamResponse)(nil), "cs3.storage.provider.v1beta1.ListContainerStreamResponse")
	proto.RegisterType((*ListContainerRequest)(nil), "cs3.storage.provider.v1beta1.ListContainerRequest")
	proto.RegisterType((*ListContainerResponse)(nil), "cs3.storage.provider.v1beta1.ListContainerResponse")
	proto.RegisterType((*ListFileVersionsRequest)(nil), "cs3.storage.provider.v1beta1.ListFileVersionsRequest")
	proto.RegisterType((*ListFileVersionsResponse)(nil), "cs3.storage.provider.v1beta1.ListFileVersionsResponse")
	proto.RegisterType((*ListRecycleRequest)(nil), "cs3.storage.provider.v1beta1.ListRecycleRequest")
	proto.RegisterType((*ListRecycleResponse)(nil), "cs3.storage.provider.v1beta1.ListRecycleResponse")
	proto.RegisterType((*ListRecycleStreamRequest)(nil), "cs3.storage.provider.v1beta1.ListRecycleStreamRequest")
	proto.RegisterType((*ListRecycleStreamResponse)(nil), "cs3.storage.provider.v1beta1.ListRecycleStreamResponse")
	proto.RegisterType((*MoveRequest)(nil), "cs3.storage.provider.v1beta1.MoveRequest")
	proto.RegisterType((*MoveResponse)(nil), "cs3.storage.provider.v1beta1.MoveResponse")
	proto.RegisterType((*PurgeRecycleRequest)(nil), "cs3.storage.provider.v1beta1.PurgeRecycleRequest")
	proto.RegisterType((*PurgeRecycleResponse)(nil), "cs3.storage.provider.v1beta1.PurgeRecycleResponse")
	proto.RegisterType((*RestoreFileVersionRequest)(nil), "cs3.storage.provider.v1beta1.RestoreFileVersionRequest")
	proto.RegisterType((*RestoreFileVersionResponse)(nil), "cs3.storage.provider.v1beta1.RestoreFileVersionResponse")
	proto.RegisterType((*RestoreRecycleItemRequest)(nil), "cs3.storage.provider.v1beta1.RestoreRecycleItemRequest")
	proto.RegisterType((*RestoreRecycleItemResponse)(nil), "cs3.storage.provider.v1beta1.RestoreRecycleItemResponse")
	proto.RegisterType((*RemoveGrantRequest)(nil), "cs3.storage.provider.v1beta1.RemoveGrantRequest")
	proto.RegisterType((*RemoveGrantResponse)(nil), "cs3.storage.provider.v1beta1.RemoveGrantResponse")
	proto.RegisterType((*StatRequest)(nil), "cs3.storage.provider.v1beta1.StatRequest")
	proto.RegisterType((*StatResponse)(nil), "cs3.storage.provider.v1beta1.StatResponse")
	proto.RegisterType((*UpdateGrantRequest)(nil), "cs3.storage.provider.v1beta1.UpdateGrantRequest")
	proto.RegisterType((*UpdateGrantResponse)(nil), "cs3.storage.provider.v1beta1.UpdateGrantResponse")
	proto.RegisterType((*CreateSymlinkRequest)(nil), "cs3.storage.provider.v1beta1.CreateSymlinkRequest")
	proto.RegisterType((*CreateSymlinkResponse)(nil), "cs3.storage.provider.v1beta1.CreateSymlinkResponse")
	proto.RegisterType((*CreateReferenceRequest)(nil), "cs3.storage.provider.v1beta1.CreateReferenceRequest")
	proto.RegisterType((*CreateReferenceResponse)(nil), "cs3.storage.provider.v1beta1.CreateReferenceResponse")
	proto.RegisterType((*SetArbitraryMetadataRequest)(nil), "cs3.storage.provider.v1beta1.SetArbitraryMetadataRequest")
	proto.RegisterType((*SetArbitraryMetadataResponse)(nil), "cs3.storage.provider.v1beta1.SetArbitraryMetadataResponse")
	proto.RegisterType((*UnsetArbitraryMetadataRequest)(nil), "cs3.storage.provider.v1beta1.UnsetArbitraryMetadataRequest")
	proto.RegisterType((*UnsetArbitraryMetadataResponse)(nil), "cs3.storage.provider.v1beta1.UnsetArbitraryMetadataResponse")
	proto.RegisterType((*SetLockRequest)(nil), "cs3.storage.provider.v1beta1.SetLockRequest")
	proto.RegisterType((*SetLockResponse)(nil), "cs3.storage.provider.v1beta1.SetLockResponse")
	proto.RegisterType((*GetLockRequest)(nil), "cs3.storage.provider.v1beta1.GetLockRequest")
	proto.RegisterType((*GetLockResponse)(nil), "cs3.storage.provider.v1beta1.GetLockResponse")
	proto.RegisterType((*RefreshLockRequest)(nil), "cs3.storage.provider.v1beta1.RefreshLockRequest")
	proto.RegisterType((*RefreshLockResponse)(nil), "cs3.storage.provider.v1beta1.RefreshLockResponse")
	proto.RegisterType((*UnlockRequest)(nil), "cs3.storage.provider.v1beta1.UnlockRequest")
	proto.RegisterType((*UnlockResponse)(nil), "cs3.storage.provider.v1beta1.UnlockResponse")
	proto.RegisterType((*CreateHomeRequest)(nil), "cs3.storage.provider.v1beta1.CreateHomeRequest")
	proto.RegisterType((*CreateHomeResponse)(nil), "cs3.storage.provider.v1beta1.CreateHomeResponse")
	proto.RegisterType((*CreateStorageSpaceRequest)(nil), "cs3.storage.provider.v1beta1.CreateStorageSpaceRequest")
	proto.RegisterType((*CreateStorageSpaceResponse)(nil), "cs3.storage.provider.v1beta1.CreateStorageSpaceResponse")
	proto.RegisterType((*ListStorageSpacesRequest)(nil), "cs3.storage.provider.v1beta1.ListStorageSpacesRequest")
	proto.RegisterType((*ListStorageSpacesRequest_Filter)(nil), "cs3.storage.provider.v1beta1.ListStorageSpacesRequest.Filter")
	proto.RegisterType((*ListStorageSpacesResponse)(nil), "cs3.storage.provider.v1beta1.ListStorageSpacesResponse")
	proto.RegisterType((*UpdateStorageSpaceRequest)(nil), "cs3.storage.provider.v1beta1.UpdateStorageSpaceRequest")
	proto.RegisterType((*UpdateStorageSpaceResponse)(nil), "cs3.storage.provider.v1beta1.UpdateStorageSpaceResponse")
	proto.RegisterType((*DeleteStorageSpaceRequest)(nil), "cs3.storage.provider.v1beta1.DeleteStorageSpaceRequest")
	proto.RegisterType((*DeleteStorageSpaceResponse)(nil), "cs3.storage.provider.v1beta1.DeleteStorageSpaceResponse")
}

func init() {
	proto.RegisterFile("cs3/storage/provider/v1beta1/provider_api.proto", fileDescriptor_d1968a7258bd7add)
}

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

// ProviderAPIClient is the client API for ProviderAPI service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type ProviderAPIClient interface {
	// Adds a new grant for the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist
	AddGrant(ctx context.Context, in *AddGrantRequest, opts ...grpc.CallOption) (*AddGrantResponse, error)
	// Creates a new resource of type container.
	// MUST return CODE_FAILED_PRECONDITION if the container
	// cannot be created at the specified reference.
	CreateContainer(ctx context.Context, in *CreateContainerRequest, opts ...grpc.CallOption) (*CreateContainerResponse, error)
	// Creates a new resource of type file.
	// MUST return CODE_FAILED_PRECONDITION if the file
	// cannot be created at the specified reference.
	TouchFile(ctx context.Context, in *TouchFileRequest, opts ...grpc.CallOption) (*TouchFileResponse, error)
	// Deletes a resource.
	// If a resource specifies the non-empty container (directory, ...),
	// then the entire directory is deleted recursively.
	// If a resource specifies a reference or symlink type, only the reference is removed (not the target).
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*DeleteResponse, error)
	// Denies access to the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist
	DenyGrant(ctx context.Context, in *DenyGrantRequest, opts ...grpc.CallOption) (*DenyGrantResponse, error)
	// Returns the path reference for
	// the provided resource id reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist
	GetPath(ctx context.Context, in *GetPathRequest, opts ...grpc.CallOption) (*GetPathResponse, error)
	// Returns the quota available under the provided
	// reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist
	// MUST return CODE_RESOURCE_EXHAUSTED on exceeded quota limits.
	GetQuota(ctx context.Context, in *GetQuotaRequest, opts ...grpc.CallOption) (*GetQuotaResponse, error)
	// Initiates the download of a file using an
	// out-of-band data transfer mechanism.
	InitiateFileDownload(ctx context.Context, in *InitiateFileDownloadRequest, opts ...grpc.CallOption) (*InitiateFileDownloadResponse, error)
	// Initiates the upload of a file using an
	// out-of-band data transfer mechanism.
	InitiateFileUpload(ctx context.Context, in *InitiateFileUploadRequest, opts ...grpc.CallOption) (*InitiateFileUploadResponse, error)
	// Returns the list of grants for the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exists.
	ListGrants(ctx context.Context, in *ListGrantsRequest, opts ...grpc.CallOption) (*ListGrantsResponse, error)
	// Returns a stream of resource informations
	// for the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exists.
	ListContainerStream(ctx context.Context, in *ListContainerStreamRequest, opts ...grpc.CallOption) (ProviderAPI_ListContainerStreamClient, error)
	// Returns a list of resource information
	// for the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exists.
	ListContainer(ctx context.Context, in *ListContainerRequest, opts ...grpc.CallOption) (*ListContainerResponse, error)
	// Returns a list of the versions for a resource of
	// type file at the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	// MUST return CODE_OK and MUST return an empty list if no versions are available.
	// TODO: What code if resource not of type file?
	ListFileVersions(ctx context.Context, in *ListFileVersionsRequest, opts ...grpc.CallOption) (*ListFileVersionsResponse, error)
	// Returns a stream of recycle items for this storage provider.
	ListRecycleStream(ctx context.Context, in *ListRecycleStreamRequest, opts ...grpc.CallOption) (ProviderAPI_ListRecycleStreamClient, error)
	// Returns a list of recycle items for this storage provider.
	// MUST return CODE_OK and MUST return an empty list if no recycle items are available.
	ListRecycle(ctx context.Context, in *ListRecycleRequest, opts ...grpc.CallOption) (*ListRecycleResponse, error)
	// Moves a resource from one reference to another.
	// MUST return CODE_NOT_FOUND if any of the references do not exist.
	// MUST return CODE_FAILED_PRECONDITION if the source reference
	// cannot be moved to the destination reference.
	Move(ctx context.Context, in *MoveRequest, opts ...grpc.CallOption) (*MoveResponse, error)
	// Removes a grant for the provided reference.
	// This is recursive and atomic for directories. Does not follow references.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	// MUST return CODE_NOT_FOUND if grant does not exist.
	RemoveGrant(ctx context.Context, in *RemoveGrantRequest, opts ...grpc.CallOption) (*RemoveGrantResponse, error)
	// Permanently removes a recycle item from the recycle.
	// This operation is irrevocable.
	// MUST return CODE_NOT_FOUND if the recycle item id does not exist.
	PurgeRecycle(ctx context.Context, in *PurgeRecycleRequest, opts ...grpc.CallOption) (*PurgeRecycleResponse, error)
	// Restores a file version for the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	// MUST return CODE_NOT_FOUND if the version does not exist.
	RestoreFileVersion(ctx context.Context, in *RestoreFileVersionRequest, opts ...grpc.CallOption) (*RestoreFileVersionResponse, error)
	// Restores a recycle item from the recycle.
	// MUST return CODE_NOT_FOUND if the recycle item id does not exist.
	// MUST return CODE_FAILED_PRECONDITION if the restore_path is non-empty
	// and the recycle item cannot be restored to the restore_path.
	RestoreRecycleItem(ctx context.Context, in *RestoreRecycleItemRequest, opts ...grpc.CallOption) (*RestoreRecycleItemResponse, error)
	// Returns the resource information at the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	Stat(ctx context.Context, in *StatRequest, opts ...grpc.CallOption) (*StatResponse, error)
	// Updates an ACL for the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	// MUST return CODE_FAILED_PRECONDITION if the acl does not exist.
	UpdateGrant(ctx context.Context, in *UpdateGrantRequest, opts ...grpc.CallOption) (*UpdateGrantResponse, error)
	// Creates a symlink to another resource.
	CreateSymlink(ctx context.Context, in *CreateSymlinkRequest, opts ...grpc.CallOption) (*CreateSymlinkResponse, error)
	// Creates a reference to another resource in the same cluster or another domain (OCM shares).
	// The references resource can be accessed by the protocol specificied in the request message.
	CreateReference(ctx context.Context, in *CreateReferenceRequest, opts ...grpc.CallOption) (*CreateReferenceResponse, error)
	// Sets arbitrary metadata into a storage resource.
	// Arbitrary metadata is returned in a cs3.storageprovider.v1beta1.ResourceInfo.
	SetArbitraryMetadata(ctx context.Context, in *SetArbitraryMetadataRequest, opts ...grpc.CallOption) (*SetArbitraryMetadataResponse, error)
	// Unsets arbitrary metdata into a storage resource.
	// Arbitrary metadata is returned in a cs3.storageprovider.v1beta1.ResourceInfo.
	UnsetArbitraryMetadata(ctx context.Context, in *UnsetArbitraryMetadataRequest, opts ...grpc.CallOption) (*UnsetArbitraryMetadataResponse, error)
	// Locks a storage resource. Note that if the resource is a container,
	// MAY return CODE_NOT_IMPLEMENTED as the behavior is yet to be defined at this stage.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	// MUST return CODE_FAILED_PRECONDITION if the reference is already locked.
	// In addition, the implementation MUST ensure atomicity when multiple users
	// concurrently attempt to set a lock.
	// The caller MUST have write permissions on the resource.
	SetLock(ctx context.Context, in *SetLockRequest, opts ...grpc.CallOption) (*SetLockResponse, error)
	// Gets the lock metadata of a storage resource.
	// MUST return CODE_NOT_FOUND if the reference does not exist or is not locked.
	// The caller MUST have read permissions on the resource.
	GetLock(ctx context.Context, in *GetLockRequest, opts ...grpc.CallOption) (*GetLockResponse, error)
	// Refreshes the lock metadata of a storage resource.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	// MUST return CODE_PRECONDITION_FALIED if the reference is not locked
	// or if the caller does not hold the lock.
	// The caller MUST have write permissions on the resource.
	RefreshLock(ctx context.Context, in *RefreshLockRequest, opts ...grpc.CallOption) (*RefreshLockResponse, error)
	// Unlocks a storage resource.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	// MUST return CODE_FAILED_PRECONDITION if the reference is not locked
	// or if the caller does not hold the lock.
	// The caller MUST have write permissions on the resource.
	Unlock(ctx context.Context, in *UnlockRequest, opts ...grpc.CallOption) (*UnlockResponse, error)
	// Creates the home directory for a user.
	CreateHome(ctx context.Context, in *CreateHomeRequest, opts ...grpc.CallOption) (*CreateHomeResponse, error)
	// Gets the home path for the user.
	GetHome(ctx context.Context, in *GetHomeRequest, opts ...grpc.CallOption) (*GetHomeResponse, error)
	// Creates a storage space.
	CreateStorageSpace(ctx context.Context, in *CreateStorageSpaceRequest, opts ...grpc.CallOption) (*CreateStorageSpaceResponse, error)
	// Lists storage spaces.
	ListStorageSpaces(ctx context.Context, in *ListStorageSpacesRequest, opts ...grpc.CallOption) (*ListStorageSpacesResponse, error)
	// Updates a storage space.
	UpdateStorageSpace(ctx context.Context, in *UpdateStorageSpaceRequest, opts ...grpc.CallOption) (*UpdateStorageSpaceResponse, error)
	// Deletes a storage space.
	DeleteStorageSpace(ctx context.Context, in *DeleteStorageSpaceRequest, opts ...grpc.CallOption) (*DeleteStorageSpaceResponse, error)
}

type providerAPIClient struct {
	cc *grpc.ClientConn
}

func NewProviderAPIClient(cc *grpc.ClientConn) ProviderAPIClient {
	return &providerAPIClient{cc}
}

func (c *providerAPIClient) AddGrant(ctx context.Context, in *AddGrantRequest, opts ...grpc.CallOption) (*AddGrantResponse, error) {
	out := new(AddGrantResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/AddGrant", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) CreateContainer(ctx context.Context, in *CreateContainerRequest, opts ...grpc.CallOption) (*CreateContainerResponse, error) {
	out := new(CreateContainerResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/CreateContainer", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) TouchFile(ctx context.Context, in *TouchFileRequest, opts ...grpc.CallOption) (*TouchFileResponse, error) {
	out := new(TouchFileResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/TouchFile", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*DeleteResponse, error) {
	out := new(DeleteResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/Delete", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) DenyGrant(ctx context.Context, in *DenyGrantRequest, opts ...grpc.CallOption) (*DenyGrantResponse, error) {
	out := new(DenyGrantResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/DenyGrant", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) GetPath(ctx context.Context, in *GetPathRequest, opts ...grpc.CallOption) (*GetPathResponse, error) {
	out := new(GetPathResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/GetPath", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) GetQuota(ctx context.Context, in *GetQuotaRequest, opts ...grpc.CallOption) (*GetQuotaResponse, error) {
	out := new(GetQuotaResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/GetQuota", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) InitiateFileDownload(ctx context.Context, in *InitiateFileDownloadRequest, opts ...grpc.CallOption) (*InitiateFileDownloadResponse, error) {
	out := new(InitiateFileDownloadResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/InitiateFileDownload", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) InitiateFileUpload(ctx context.Context, in *InitiateFileUploadRequest, opts ...grpc.CallOption) (*InitiateFileUploadResponse, error) {
	out := new(InitiateFileUploadResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/InitiateFileUpload", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) ListGrants(ctx context.Context, in *ListGrantsRequest, opts ...grpc.CallOption) (*ListGrantsResponse, error) {
	out := new(ListGrantsResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/ListGrants", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) ListContainerStream(ctx context.Context, in *ListContainerStreamRequest, opts ...grpc.CallOption) (ProviderAPI_ListContainerStreamClient, error) {
	stream, err := c.cc.NewStream(ctx, &_ProviderAPI_serviceDesc.Streams[0], "/cs3.storage.provider.v1beta1.ProviderAPI/ListContainerStream", opts...)
	if err != nil {
		return nil, err
	}
	x := &providerAPIListContainerStreamClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type ProviderAPI_ListContainerStreamClient interface {
	Recv() (*ListContainerStreamResponse, error)
	grpc.ClientStream
}

type providerAPIListContainerStreamClient struct {
	grpc.ClientStream
}

func (x *providerAPIListContainerStreamClient) Recv() (*ListContainerStreamResponse, error) {
	m := new(ListContainerStreamResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *providerAPIClient) ListContainer(ctx context.Context, in *ListContainerRequest, opts ...grpc.CallOption) (*ListContainerResponse, error) {
	out := new(ListContainerResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/ListContainer", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) ListFileVersions(ctx context.Context, in *ListFileVersionsRequest, opts ...grpc.CallOption) (*ListFileVersionsResponse, error) {
	out := new(ListFileVersionsResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/ListFileVersions", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) ListRecycleStream(ctx context.Context, in *ListRecycleStreamRequest, opts ...grpc.CallOption) (ProviderAPI_ListRecycleStreamClient, error) {
	stream, err := c.cc.NewStream(ctx, &_ProviderAPI_serviceDesc.Streams[1], "/cs3.storage.provider.v1beta1.ProviderAPI/ListRecycleStream", opts...)
	if err != nil {
		return nil, err
	}
	x := &providerAPIListRecycleStreamClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type ProviderAPI_ListRecycleStreamClient interface {
	Recv() (*ListRecycleStreamResponse, error)
	grpc.ClientStream
}

type providerAPIListRecycleStreamClient struct {
	grpc.ClientStream
}

func (x *providerAPIListRecycleStreamClient) Recv() (*ListRecycleStreamResponse, error) {
	m := new(ListRecycleStreamResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *providerAPIClient) ListRecycle(ctx context.Context, in *ListRecycleRequest, opts ...grpc.CallOption) (*ListRecycleResponse, error) {
	out := new(ListRecycleResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/ListRecycle", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) Move(ctx context.Context, in *MoveRequest, opts ...grpc.CallOption) (*MoveResponse, error) {
	out := new(MoveResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/Move", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) RemoveGrant(ctx context.Context, in *RemoveGrantRequest, opts ...grpc.CallOption) (*RemoveGrantResponse, error) {
	out := new(RemoveGrantResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/RemoveGrant", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) PurgeRecycle(ctx context.Context, in *PurgeRecycleRequest, opts ...grpc.CallOption) (*PurgeRecycleResponse, error) {
	out := new(PurgeRecycleResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/PurgeRecycle", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) RestoreFileVersion(ctx context.Context, in *RestoreFileVersionRequest, opts ...grpc.CallOption) (*RestoreFileVersionResponse, error) {
	out := new(RestoreFileVersionResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/RestoreFileVersion", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) RestoreRecycleItem(ctx context.Context, in *RestoreRecycleItemRequest, opts ...grpc.CallOption) (*RestoreRecycleItemResponse, error) {
	out := new(RestoreRecycleItemResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/RestoreRecycleItem", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) Stat(ctx context.Context, in *StatRequest, opts ...grpc.CallOption) (*StatResponse, error) {
	out := new(StatResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/Stat", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) UpdateGrant(ctx context.Context, in *UpdateGrantRequest, opts ...grpc.CallOption) (*UpdateGrantResponse, error) {
	out := new(UpdateGrantResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/UpdateGrant", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) CreateSymlink(ctx context.Context, in *CreateSymlinkRequest, opts ...grpc.CallOption) (*CreateSymlinkResponse, error) {
	out := new(CreateSymlinkResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/CreateSymlink", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) CreateReference(ctx context.Context, in *CreateReferenceRequest, opts ...grpc.CallOption) (*CreateReferenceResponse, error) {
	out := new(CreateReferenceResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/CreateReference", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) SetArbitraryMetadata(ctx context.Context, in *SetArbitraryMetadataRequest, opts ...grpc.CallOption) (*SetArbitraryMetadataResponse, error) {
	out := new(SetArbitraryMetadataResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/SetArbitraryMetadata", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) UnsetArbitraryMetadata(ctx context.Context, in *UnsetArbitraryMetadataRequest, opts ...grpc.CallOption) (*UnsetArbitraryMetadataResponse, error) {
	out := new(UnsetArbitraryMetadataResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/UnsetArbitraryMetadata", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) SetLock(ctx context.Context, in *SetLockRequest, opts ...grpc.CallOption) (*SetLockResponse, error) {
	out := new(SetLockResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/SetLock", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) GetLock(ctx context.Context, in *GetLockRequest, opts ...grpc.CallOption) (*GetLockResponse, error) {
	out := new(GetLockResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/GetLock", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) RefreshLock(ctx context.Context, in *RefreshLockRequest, opts ...grpc.CallOption) (*RefreshLockResponse, error) {
	out := new(RefreshLockResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/RefreshLock", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) Unlock(ctx context.Context, in *UnlockRequest, opts ...grpc.CallOption) (*UnlockResponse, error) {
	out := new(UnlockResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/Unlock", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) CreateHome(ctx context.Context, in *CreateHomeRequest, opts ...grpc.CallOption) (*CreateHomeResponse, error) {
	out := new(CreateHomeResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/CreateHome", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) GetHome(ctx context.Context, in *GetHomeRequest, opts ...grpc.CallOption) (*GetHomeResponse, error) {
	out := new(GetHomeResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/GetHome", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) CreateStorageSpace(ctx context.Context, in *CreateStorageSpaceRequest, opts ...grpc.CallOption) (*CreateStorageSpaceResponse, error) {
	out := new(CreateStorageSpaceResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/CreateStorageSpace", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) ListStorageSpaces(ctx context.Context, in *ListStorageSpacesRequest, opts ...grpc.CallOption) (*ListStorageSpacesResponse, error) {
	out := new(ListStorageSpacesResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/ListStorageSpaces", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) UpdateStorageSpace(ctx context.Context, in *UpdateStorageSpaceRequest, opts ...grpc.CallOption) (*UpdateStorageSpaceResponse, error) {
	out := new(UpdateStorageSpaceResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/UpdateStorageSpace", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *providerAPIClient) DeleteStorageSpace(ctx context.Context, in *DeleteStorageSpaceRequest, opts ...grpc.CallOption) (*DeleteStorageSpaceResponse, error) {
	out := new(DeleteStorageSpaceResponse)
	err := c.cc.Invoke(ctx, "/cs3.storage.provider.v1beta1.ProviderAPI/DeleteStorageSpace", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// ProviderAPIServer is the server API for ProviderAPI service.
type ProviderAPIServer interface {
	// Adds a new grant for the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist
	AddGrant(context.Context, *AddGrantRequest) (*AddGrantResponse, error)
	// Creates a new resource of type container.
	// MUST return CODE_FAILED_PRECONDITION if the container
	// cannot be created at the specified reference.
	CreateContainer(context.Context, *CreateContainerRequest) (*CreateContainerResponse, error)
	// Creates a new resource of type file.
	// MUST return CODE_FAILED_PRECONDITION if the file
	// cannot be created at the specified reference.
	TouchFile(context.Context, *TouchFileRequest) (*TouchFileResponse, error)
	// Deletes a resource.
	// If a resource specifies the non-empty container (directory, ...),
	// then the entire directory is deleted recursively.
	// If a resource specifies a reference or symlink type, only the reference is removed (not the target).
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	Delete(context.Context, *DeleteRequest) (*DeleteResponse, error)
	// Denies access to the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist
	DenyGrant(context.Context, *DenyGrantRequest) (*DenyGrantResponse, error)
	// Returns the path reference for
	// the provided resource id reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist
	GetPath(context.Context, *GetPathRequest) (*GetPathResponse, error)
	// Returns the quota available under the provided
	// reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist
	// MUST return CODE_RESOURCE_EXHAUSTED on exceeded quota limits.
	GetQuota(context.Context, *GetQuotaRequest) (*GetQuotaResponse, error)
	// Initiates the download of a file using an
	// out-of-band data transfer mechanism.
	InitiateFileDownload(context.Context, *InitiateFileDownloadRequest) (*InitiateFileDownloadResponse, error)
	// Initiates the upload of a file using an
	// out-of-band data transfer mechanism.
	InitiateFileUpload(context.Context, *InitiateFileUploadRequest) (*InitiateFileUploadResponse, error)
	// Returns the list of grants for the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exists.
	ListGrants(context.Context, *ListGrantsRequest) (*ListGrantsResponse, error)
	// Returns a stream of resource informations
	// for the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exists.
	ListContainerStream(*ListContainerStreamRequest, ProviderAPI_ListContainerStreamServer) error
	// Returns a list of resource information
	// for the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exists.
	ListContainer(context.Context, *ListContainerRequest) (*ListContainerResponse, error)
	// Returns a list of the versions for a resource of
	// type file at the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	// MUST return CODE_OK and MUST return an empty list if no versions are available.
	// TODO: What code if resource not of type file?
	ListFileVersions(context.Context, *ListFileVersionsRequest) (*ListFileVersionsResponse, error)
	// Returns a stream of recycle items for this storage provider.
	ListRecycleStream(*ListRecycleStreamRequest, ProviderAPI_ListRecycleStreamServer) error
	// Returns a list of recycle items for this storage provider.
	// MUST return CODE_OK and MUST return an empty list if no recycle items are available.
	ListRecycle(context.Context, *ListRecycleRequest) (*ListRecycleResponse, error)
	// Moves a resource from one reference to another.
	// MUST return CODE_NOT_FOUND if any of the references do not exist.
	// MUST return CODE_FAILED_PRECONDITION if the source reference
	// cannot be moved to the destination reference.
	Move(context.Context, *MoveRequest) (*MoveResponse, error)
	// Removes a grant for the provided reference.
	// This is recursive and atomic for directories. Does not follow references.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	// MUST return CODE_NOT_FOUND if grant does not exist.
	RemoveGrant(context.Context, *RemoveGrantRequest) (*RemoveGrantResponse, error)
	// Permanently removes a recycle item from the recycle.
	// This operation is irrevocable.
	// MUST return CODE_NOT_FOUND if the recycle item id does not exist.
	PurgeRecycle(context.Context, *PurgeRecycleRequest) (*PurgeRecycleResponse, error)
	// Restores a file version for the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	// MUST return CODE_NOT_FOUND if the version does not exist.
	RestoreFileVersion(context.Context, *RestoreFileVersionRequest) (*RestoreFileVersionResponse, error)
	// Restores a recycle item from the recycle.
	// MUST return CODE_NOT_FOUND if the recycle item id does not exist.
	// MUST return CODE_FAILED_PRECONDITION if the restore_path is non-empty
	// and the recycle item cannot be restored to the restore_path.
	RestoreRecycleItem(context.Context, *RestoreRecycleItemRequest) (*RestoreRecycleItemResponse, error)
	// Returns the resource information at the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	Stat(context.Context, *StatRequest) (*StatResponse, error)
	// Updates an ACL for the provided reference.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	// MUST return CODE_FAILED_PRECONDITION if the acl does not exist.
	UpdateGrant(context.Context, *UpdateGrantRequest) (*UpdateGrantResponse, error)
	// Creates a symlink to another resource.
	CreateSymlink(context.Context, *CreateSymlinkRequest) (*CreateSymlinkResponse, error)
	// Creates a reference to another resource in the same cluster or another domain (OCM shares).
	// The references resource can be accessed by the protocol specificied in the request message.
	CreateReference(context.Context, *CreateReferenceRequest) (*CreateReferenceResponse, error)
	// Sets arbitrary metadata into a storage resource.
	// Arbitrary metadata is returned in a cs3.storageprovider.v1beta1.ResourceInfo.
	SetArbitraryMetadata(context.Context, *SetArbitraryMetadataRequest) (*SetArbitraryMetadataResponse, error)
	// Unsets arbitrary metdata into a storage resource.
	// Arbitrary metadata is returned in a cs3.storageprovider.v1beta1.ResourceInfo.
	UnsetArbitraryMetadata(context.Context, *UnsetArbitraryMetadataRequest) (*UnsetArbitraryMetadataResponse, error)
	// Locks a storage resource. Note that if the resource is a container,
	// MAY return CODE_NOT_IMPLEMENTED as the behavior is yet to be defined at this stage.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	// MUST return CODE_FAILED_PRECONDITION if the reference is already locked.
	// In addition, the implementation MUST ensure atomicity when multiple users
	// concurrently attempt to set a lock.
	// The caller MUST have write permissions on the resource.
	SetLock(context.Context, *SetLockRequest) (*SetLockResponse, error)
	// Gets the lock metadata of a storage resource.
	// MUST return CODE_NOT_FOUND if the reference does not exist or is not locked.
	// The caller MUST have read permissions on the resource.
	GetLock(context.Context, *GetLockRequest) (*GetLockResponse, error)
	// Refreshes the lock metadata of a storage resource.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	// MUST return CODE_PRECONDITION_FALIED if the reference is not locked
	// or if the caller does not hold the lock.
	// The caller MUST have write permissions on the resource.
	RefreshLock(context.Context, *RefreshLockRequest) (*RefreshLockResponse, error)
	// Unlocks a storage resource.
	// MUST return CODE_NOT_FOUND if the reference does not exist.
	// MUST return CODE_FAILED_PRECONDITION if the reference is not locked
	// or if the caller does not hold the lock.
	// The caller MUST have write permissions on the resource.
	Unlock(context.Context, *UnlockRequest) (*UnlockResponse, error)
	// Creates the home directory for a user.
	CreateHome(context.Context, *CreateHomeRequest) (*CreateHomeResponse, error)
	// Gets the home path for the user.
	GetHome(context.Context, *GetHomeRequest) (*GetHomeResponse, error)
	// Creates a storage space.
	CreateStorageSpace(context.Context, *CreateStorageSpaceRequest) (*CreateStorageSpaceResponse, error)
	// Lists storage spaces.
	ListStorageSpaces(context.Context, *ListStorageSpacesRequest) (*ListStorageSpacesResponse, error)
	// Updates a storage space.
	UpdateStorageSpace(context.Context, *UpdateStorageSpaceRequest) (*UpdateStorageSpaceResponse, error)
	// Deletes a storage space.
	DeleteStorageSpace(context.Context, *DeleteStorageSpaceRequest) (*DeleteStorageSpaceResponse, error)
}

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

func (*UnimplementedProviderAPIServer) AddGrant(ctx context.Context, req *AddGrantRequest) (*AddGrantResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddGrant not implemented")
}
func (*UnimplementedProviderAPIServer) CreateContainer(ctx context.Context, req *CreateContainerRequest) (*CreateContainerResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateContainer not implemented")
}
func (*UnimplementedProviderAPIServer) TouchFile(ctx context.Context, req *TouchFileRequest) (*TouchFileResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method TouchFile not implemented")
}
func (*UnimplementedProviderAPIServer) Delete(ctx context.Context, req *DeleteRequest) (*DeleteResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Delete not implemented")
}
func (*UnimplementedProviderAPIServer) DenyGrant(ctx context.Context, req *DenyGrantRequest) (*DenyGrantResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DenyGrant not implemented")
}
func (*UnimplementedProviderAPIServer) GetPath(ctx context.Context, req *GetPathRequest) (*GetPathResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetPath not implemented")
}
func (*UnimplementedProviderAPIServer) GetQuota(ctx context.Context, req *GetQuotaRequest) (*GetQuotaResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetQuota not implemented")
}
func (*UnimplementedProviderAPIServer) InitiateFileDownload(ctx context.Context, req *InitiateFileDownloadRequest) (*InitiateFileDownloadResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method InitiateFileDownload not implemented")
}
func (*UnimplementedProviderAPIServer) InitiateFileUpload(ctx context.Context, req *InitiateFileUploadRequest) (*InitiateFileUploadResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method InitiateFileUpload not implemented")
}
func (*UnimplementedProviderAPIServer) ListGrants(ctx context.Context, req *ListGrantsRequest) (*ListGrantsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListGrants not implemented")
}
func (*UnimplementedProviderAPIServer) ListContainerStream(req *ListContainerStreamRequest, srv ProviderAPI_ListContainerStreamServer) error {
	return status.Errorf(codes.Unimplemented, "method ListContainerStream not implemented")
}
func (*UnimplementedProviderAPIServer) ListContainer(ctx context.Context, req *ListContainerRequest) (*ListContainerResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListContainer not implemented")
}
func (*UnimplementedProviderAPIServer) ListFileVersions(ctx context.Context, req *ListFileVersionsRequest) (*ListFileVersionsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListFileVersions not implemented")
}
func (*UnimplementedProviderAPIServer) ListRecycleStream(req *ListRecycleStreamRequest, srv ProviderAPI_ListRecycleStreamServer) error {
	return status.Errorf(codes.Unimplemented, "method ListRecycleStream not implemented")
}
func (*UnimplementedProviderAPIServer) ListRecycle(ctx context.Context, req *ListRecycleRequest) (*ListRecycleResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListRecycle not implemented")
}
func (*UnimplementedProviderAPIServer) Move(ctx context.Context, req *MoveRequest) (*MoveResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Move not implemented")
}
func (*UnimplementedProviderAPIServer) RemoveGrant(ctx context.Context, req *RemoveGrantRequest) (*RemoveGrantResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method RemoveGrant not implemented")
}
func (*UnimplementedProviderAPIServer) PurgeRecycle(ctx context.Context, req *PurgeRecycleRequest) (*PurgeRecycleResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method PurgeRecycle not implemented")
}
func (*UnimplementedProviderAPIServer) RestoreFileVersion(ctx context.Context, req *RestoreFileVersionRequest) (*RestoreFileVersionResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method RestoreFileVersion not implemented")
}
func (*UnimplementedProviderAPIServer) RestoreRecycleItem(ctx context.Context, req *RestoreRecycleItemRequest) (*RestoreRecycleItemResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method RestoreRecycleItem not implemented")
}
func (*UnimplementedProviderAPIServer) Stat(ctx context.Context, req *StatRequest) (*StatResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Stat not implemented")
}
func (*UnimplementedProviderAPIServer) UpdateGrant(ctx context.Context, req *UpdateGrantRequest) (*UpdateGrantResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdateGrant not implemented")
}
func (*UnimplementedProviderAPIServer) CreateSymlink(ctx context.Context, req *CreateSymlinkRequest) (*CreateSymlinkResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateSymlink not implemented")
}
func (*UnimplementedProviderAPIServer) CreateReference(ctx context.Context, req *CreateReferenceRequest) (*CreateReferenceResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateReference not implemented")
}
func (*UnimplementedProviderAPIServer) SetArbitraryMetadata(ctx context.Context, req *SetArbitraryMetadataRequest) (*SetArbitraryMetadataResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method SetArbitraryMetadata not implemented")
}
func (*UnimplementedProviderAPIServer) UnsetArbitraryMetadata(ctx context.Context, req *UnsetArbitraryMetadataRequest) (*UnsetArbitraryMetadataResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UnsetArbitraryMetadata not implemented")
}
func (*UnimplementedProviderAPIServer) SetLock(ctx context.Context, req *SetLockRequest) (*SetLockResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method SetLock not implemented")
}
func (*UnimplementedProviderAPIServer) GetLock(ctx context.Context, req *GetLockRequest) (*GetLockResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetLock not implemented")
}
func (*UnimplementedProviderAPIServer) RefreshLock(ctx context.Context, req *RefreshLockRequest) (*RefreshLockResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method RefreshLock not implemented")
}
func (*UnimplementedProviderAPIServer) Unlock(ctx context.Context, req *UnlockRequest) (*UnlockResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method Unlock not implemented")
}
func (*UnimplementedProviderAPIServer) CreateHome(ctx context.Context, req *CreateHomeRequest) (*CreateHomeResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateHome not implemented")
}
func (*UnimplementedProviderAPIServer) GetHome(ctx context.Context, req *GetHomeRequest) (*GetHomeResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetHome not implemented")
}
func (*UnimplementedProviderAPIServer) CreateStorageSpace(ctx context.Context, req *CreateStorageSpaceRequest) (*CreateStorageSpaceResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CreateStorageSpace not implemented")
}
func (*UnimplementedProviderAPIServer) ListStorageSpaces(ctx context.Context, req *ListStorageSpacesRequest) (*ListStorageSpacesResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ListStorageSpaces not implemented")
}
func (*UnimplementedProviderAPIServer) UpdateStorageSpace(ctx context.Context, req *UpdateStorageSpaceRequest) (*UpdateStorageSpaceResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdateStorageSpace not implemented")
}
func (*UnimplementedProviderAPIServer) DeleteStorageSpace(ctx context.Context, req *DeleteStorageSpaceRequest) (*DeleteStorageSpaceResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteStorageSpace not implemented")
}

func RegisterProviderAPIServer(s *grpc.Server, srv ProviderAPIServer) {
	s.RegisterService(&_ProviderAPI_serviceDesc, srv)
}

func _ProviderAPI_AddGrant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddGrantRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).AddGrant(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/AddGrant",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).AddGrant(ctx, req.(*AddGrantRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_CreateContainer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateContainerRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).CreateContainer(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/CreateContainer",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).CreateContainer(ctx, req.(*CreateContainerRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_TouchFile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(TouchFileRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).TouchFile(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/TouchFile",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).TouchFile(ctx, req.(*TouchFileRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).Delete(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/Delete",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).Delete(ctx, req.(*DeleteRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_DenyGrant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DenyGrantRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).DenyGrant(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/DenyGrant",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).DenyGrant(ctx, req.(*DenyGrantRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_GetPath_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetPathRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).GetPath(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/GetPath",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).GetPath(ctx, req.(*GetPathRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_GetQuota_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetQuotaRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).GetQuota(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/GetQuota",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).GetQuota(ctx, req.(*GetQuotaRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_InitiateFileDownload_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(InitiateFileDownloadRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).InitiateFileDownload(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/InitiateFileDownload",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).InitiateFileDownload(ctx, req.(*InitiateFileDownloadRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_InitiateFileUpload_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(InitiateFileUploadRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).InitiateFileUpload(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/InitiateFileUpload",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).InitiateFileUpload(ctx, req.(*InitiateFileUploadRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_ListGrants_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListGrantsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).ListGrants(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/ListGrants",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).ListGrants(ctx, req.(*ListGrantsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_ListContainerStream_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(ListContainerStreamRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(ProviderAPIServer).ListContainerStream(m, &providerAPIListContainerStreamServer{stream})
}

type ProviderAPI_ListContainerStreamServer interface {
	Send(*ListContainerStreamResponse) error
	grpc.ServerStream
}

type providerAPIListContainerStreamServer struct {
	grpc.ServerStream
}

func (x *providerAPIListContainerStreamServer) Send(m *ListContainerStreamResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _ProviderAPI_ListContainer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListContainerRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).ListContainer(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/ListContainer",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).ListContainer(ctx, req.(*ListContainerRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_ListFileVersions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListFileVersionsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).ListFileVersions(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/ListFileVersions",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).ListFileVersions(ctx, req.(*ListFileVersionsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_ListRecycleStream_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(ListRecycleStreamRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(ProviderAPIServer).ListRecycleStream(m, &providerAPIListRecycleStreamServer{stream})
}

type ProviderAPI_ListRecycleStreamServer interface {
	Send(*ListRecycleStreamResponse) error
	grpc.ServerStream
}

type providerAPIListRecycleStreamServer struct {
	grpc.ServerStream
}

func (x *providerAPIListRecycleStreamServer) Send(m *ListRecycleStreamResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _ProviderAPI_ListRecycle_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListRecycleRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).ListRecycle(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/ListRecycle",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).ListRecycle(ctx, req.(*ListRecycleRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_Move_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(MoveRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).Move(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/Move",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).Move(ctx, req.(*MoveRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_RemoveGrant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(RemoveGrantRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).RemoveGrant(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/RemoveGrant",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).RemoveGrant(ctx, req.(*RemoveGrantRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_PurgeRecycle_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(PurgeRecycleRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).PurgeRecycle(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/PurgeRecycle",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).PurgeRecycle(ctx, req.(*PurgeRecycleRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_RestoreFileVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(RestoreFileVersionRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).RestoreFileVersion(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/RestoreFileVersion",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).RestoreFileVersion(ctx, req.(*RestoreFileVersionRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_RestoreRecycleItem_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(RestoreRecycleItemRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).RestoreRecycleItem(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/RestoreRecycleItem",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).RestoreRecycleItem(ctx, req.(*RestoreRecycleItemRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_Stat_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(StatRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).Stat(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/Stat",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).Stat(ctx, req.(*StatRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_UpdateGrant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateGrantRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).UpdateGrant(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/UpdateGrant",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).UpdateGrant(ctx, req.(*UpdateGrantRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_CreateSymlink_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateSymlinkRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).CreateSymlink(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/CreateSymlink",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).CreateSymlink(ctx, req.(*CreateSymlinkRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_CreateReference_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateReferenceRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).CreateReference(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/CreateReference",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).CreateReference(ctx, req.(*CreateReferenceRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_SetArbitraryMetadata_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SetArbitraryMetadataRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).SetArbitraryMetadata(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/SetArbitraryMetadata",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).SetArbitraryMetadata(ctx, req.(*SetArbitraryMetadataRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_UnsetArbitraryMetadata_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UnsetArbitraryMetadataRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).UnsetArbitraryMetadata(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/UnsetArbitraryMetadata",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).UnsetArbitraryMetadata(ctx, req.(*UnsetArbitraryMetadataRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_SetLock_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SetLockRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).SetLock(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/SetLock",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).SetLock(ctx, req.(*SetLockRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_GetLock_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetLockRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).GetLock(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/GetLock",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).GetLock(ctx, req.(*GetLockRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_RefreshLock_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(RefreshLockRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).RefreshLock(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/RefreshLock",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).RefreshLock(ctx, req.(*RefreshLockRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_Unlock_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UnlockRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).Unlock(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/Unlock",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).Unlock(ctx, req.(*UnlockRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_CreateHome_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateHomeRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).CreateHome(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/CreateHome",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).CreateHome(ctx, req.(*CreateHomeRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_GetHome_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetHomeRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).GetHome(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/GetHome",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).GetHome(ctx, req.(*GetHomeRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_CreateStorageSpace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateStorageSpaceRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).CreateStorageSpace(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/CreateStorageSpace",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).CreateStorageSpace(ctx, req.(*CreateStorageSpaceRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_ListStorageSpaces_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListStorageSpacesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).ListStorageSpaces(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/ListStorageSpaces",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).ListStorageSpaces(ctx, req.(*ListStorageSpacesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_UpdateStorageSpace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateStorageSpaceRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).UpdateStorageSpace(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/UpdateStorageSpace",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).UpdateStorageSpace(ctx, req.(*UpdateStorageSpaceRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _ProviderAPI_DeleteStorageSpace_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteStorageSpaceRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(ProviderAPIServer).DeleteStorageSpace(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/cs3.storage.provider.v1beta1.ProviderAPI/DeleteStorageSpace",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(ProviderAPIServer).DeleteStorageSpace(ctx, req.(*DeleteStorageSpaceRequest))
	}
	return interceptor(ctx, in, info, handler)
}

var _ProviderAPI_serviceDesc = grpc.ServiceDesc{
	ServiceName: "cs3.storage.provider.v1beta1.ProviderAPI",
	HandlerType: (*ProviderAPIServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "AddGrant",
			Handler:    _ProviderAPI_AddGrant_Handler,
		},
		{
			MethodName: "CreateContainer",
			Handler:    _ProviderAPI_CreateContainer_Handler,
		},
		{
			MethodName: "TouchFile",
			Handler:    _ProviderAPI_TouchFile_Handler,
		},
		{
			MethodName: "Delete",
			Handler:    _ProviderAPI_Delete_Handler,
		},
		{
			MethodName: "DenyGrant",
			Handler:    _ProviderAPI_DenyGrant_Handler,
		},
		{
			MethodName: "GetPath",
			Handler:    _ProviderAPI_GetPath_Handler,
		},
		{
			MethodName: "GetQuota",
			Handler:    _ProviderAPI_GetQuota_Handler,
		},
		{
			MethodName: "InitiateFileDownload",
			Handler:    _ProviderAPI_InitiateFileDownload_Handler,
		},
		{
			MethodName: "InitiateFileUpload",
			Handler:    _ProviderAPI_InitiateFileUpload_Handler,
		},
		{
			MethodName: "ListGrants",
			Handler:    _ProviderAPI_ListGrants_Handler,
		},
		{
			MethodName: "ListContainer",
			Handler:    _ProviderAPI_ListContainer_Handler,
		},
		{
			MethodName: "ListFileVersions",
			Handler:    _ProviderAPI_ListFileVersions_Handler,
		},
		{
			MethodName: "ListRecycle",
			Handler:    _ProviderAPI_ListRecycle_Handler,
		},
		{
			MethodName: "Move",
			Handler:    _ProviderAPI_Move_Handler,
		},
		{
			MethodName: "RemoveGrant",
			Handler:    _ProviderAPI_RemoveGrant_Handler,
		},
		{
			MethodName: "PurgeRecycle",
			Handler:    _ProviderAPI_PurgeRecycle_Handler,
		},
		{
			MethodName: "RestoreFileVersion",
			Handler:    _ProviderAPI_RestoreFileVersion_Handler,
		},
		{
			MethodName: "RestoreRecycleItem",
			Handler:    _ProviderAPI_RestoreRecycleItem_Handler,
		},
		{
			MethodName: "Stat",
			Handler:    _ProviderAPI_Stat_Handler,
		},
		{
			MethodName: "UpdateGrant",
			Handler:    _ProviderAPI_UpdateGrant_Handler,
		},
		{
			MethodName: "CreateSymlink",
			Handler:    _ProviderAPI_CreateSymlink_Handler,
		},
		{
			MethodName: "CreateReference",
			Handler:    _ProviderAPI_CreateReference_Handler,
		},
		{
			MethodName: "SetArbitraryMetadata",
			Handler:    _ProviderAPI_SetArbitraryMetadata_Handler,
		},
		{
			MethodName: "UnsetArbitraryMetadata",
			Handler:    _ProviderAPI_UnsetArbitraryMetadata_Handler,
		},
		{
			MethodName: "SetLock",
			Handler:    _ProviderAPI_SetLock_Handler,
		},
		{
			MethodName: "GetLock",
			Handler:    _ProviderAPI_GetLock_Handler,
		},
		{
			MethodName: "RefreshLock",
			Handler:    _ProviderAPI_RefreshLock_Handler,
		},
		{
			MethodName: "Unlock",
			Handler:    _ProviderAPI_Unlock_Handler,
		},
		{
			MethodName: "CreateHome",
			Handler:    _ProviderAPI_CreateHome_Handler,
		},
		{
			MethodName: "GetHome",
			Handler:    _ProviderAPI_GetHome_Handler,
		},
		{
			MethodName: "CreateStorageSpace",
			Handler:    _ProviderAPI_CreateStorageSpace_Handler,
		},
		{
			MethodName: "ListStorageSpaces",
			Handler:    _ProviderAPI_ListStorageSpaces_Handler,
		},
		{
			MethodName: "UpdateStorageSpace",
			Handler:    _ProviderAPI_UpdateStorageSpace_Handler,
		},
		{
			MethodName: "DeleteStorageSpace",
			Handler:    _ProviderAPI_DeleteStorageSpace_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "ListContainerStream",
			Handler:       _ProviderAPI_ListContainerStream_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "ListRecycleStream",
			Handler:       _ProviderAPI_ListRecycleStream_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "cs3/storage/provider/v1beta1/provider_api.proto",
}
