// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.26.0
// 	protoc        v3.20.0
// source: provisionersdk/proto/provisioner.proto

package proto

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

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

// LogLevel represents severity of the log.
type LogLevel int32

const (
	LogLevel_TRACE LogLevel = 0
	LogLevel_DEBUG LogLevel = 1
	LogLevel_INFO  LogLevel = 2
	LogLevel_WARN  LogLevel = 3
	LogLevel_ERROR LogLevel = 4
)

// Enum value maps for LogLevel.
var (
	LogLevel_name = map[int32]string{
		0: "TRACE",
		1: "DEBUG",
		2: "INFO",
		3: "WARN",
		4: "ERROR",
	}
	LogLevel_value = map[string]int32{
		"TRACE": 0,
		"DEBUG": 1,
		"INFO":  2,
		"WARN":  3,
		"ERROR": 4,
	}
)

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

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

func (LogLevel) Descriptor() protoreflect.EnumDescriptor {
	return file_provisionersdk_proto_provisioner_proto_enumTypes[0].Descriptor()
}

func (LogLevel) Type() protoreflect.EnumType {
	return &file_provisionersdk_proto_provisioner_proto_enumTypes[0]
}

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

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

type WorkspaceTransition int32

const (
	WorkspaceTransition_START   WorkspaceTransition = 0
	WorkspaceTransition_STOP    WorkspaceTransition = 1
	WorkspaceTransition_DESTROY WorkspaceTransition = 2
)

// Enum value maps for WorkspaceTransition.
var (
	WorkspaceTransition_name = map[int32]string{
		0: "START",
		1: "STOP",
		2: "DESTROY",
	}
	WorkspaceTransition_value = map[string]int32{
		"START":   0,
		"STOP":    1,
		"DESTROY": 2,
	}
)

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

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

func (WorkspaceTransition) Descriptor() protoreflect.EnumDescriptor {
	return file_provisionersdk_proto_provisioner_proto_enumTypes[1].Descriptor()
}

func (WorkspaceTransition) Type() protoreflect.EnumType {
	return &file_provisionersdk_proto_provisioner_proto_enumTypes[1]
}

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

// Deprecated: Use WorkspaceTransition.Descriptor instead.
func (WorkspaceTransition) EnumDescriptor() ([]byte, []int) {
	return file_provisionersdk_proto_provisioner_proto_rawDescGZIP(), []int{1}
}

type ParameterSource_Scheme int32

const (
	ParameterSource_DATA ParameterSource_Scheme = 0
)

// Enum value maps for ParameterSource_Scheme.
var (
	ParameterSource_Scheme_name = map[int32]string{
		0: "DATA",
	}
	ParameterSource_Scheme_value = map[string]int32{
		"DATA": 0,
	}
)

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

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

func (ParameterSource_Scheme) Descriptor() protoreflect.EnumDescriptor {
	return file_provisionersdk_proto_provisioner_proto_enumTypes[2].Descriptor()
}

func (ParameterSource_Scheme) Type() protoreflect.EnumType {
	return &file_provisionersdk_proto_provisioner_proto_enumTypes[2]
}

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

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

type ParameterDestination_Scheme int32

const (
	ParameterDestination_ENVIRONMENT_VARIABLE ParameterDestination_Scheme = 0
	ParameterDestination_PROVISIONER_VARIABLE ParameterDestination_Scheme = 1
)

// Enum value maps for ParameterDestination_Scheme.
var (
	ParameterDestination_Scheme_name = map[int32]string{
		0: "ENVIRONMENT_VARIABLE",
		1: "PROVISIONER_VARIABLE",
	}
	ParameterDestination_Scheme_value = map[string]int32{
		"ENVIRONMENT_VARIABLE": 0,
		"PROVISIONER_VARIABLE": 1,
	}
)

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

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

func (ParameterDestination_Scheme) Descriptor() protoreflect.EnumDescriptor {
	return file_provisionersdk_proto_provisioner_proto_enumTypes[3].Descriptor()
}

func (ParameterDestination_Scheme) Type() protoreflect.EnumType {
	return &file_provisionersdk_proto_provisioner_proto_enumTypes[3]
}

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

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

type ParameterSchema_TypeSystem int32

const (
	ParameterSchema_None ParameterSchema_TypeSystem = 0
	ParameterSchema_HCL  ParameterSchema_TypeSystem = 1
)

// Enum value maps for ParameterSchema_TypeSystem.
var (
	ParameterSchema_TypeSystem_name = map[int32]string{
		0: "None",
		1: "HCL",
	}
	ParameterSchema_TypeSystem_value = map[string]int32{
		"None": 0,
		"HCL":  1,
	}
)

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

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

func (ParameterSchema_TypeSystem) Descriptor() protoreflect.EnumDescriptor {
	return file_provisionersdk_proto_provisioner_proto_enumTypes[4].Descriptor()
}

func (ParameterSchema_TypeSystem) Type() protoreflect.EnumType {
	return &file_provisionersdk_proto_provisioner_proto_enumTypes[4]
}

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

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

// Empty indicates a successful request/response.
type Empty struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *Empty) Reset() {
	*x = Empty{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Empty) ProtoMessage() {}

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

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

// ParameterSource represents the source location for a parameter to get it's value from.
type ParameterSource struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Scheme ParameterSource_Scheme `protobuf:"varint,1,opt,name=scheme,proto3,enum=provisioner.ParameterSource_Scheme" json:"scheme,omitempty"`
	Value  string                 `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
}

func (x *ParameterSource) Reset() {
	*x = ParameterSource{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ParameterSource) ProtoMessage() {}

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

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

func (x *ParameterSource) GetScheme() ParameterSource_Scheme {
	if x != nil {
		return x.Scheme
	}
	return ParameterSource_DATA
}

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

// ParameterDestination represents the target location for a provisioner to set the value.
type ParameterDestination struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Scheme ParameterDestination_Scheme `protobuf:"varint,1,opt,name=scheme,proto3,enum=provisioner.ParameterDestination_Scheme" json:"scheme,omitempty"`
}

func (x *ParameterDestination) Reset() {
	*x = ParameterDestination{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ParameterDestination) ProtoMessage() {}

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

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

func (x *ParameterDestination) GetScheme() ParameterDestination_Scheme {
	if x != nil {
		return x.Scheme
	}
	return ParameterDestination_ENVIRONMENT_VARIABLE
}

// ParameterValue represents the resolved source and destination of a parameter.
type ParameterValue struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	DestinationScheme ParameterDestination_Scheme `protobuf:"varint,1,opt,name=destination_scheme,json=destinationScheme,proto3,enum=provisioner.ParameterDestination_Scheme" json:"destination_scheme,omitempty"`
	Name              string                      `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Value             string                      `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
}

func (x *ParameterValue) Reset() {
	*x = ParameterValue{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ParameterValue) ProtoMessage() {}

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

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

func (x *ParameterValue) GetDestinationScheme() ParameterDestination_Scheme {
	if x != nil {
		return x.DestinationScheme
	}
	return ParameterDestination_ENVIRONMENT_VARIABLE
}

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

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

// ParameterSchema represents validation and type information for a parsed parameter.
type ParameterSchema struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name                     string                     `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Description              string                     `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	DefaultSource            *ParameterSource           `protobuf:"bytes,3,opt,name=default_source,json=defaultSource,proto3" json:"default_source,omitempty"`
	AllowOverrideSource      bool                       `protobuf:"varint,4,opt,name=allow_override_source,json=allowOverrideSource,proto3" json:"allow_override_source,omitempty"`
	DefaultDestination       *ParameterDestination      `protobuf:"bytes,5,opt,name=default_destination,json=defaultDestination,proto3" json:"default_destination,omitempty"`
	AllowOverrideDestination bool                       `protobuf:"varint,6,opt,name=allow_override_destination,json=allowOverrideDestination,proto3" json:"allow_override_destination,omitempty"`
	RedisplayValue           bool                       `protobuf:"varint,7,opt,name=redisplay_value,json=redisplayValue,proto3" json:"redisplay_value,omitempty"`
	ValidationTypeSystem     ParameterSchema_TypeSystem `protobuf:"varint,8,opt,name=validation_type_system,json=validationTypeSystem,proto3,enum=provisioner.ParameterSchema_TypeSystem" json:"validation_type_system,omitempty"`
	ValidationValueType      string                     `protobuf:"bytes,9,opt,name=validation_value_type,json=validationValueType,proto3" json:"validation_value_type,omitempty"`
	ValidationError          string                     `protobuf:"bytes,10,opt,name=validation_error,json=validationError,proto3" json:"validation_error,omitempty"`
	ValidationCondition      string                     `protobuf:"bytes,11,opt,name=validation_condition,json=validationCondition,proto3" json:"validation_condition,omitempty"`
}

func (x *ParameterSchema) Reset() {
	*x = ParameterSchema{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*ParameterSchema) ProtoMessage() {}

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

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

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

func (x *ParameterSchema) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *ParameterSchema) GetDefaultSource() *ParameterSource {
	if x != nil {
		return x.DefaultSource
	}
	return nil
}

func (x *ParameterSchema) GetAllowOverrideSource() bool {
	if x != nil {
		return x.AllowOverrideSource
	}
	return false
}

func (x *ParameterSchema) GetDefaultDestination() *ParameterDestination {
	if x != nil {
		return x.DefaultDestination
	}
	return nil
}

func (x *ParameterSchema) GetAllowOverrideDestination() bool {
	if x != nil {
		return x.AllowOverrideDestination
	}
	return false
}

func (x *ParameterSchema) GetRedisplayValue() bool {
	if x != nil {
		return x.RedisplayValue
	}
	return false
}

func (x *ParameterSchema) GetValidationTypeSystem() ParameterSchema_TypeSystem {
	if x != nil {
		return x.ValidationTypeSystem
	}
	return ParameterSchema_None
}

func (x *ParameterSchema) GetValidationValueType() string {
	if x != nil {
		return x.ValidationValueType
	}
	return ""
}

func (x *ParameterSchema) GetValidationError() string {
	if x != nil {
		return x.ValidationError
	}
	return ""
}

func (x *ParameterSchema) GetValidationCondition() string {
	if x != nil {
		return x.ValidationCondition
	}
	return ""
}

// Log represents output from a request.
type Log struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Level  LogLevel `protobuf:"varint,1,opt,name=level,proto3,enum=provisioner.LogLevel" json:"level,omitempty"`
	Output string   `protobuf:"bytes,2,opt,name=output,proto3" json:"output,omitempty"`
}

func (x *Log) Reset() {
	*x = Log{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[5]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Log) ProtoMessage() {}

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

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

func (x *Log) GetLevel() LogLevel {
	if x != nil {
		return x.Level
	}
	return LogLevel_TRACE
}

func (x *Log) GetOutput() string {
	if x != nil {
		return x.Output
	}
	return ""
}

type InstanceIdentityAuth struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	InstanceId string `protobuf:"bytes,1,opt,name=instance_id,json=instanceId,proto3" json:"instance_id,omitempty"`
}

func (x *InstanceIdentityAuth) Reset() {
	*x = InstanceIdentityAuth{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[6]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*InstanceIdentityAuth) ProtoMessage() {}

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

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

func (x *InstanceIdentityAuth) GetInstanceId() string {
	if x != nil {
		return x.InstanceId
	}
	return ""
}

// Agent represents a running agent on the workspace.
type Agent struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id              string            `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Name            string            `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Env             map[string]string `protobuf:"bytes,3,rep,name=env,proto3" json:"env,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	StartupScript   string            `protobuf:"bytes,4,opt,name=startup_script,json=startupScript,proto3" json:"startup_script,omitempty"`
	OperatingSystem string            `protobuf:"bytes,5,opt,name=operating_system,json=operatingSystem,proto3" json:"operating_system,omitempty"`
	Architecture    string            `protobuf:"bytes,6,opt,name=architecture,proto3" json:"architecture,omitempty"`
	Directory       string            `protobuf:"bytes,7,opt,name=directory,proto3" json:"directory,omitempty"`
	Apps            []*App            `protobuf:"bytes,8,rep,name=apps,proto3" json:"apps,omitempty"`
	// Types that are assignable to Auth:
	//
	//	*Agent_Token
	//	*Agent_InstanceId
	Auth isAgent_Auth `protobuf_oneof:"auth"`
}

func (x *Agent) Reset() {
	*x = Agent{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[7]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Agent) ProtoMessage() {}

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

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

func (x *Agent) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

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

func (x *Agent) GetEnv() map[string]string {
	if x != nil {
		return x.Env
	}
	return nil
}

func (x *Agent) GetStartupScript() string {
	if x != nil {
		return x.StartupScript
	}
	return ""
}

func (x *Agent) GetOperatingSystem() string {
	if x != nil {
		return x.OperatingSystem
	}
	return ""
}

func (x *Agent) GetArchitecture() string {
	if x != nil {
		return x.Architecture
	}
	return ""
}

func (x *Agent) GetDirectory() string {
	if x != nil {
		return x.Directory
	}
	return ""
}

func (x *Agent) GetApps() []*App {
	if x != nil {
		return x.Apps
	}
	return nil
}

func (m *Agent) GetAuth() isAgent_Auth {
	if m != nil {
		return m.Auth
	}
	return nil
}

func (x *Agent) GetToken() string {
	if x, ok := x.GetAuth().(*Agent_Token); ok {
		return x.Token
	}
	return ""
}

func (x *Agent) GetInstanceId() string {
	if x, ok := x.GetAuth().(*Agent_InstanceId); ok {
		return x.InstanceId
	}
	return ""
}

type isAgent_Auth interface {
	isAgent_Auth()
}

type Agent_Token struct {
	Token string `protobuf:"bytes,9,opt,name=token,proto3,oneof"`
}

type Agent_InstanceId struct {
	InstanceId string `protobuf:"bytes,10,opt,name=instance_id,json=instanceId,proto3,oneof"`
}

func (*Agent_Token) isAgent_Auth() {}

func (*Agent_InstanceId) isAgent_Auth() {}

// App represents a dev-accessible application on the workspace.
type App struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name         string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Command      string `protobuf:"bytes,2,opt,name=command,proto3" json:"command,omitempty"`
	Url          string `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"`
	Icon         string `protobuf:"bytes,4,opt,name=icon,proto3" json:"icon,omitempty"`
	RelativePath bool   `protobuf:"varint,5,opt,name=relative_path,json=relativePath,proto3" json:"relative_path,omitempty"`
}

func (x *App) Reset() {
	*x = App{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[8]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*App) ProtoMessage() {}

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

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

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

func (x *App) GetCommand() string {
	if x != nil {
		return x.Command
	}
	return ""
}

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

func (x *App) GetIcon() string {
	if x != nil {
		return x.Icon
	}
	return ""
}

func (x *App) GetRelativePath() bool {
	if x != nil {
		return x.RelativePath
	}
	return false
}

// Resource represents created infrastructure.
type Resource struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Name     string               `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Type     string               `protobuf:"bytes,2,opt,name=type,proto3" json:"type,omitempty"`
	Agents   []*Agent             `protobuf:"bytes,3,rep,name=agents,proto3" json:"agents,omitempty"`
	Metadata []*Resource_Metadata `protobuf:"bytes,4,rep,name=metadata,proto3" json:"metadata,omitempty"`
}

func (x *Resource) Reset() {
	*x = Resource{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[9]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Resource) ProtoMessage() {}

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

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

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

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

func (x *Resource) GetAgents() []*Agent {
	if x != nil {
		return x.Agents
	}
	return nil
}

func (x *Resource) GetMetadata() []*Resource_Metadata {
	if x != nil {
		return x.Metadata
	}
	return nil
}

// Parse consumes source-code from a directory to produce inputs.
type Parse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *Parse) Reset() {
	*x = Parse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[10]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Parse) ProtoMessage() {}

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

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

// Provision consumes source-code from a directory to produce resources.
type Provision struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *Provision) Reset() {
	*x = Provision{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[11]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Provision) ProtoMessage() {}

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

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

type Resource_Metadata struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Key       string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	Value     string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	Sensitive bool   `protobuf:"varint,3,opt,name=sensitive,proto3" json:"sensitive,omitempty"`
	IsNull    bool   `protobuf:"varint,4,opt,name=is_null,json=isNull,proto3" json:"is_null,omitempty"`
}

func (x *Resource_Metadata) Reset() {
	*x = Resource_Metadata{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[13]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Resource_Metadata) ProtoMessage() {}

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

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

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

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

func (x *Resource_Metadata) GetSensitive() bool {
	if x != nil {
		return x.Sensitive
	}
	return false
}

func (x *Resource_Metadata) GetIsNull() bool {
	if x != nil {
		return x.IsNull
	}
	return false
}

type Parse_Request struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Directory string `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"`
}

func (x *Parse_Request) Reset() {
	*x = Parse_Request{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[14]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Parse_Request) ProtoMessage() {}

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

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

func (x *Parse_Request) GetDirectory() string {
	if x != nil {
		return x.Directory
	}
	return ""
}

type Parse_Complete struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	ParameterSchemas []*ParameterSchema `protobuf:"bytes,2,rep,name=parameter_schemas,json=parameterSchemas,proto3" json:"parameter_schemas,omitempty"`
}

func (x *Parse_Complete) Reset() {
	*x = Parse_Complete{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[15]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Parse_Complete) ProtoMessage() {}

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

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

func (x *Parse_Complete) GetParameterSchemas() []*ParameterSchema {
	if x != nil {
		return x.ParameterSchemas
	}
	return nil
}

type Parse_Response struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Types that are assignable to Type:
	//
	//	*Parse_Response_Log
	//	*Parse_Response_Complete
	Type isParse_Response_Type `protobuf_oneof:"type"`
}

func (x *Parse_Response) Reset() {
	*x = Parse_Response{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[16]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Parse_Response) ProtoMessage() {}

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

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

func (m *Parse_Response) GetType() isParse_Response_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

func (x *Parse_Response) GetLog() *Log {
	if x, ok := x.GetType().(*Parse_Response_Log); ok {
		return x.Log
	}
	return nil
}

func (x *Parse_Response) GetComplete() *Parse_Complete {
	if x, ok := x.GetType().(*Parse_Response_Complete); ok {
		return x.Complete
	}
	return nil
}

type isParse_Response_Type interface {
	isParse_Response_Type()
}

type Parse_Response_Log struct {
	Log *Log `protobuf:"bytes,1,opt,name=log,proto3,oneof"`
}

type Parse_Response_Complete struct {
	Complete *Parse_Complete `protobuf:"bytes,2,opt,name=complete,proto3,oneof"`
}

func (*Parse_Response_Log) isParse_Response_Type() {}

func (*Parse_Response_Complete) isParse_Response_Type() {}

type Provision_Metadata struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	CoderUrl            string              `protobuf:"bytes,1,opt,name=coder_url,json=coderUrl,proto3" json:"coder_url,omitempty"`
	WorkspaceTransition WorkspaceTransition `protobuf:"varint,2,opt,name=workspace_transition,json=workspaceTransition,proto3,enum=provisioner.WorkspaceTransition" json:"workspace_transition,omitempty"`
	WorkspaceName       string              `protobuf:"bytes,3,opt,name=workspace_name,json=workspaceName,proto3" json:"workspace_name,omitempty"`
	WorkspaceOwner      string              `protobuf:"bytes,4,opt,name=workspace_owner,json=workspaceOwner,proto3" json:"workspace_owner,omitempty"`
	WorkspaceId         string              `protobuf:"bytes,5,opt,name=workspace_id,json=workspaceId,proto3" json:"workspace_id,omitempty"`
	WorkspaceOwnerId    string              `protobuf:"bytes,6,opt,name=workspace_owner_id,json=workspaceOwnerId,proto3" json:"workspace_owner_id,omitempty"`
	WorkspaceOwnerEmail string              `protobuf:"bytes,7,opt,name=workspace_owner_email,json=workspaceOwnerEmail,proto3" json:"workspace_owner_email,omitempty"`
}

func (x *Provision_Metadata) Reset() {
	*x = Provision_Metadata{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[17]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Provision_Metadata) ProtoMessage() {}

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

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

func (x *Provision_Metadata) GetCoderUrl() string {
	if x != nil {
		return x.CoderUrl
	}
	return ""
}

func (x *Provision_Metadata) GetWorkspaceTransition() WorkspaceTransition {
	if x != nil {
		return x.WorkspaceTransition
	}
	return WorkspaceTransition_START
}

func (x *Provision_Metadata) GetWorkspaceName() string {
	if x != nil {
		return x.WorkspaceName
	}
	return ""
}

func (x *Provision_Metadata) GetWorkspaceOwner() string {
	if x != nil {
		return x.WorkspaceOwner
	}
	return ""
}

func (x *Provision_Metadata) GetWorkspaceId() string {
	if x != nil {
		return x.WorkspaceId
	}
	return ""
}

func (x *Provision_Metadata) GetWorkspaceOwnerId() string {
	if x != nil {
		return x.WorkspaceOwnerId
	}
	return ""
}

func (x *Provision_Metadata) GetWorkspaceOwnerEmail() string {
	if x != nil {
		return x.WorkspaceOwnerEmail
	}
	return ""
}

type Provision_Start struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Directory       string              `protobuf:"bytes,1,opt,name=directory,proto3" json:"directory,omitempty"`
	ParameterValues []*ParameterValue   `protobuf:"bytes,2,rep,name=parameter_values,json=parameterValues,proto3" json:"parameter_values,omitempty"`
	Metadata        *Provision_Metadata `protobuf:"bytes,3,opt,name=metadata,proto3" json:"metadata,omitempty"`
	State           []byte              `protobuf:"bytes,4,opt,name=state,proto3" json:"state,omitempty"`
	DryRun          bool                `protobuf:"varint,5,opt,name=dry_run,json=dryRun,proto3" json:"dry_run,omitempty"`
}

func (x *Provision_Start) Reset() {
	*x = Provision_Start{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[18]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Provision_Start) ProtoMessage() {}

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

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

func (x *Provision_Start) GetDirectory() string {
	if x != nil {
		return x.Directory
	}
	return ""
}

func (x *Provision_Start) GetParameterValues() []*ParameterValue {
	if x != nil {
		return x.ParameterValues
	}
	return nil
}

func (x *Provision_Start) GetMetadata() *Provision_Metadata {
	if x != nil {
		return x.Metadata
	}
	return nil
}

func (x *Provision_Start) GetState() []byte {
	if x != nil {
		return x.State
	}
	return nil
}

func (x *Provision_Start) GetDryRun() bool {
	if x != nil {
		return x.DryRun
	}
	return false
}

type Provision_Cancel struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *Provision_Cancel) Reset() {
	*x = Provision_Cancel{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[19]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Provision_Cancel) ProtoMessage() {}

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

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

type Provision_Request struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Types that are assignable to Type:
	//
	//	*Provision_Request_Start
	//	*Provision_Request_Cancel
	Type isProvision_Request_Type `protobuf_oneof:"type"`
}

func (x *Provision_Request) Reset() {
	*x = Provision_Request{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[20]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Provision_Request) ProtoMessage() {}

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

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

func (m *Provision_Request) GetType() isProvision_Request_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

func (x *Provision_Request) GetStart() *Provision_Start {
	if x, ok := x.GetType().(*Provision_Request_Start); ok {
		return x.Start
	}
	return nil
}

func (x *Provision_Request) GetCancel() *Provision_Cancel {
	if x, ok := x.GetType().(*Provision_Request_Cancel); ok {
		return x.Cancel
	}
	return nil
}

type isProvision_Request_Type interface {
	isProvision_Request_Type()
}

type Provision_Request_Start struct {
	Start *Provision_Start `protobuf:"bytes,1,opt,name=start,proto3,oneof"`
}

type Provision_Request_Cancel struct {
	Cancel *Provision_Cancel `protobuf:"bytes,2,opt,name=cancel,proto3,oneof"`
}

func (*Provision_Request_Start) isProvision_Request_Type() {}

func (*Provision_Request_Cancel) isProvision_Request_Type() {}

type Provision_Complete struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	State     []byte      `protobuf:"bytes,1,opt,name=state,proto3" json:"state,omitempty"`
	Error     string      `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
	Resources []*Resource `protobuf:"bytes,3,rep,name=resources,proto3" json:"resources,omitempty"`
}

func (x *Provision_Complete) Reset() {
	*x = Provision_Complete{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[21]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Provision_Complete) ProtoMessage() {}

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

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

func (x *Provision_Complete) GetState() []byte {
	if x != nil {
		return x.State
	}
	return nil
}

func (x *Provision_Complete) GetError() string {
	if x != nil {
		return x.Error
	}
	return ""
}

func (x *Provision_Complete) GetResources() []*Resource {
	if x != nil {
		return x.Resources
	}
	return nil
}

type Provision_Response struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	// Types that are assignable to Type:
	//
	//	*Provision_Response_Log
	//	*Provision_Response_Complete
	Type isProvision_Response_Type `protobuf_oneof:"type"`
}

func (x *Provision_Response) Reset() {
	*x = Provision_Response{}
	if protoimpl.UnsafeEnabled {
		mi := &file_provisionersdk_proto_provisioner_proto_msgTypes[22]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*Provision_Response) ProtoMessage() {}

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

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

func (m *Provision_Response) GetType() isProvision_Response_Type {
	if m != nil {
		return m.Type
	}
	return nil
}

func (x *Provision_Response) GetLog() *Log {
	if x, ok := x.GetType().(*Provision_Response_Log); ok {
		return x.Log
	}
	return nil
}

func (x *Provision_Response) GetComplete() *Provision_Complete {
	if x, ok := x.GetType().(*Provision_Response_Complete); ok {
		return x.Complete
	}
	return nil
}

type isProvision_Response_Type interface {
	isProvision_Response_Type()
}

type Provision_Response_Log struct {
	Log *Log `protobuf:"bytes,1,opt,name=log,proto3,oneof"`
}

type Provision_Response_Complete struct {
	Complete *Provision_Complete `protobuf:"bytes,2,opt,name=complete,proto3,oneof"`
}

func (*Provision_Response_Log) isProvision_Response_Type() {}

func (*Provision_Response_Complete) isProvision_Response_Type() {}

var File_provisionersdk_proto_provisioner_proto protoreflect.FileDescriptor

var file_provisionersdk_proto_provisioner_proto_rawDesc = []byte{
	0x0a, 0x26, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x73, 0x64, 0x6b,
	0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
	0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0b, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73,
	0x69, 0x6f, 0x6e, 0x65, 0x72, 0x22, 0x07, 0x0a, 0x05, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x78,
	0x0a, 0x0f, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x6f, 0x75, 0x72, 0x63,
	0x65, 0x12, 0x3b, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x23, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e,
	0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e,
	0x53, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x14,
	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76,
	0x61, 0x6c, 0x75, 0x65, 0x22, 0x12, 0x0a, 0x06, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x08,
	0x0a, 0x04, 0x44, 0x41, 0x54, 0x41, 0x10, 0x00, 0x22, 0x96, 0x01, 0x0a, 0x14, 0x50, 0x61, 0x72,
	0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x40, 0x0a, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e,
	0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
	0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x52, 0x06, 0x73, 0x63, 0x68,
	0x65, 0x6d, 0x65, 0x22, 0x3c, 0x0a, 0x06, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x18, 0x0a,
	0x14, 0x45, 0x4e, 0x56, 0x49, 0x52, 0x4f, 0x4e, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x56, 0x41, 0x52,
	0x49, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x52, 0x4f, 0x56, 0x49,
	0x53, 0x49, 0x4f, 0x4e, 0x45, 0x52, 0x5f, 0x56, 0x41, 0x52, 0x49, 0x41, 0x42, 0x4c, 0x45, 0x10,
	0x01, 0x22, 0x93, 0x01, 0x0a, 0x0e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x56,
	0x61, 0x6c, 0x75, 0x65, 0x12, 0x57, 0x0a, 0x12, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
	0x32, 0x28, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50,
	0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x52, 0x11, 0x64, 0x65, 0x73, 0x74,
	0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x12, 0x0a,
	0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
	0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x8d, 0x05, 0x0a, 0x0f, 0x50, 0x61, 0x72, 0x61,
	0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
	0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
	0x6e, 0x12, 0x43, 0x0a, 0x0e, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x73, 0x6f, 0x75,
	0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x76,
	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
	0x72, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74,
	0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f,
	0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4f, 0x76, 0x65, 0x72,
	0x72, 0x69, 0x64, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x52, 0x0a, 0x13, 0x64, 0x65,
	0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73,
	0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x44,
	0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x64, 0x65, 0x66, 0x61,
	0x75, 0x6c, 0x74, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3c,
	0x0a, 0x1a, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65,
	0x5f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x18, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64,
	0x65, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0f,
	0x72, 0x65, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x72, 0x65, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79,
	0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x5d, 0x0a, 0x16, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74,
	0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x18,
	0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f,
	0x6e, 0x65, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x63, 0x68,
	0x65, 0x6d, 0x61, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x52, 0x14,
	0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x53, 0x79,
	0x73, 0x74, 0x65, 0x6d, 0x12, 0x32, 0x0a, 0x15, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69,
	0x6f, 0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x13, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56,
	0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x76, 0x61, 0x6c, 0x69,
	0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x0a, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72,
	0x72, 0x6f, 0x72, 0x12, 0x31, 0x0a, 0x14, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x13, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e,
	0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x1f, 0x0a, 0x0a, 0x54, 0x79, 0x70, 0x65, 0x53, 0x79,
	0x73, 0x74, 0x65, 0x6d, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x6f, 0x6e, 0x65, 0x10, 0x00, 0x12, 0x07,
	0x0a, 0x03, 0x48, 0x43, 0x4c, 0x10, 0x01, 0x22, 0x4a, 0x0a, 0x03, 0x4c, 0x6f, 0x67, 0x12, 0x2b,
	0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e,
	0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x4c, 0x6f, 0x67, 0x4c,
	0x65, 0x76, 0x65, 0x6c, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x6f,
	0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6f, 0x75, 0x74,
	0x70, 0x75, 0x74, 0x22, 0x37, 0x0a, 0x14, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49,
	0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x41, 0x75, 0x74, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x69,
	0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x22, 0x8f, 0x03, 0x0a,
	0x05, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x03, 0x65, 0x6e,
	0x76, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73,
	0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6e, 0x76, 0x45,
	0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x65, 0x6e, 0x76, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x74, 0x61,
	0x72, 0x74, 0x75, 0x70, 0x5f, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x75, 0x70, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74,
	0x12, 0x29, 0x0a, 0x10, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x79,
	0x73, 0x74, 0x65, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6f, 0x70, 0x65, 0x72,
	0x61, 0x74, 0x69, 0x6e, 0x67, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x12, 0x22, 0x0a, 0x0c, 0x61,
	0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x0c, 0x61, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12,
	0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x24, 0x0a,
	0x04, 0x61, 0x70, 0x70, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x72,
	0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x41, 0x70, 0x70, 0x52, 0x04, 0x61,
	0x70, 0x70, 0x73, 0x12, 0x16, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x09, 0x20, 0x01,
	0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x21, 0x0a, 0x0b, 0x69,
	0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09,
	0x48, 0x00, 0x52, 0x0a, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x1a, 0x36,
	0x0a, 0x08, 0x45, 0x6e, 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
	0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
	0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x06, 0x0a, 0x04, 0x61, 0x75, 0x74, 0x68, 0x22, 0x7e,
	0x0a, 0x03, 0x41, 0x70, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d,
	0x6d, 0x61, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d,
	0x61, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x6c,
	0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x0c, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x50, 0x61, 0x74, 0x68, 0x22, 0x85,
	0x02, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e,
	0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
	0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74,
	0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x06, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20,
	0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65,
	0x72, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12,
	0x3a, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e,
	0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
	0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x69, 0x0a, 0x08, 0x4d,
	0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12,
	0x1c, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01,
	0x28, 0x08, 0x52, 0x09, 0x73, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x12, 0x17, 0x0a,
	0x07, 0x69, 0x73, 0x5f, 0x6e, 0x75, 0x6c, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06,
	0x69, 0x73, 0x4e, 0x75, 0x6c, 0x6c, 0x22, 0xfc, 0x01, 0x0a, 0x05, 0x50, 0x61, 0x72, 0x73, 0x65,
	0x1a, 0x27, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x64,
	0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x1a, 0x55, 0x0a, 0x08, 0x43, 0x6f, 0x6d,
	0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x49, 0x0a, 0x11, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
	0x65, 0x72, 0x5f, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50,
	0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x10,
	0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73,
	0x1a, 0x73, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x03,
	0x6c, 0x6f, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x72, 0x6f, 0x76,
	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x4c, 0x6f, 0x67, 0x48, 0x00, 0x52, 0x03, 0x6c,
	0x6f, 0x67, 0x12, 0x39, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
	0x65, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x73, 0x65, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74,
	0x65, 0x48, 0x00, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x42, 0x06, 0x0a,
	0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0xae, 0x07, 0x0a, 0x09, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73,
	0x69, 0x6f, 0x6e, 0x1a, 0xd1, 0x02, 0x0a, 0x08, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
	0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x53, 0x0a,
	0x14, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73,
	0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x70, 0x72,
	0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70,
	0x61, 0x63, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x77,
	0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69,
	0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f,
	0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x77, 0x6f, 0x72, 0x6b,
	0x73, 0x70, 0x61, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x77, 0x6f, 0x72,
	0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x4f, 0x77, 0x6e,
	0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x5f,
	0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70,
	0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61,
	0x63, 0x65, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x10, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x4f, 0x77, 0x6e, 0x65,
	0x72, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65,
	0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x07, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x13, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x4f, 0x77, 0x6e,
	0x65, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x1a, 0xd9, 0x01, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x72,
	0x74, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x12,
	0x46, 0x0a, 0x10, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x5f, 0x76, 0x61, 0x6c,
	0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x76,
	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
	0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
	0x72, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64,
	0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x76,
	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f,
	0x6e, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61,
	0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0c, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x64, 0x72,
	0x79, 0x5f, 0x72, 0x75, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x64, 0x72, 0x79,
	0x52, 0x75, 0x6e, 0x1a, 0x08, 0x0a, 0x06, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x1a, 0x80, 0x01,
	0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x05, 0x73, 0x74, 0x61,
	0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69,
	0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
	0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x48, 0x00, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12,
	0x37, 0x0a, 0x06, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50, 0x72,
	0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x48, 0x00,
	0x52, 0x06, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x42, 0x06, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65,
	0x1a, 0x6b, 0x0a, 0x08, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05,
	0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x73, 0x74, 0x61,
	0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x33, 0x0a, 0x09, 0x72, 0x65, 0x73, 0x6f,
	0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x72,
	0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
	0x63, 0x65, 0x52, 0x09, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x1a, 0x77, 0x0a,
	0x08, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x24, 0x0a, 0x03, 0x6c, 0x6f, 0x67,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69,
	0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x4c, 0x6f, 0x67, 0x48, 0x00, 0x52, 0x03, 0x6c, 0x6f, 0x67, 0x12,
	0x3d, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e,
	0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65,
	0x74, 0x65, 0x48, 0x00, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x42, 0x06,
	0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x2a, 0x3f, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x4c, 0x65, 0x76,
	0x65, 0x6c, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x52, 0x41, 0x43, 0x45, 0x10, 0x00, 0x12, 0x09, 0x0a,
	0x05, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e, 0x46, 0x4f,
	0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x57, 0x41, 0x52, 0x4e, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05,
	0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x04, 0x2a, 0x37, 0x0a, 0x13, 0x57, 0x6f, 0x72, 0x6b, 0x73,
	0x70, 0x61, 0x63, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x09,
	0x0a, 0x05, 0x53, 0x54, 0x41, 0x52, 0x54, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x54, 0x4f,
	0x50, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x53, 0x54, 0x52, 0x4f, 0x59, 0x10, 0x02,
	0x32, 0xa3, 0x01, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72,
	0x12, 0x42, 0x0a, 0x05, 0x50, 0x61, 0x72, 0x73, 0x65, 0x12, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x76,
	0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x73, 0x65, 0x2e, 0x52, 0x65,
	0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f,
	0x6e, 0x65, 0x72, 0x2e, 0x50, 0x61, 0x72, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x30, 0x01, 0x12, 0x50, 0x0a, 0x09, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f,
	0x6e, 0x12, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e,
	0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x1a, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x2e,
	0x50, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
	0x73, 0x65, 0x28, 0x01, 0x30, 0x01, 0x42, 0x2d, 0x5a, 0x2b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
	0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x72, 0x2f, 0x63, 0x6f, 0x64, 0x65, 0x72,
	0x2f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x65, 0x72, 0x73, 0x64, 0x6b, 0x2f,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_provisionersdk_proto_provisioner_proto_rawDescOnce sync.Once
	file_provisionersdk_proto_provisioner_proto_rawDescData = file_provisionersdk_proto_provisioner_proto_rawDesc
)

func file_provisionersdk_proto_provisioner_proto_rawDescGZIP() []byte {
	file_provisionersdk_proto_provisioner_proto_rawDescOnce.Do(func() {
		file_provisionersdk_proto_provisioner_proto_rawDescData = protoimpl.X.CompressGZIP(file_provisionersdk_proto_provisioner_proto_rawDescData)
	})
	return file_provisionersdk_proto_provisioner_proto_rawDescData
}

var file_provisionersdk_proto_provisioner_proto_enumTypes = make([]protoimpl.EnumInfo, 5)
var file_provisionersdk_proto_provisioner_proto_msgTypes = make([]protoimpl.MessageInfo, 23)
var file_provisionersdk_proto_provisioner_proto_goTypes = []interface{}{
	(LogLevel)(0),                    // 0: provisioner.LogLevel
	(WorkspaceTransition)(0),         // 1: provisioner.WorkspaceTransition
	(ParameterSource_Scheme)(0),      // 2: provisioner.ParameterSource.Scheme
	(ParameterDestination_Scheme)(0), // 3: provisioner.ParameterDestination.Scheme
	(ParameterSchema_TypeSystem)(0),  // 4: provisioner.ParameterSchema.TypeSystem
	(*Empty)(nil),                    // 5: provisioner.Empty
	(*ParameterSource)(nil),          // 6: provisioner.ParameterSource
	(*ParameterDestination)(nil),     // 7: provisioner.ParameterDestination
	(*ParameterValue)(nil),           // 8: provisioner.ParameterValue
	(*ParameterSchema)(nil),          // 9: provisioner.ParameterSchema
	(*Log)(nil),                      // 10: provisioner.Log
	(*InstanceIdentityAuth)(nil),     // 11: provisioner.InstanceIdentityAuth
	(*Agent)(nil),                    // 12: provisioner.Agent
	(*App)(nil),                      // 13: provisioner.App
	(*Resource)(nil),                 // 14: provisioner.Resource
	(*Parse)(nil),                    // 15: provisioner.Parse
	(*Provision)(nil),                // 16: provisioner.Provision
	nil,                              // 17: provisioner.Agent.EnvEntry
	(*Resource_Metadata)(nil),        // 18: provisioner.Resource.Metadata
	(*Parse_Request)(nil),            // 19: provisioner.Parse.Request
	(*Parse_Complete)(nil),           // 20: provisioner.Parse.Complete
	(*Parse_Response)(nil),           // 21: provisioner.Parse.Response
	(*Provision_Metadata)(nil),       // 22: provisioner.Provision.Metadata
	(*Provision_Start)(nil),          // 23: provisioner.Provision.Start
	(*Provision_Cancel)(nil),         // 24: provisioner.Provision.Cancel
	(*Provision_Request)(nil),        // 25: provisioner.Provision.Request
	(*Provision_Complete)(nil),       // 26: provisioner.Provision.Complete
	(*Provision_Response)(nil),       // 27: provisioner.Provision.Response
}
var file_provisionersdk_proto_provisioner_proto_depIdxs = []int32{
	2,  // 0: provisioner.ParameterSource.scheme:type_name -> provisioner.ParameterSource.Scheme
	3,  // 1: provisioner.ParameterDestination.scheme:type_name -> provisioner.ParameterDestination.Scheme
	3,  // 2: provisioner.ParameterValue.destination_scheme:type_name -> provisioner.ParameterDestination.Scheme
	6,  // 3: provisioner.ParameterSchema.default_source:type_name -> provisioner.ParameterSource
	7,  // 4: provisioner.ParameterSchema.default_destination:type_name -> provisioner.ParameterDestination
	4,  // 5: provisioner.ParameterSchema.validation_type_system:type_name -> provisioner.ParameterSchema.TypeSystem
	0,  // 6: provisioner.Log.level:type_name -> provisioner.LogLevel
	17, // 7: provisioner.Agent.env:type_name -> provisioner.Agent.EnvEntry
	13, // 8: provisioner.Agent.apps:type_name -> provisioner.App
	12, // 9: provisioner.Resource.agents:type_name -> provisioner.Agent
	18, // 10: provisioner.Resource.metadata:type_name -> provisioner.Resource.Metadata
	9,  // 11: provisioner.Parse.Complete.parameter_schemas:type_name -> provisioner.ParameterSchema
	10, // 12: provisioner.Parse.Response.log:type_name -> provisioner.Log
	20, // 13: provisioner.Parse.Response.complete:type_name -> provisioner.Parse.Complete
	1,  // 14: provisioner.Provision.Metadata.workspace_transition:type_name -> provisioner.WorkspaceTransition
	8,  // 15: provisioner.Provision.Start.parameter_values:type_name -> provisioner.ParameterValue
	22, // 16: provisioner.Provision.Start.metadata:type_name -> provisioner.Provision.Metadata
	23, // 17: provisioner.Provision.Request.start:type_name -> provisioner.Provision.Start
	24, // 18: provisioner.Provision.Request.cancel:type_name -> provisioner.Provision.Cancel
	14, // 19: provisioner.Provision.Complete.resources:type_name -> provisioner.Resource
	10, // 20: provisioner.Provision.Response.log:type_name -> provisioner.Log
	26, // 21: provisioner.Provision.Response.complete:type_name -> provisioner.Provision.Complete
	19, // 22: provisioner.Provisioner.Parse:input_type -> provisioner.Parse.Request
	25, // 23: provisioner.Provisioner.Provision:input_type -> provisioner.Provision.Request
	21, // 24: provisioner.Provisioner.Parse:output_type -> provisioner.Parse.Response
	27, // 25: provisioner.Provisioner.Provision:output_type -> provisioner.Provision.Response
	24, // [24:26] is the sub-list for method output_type
	22, // [22:24] is the sub-list for method input_type
	22, // [22:22] is the sub-list for extension type_name
	22, // [22:22] is the sub-list for extension extendee
	0,  // [0:22] is the sub-list for field type_name
}

func init() { file_provisionersdk_proto_provisioner_proto_init() }
func file_provisionersdk_proto_provisioner_proto_init() {
	if File_provisionersdk_proto_provisioner_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_provisionersdk_proto_provisioner_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Empty); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ParameterSource); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ParameterDestination); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ParameterValue); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ParameterSchema); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Log); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*InstanceIdentityAuth); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Agent); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*App); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Resource); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Parse); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Provision); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Resource_Metadata); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Parse_Request); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Parse_Complete); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Parse_Response); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Provision_Metadata); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Provision_Start); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Provision_Cancel); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Provision_Request); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Provision_Complete); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_provisionersdk_proto_provisioner_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Provision_Response); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	file_provisionersdk_proto_provisioner_proto_msgTypes[7].OneofWrappers = []interface{}{
		(*Agent_Token)(nil),
		(*Agent_InstanceId)(nil),
	}
	file_provisionersdk_proto_provisioner_proto_msgTypes[16].OneofWrappers = []interface{}{
		(*Parse_Response_Log)(nil),
		(*Parse_Response_Complete)(nil),
	}
	file_provisionersdk_proto_provisioner_proto_msgTypes[20].OneofWrappers = []interface{}{
		(*Provision_Request_Start)(nil),
		(*Provision_Request_Cancel)(nil),
	}
	file_provisionersdk_proto_provisioner_proto_msgTypes[22].OneofWrappers = []interface{}{
		(*Provision_Response_Log)(nil),
		(*Provision_Response_Complete)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_provisionersdk_proto_provisioner_proto_rawDesc,
			NumEnums:      5,
			NumMessages:   23,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_provisionersdk_proto_provisioner_proto_goTypes,
		DependencyIndexes: file_provisionersdk_proto_provisioner_proto_depIdxs,
		EnumInfos:         file_provisionersdk_proto_provisioner_proto_enumTypes,
		MessageInfos:      file_provisionersdk_proto_provisioner_proto_msgTypes,
	}.Build()
	File_provisionersdk_proto_provisioner_proto = out.File
	file_provisionersdk_proto_provisioner_proto_rawDesc = nil
	file_provisionersdk_proto_provisioner_proto_goTypes = nil
	file_provisionersdk_proto_provisioner_proto_depIdxs = nil
}
