// Copyright IBM Corp. 2020, 2026
// SPDX-License-Identifier: MPL-2.0

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.11
// 	protoc        (unknown)
// source: controller/api/services/v1/account_service.proto

package services

import (
	_ "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options"
	accounts "github.com/hashicorp/boundary/sdk/pbs/controller/api/resources/accounts"
	_ "github.com/hashicorp/boundary/sdk/pbs/controller/protooptions"
	_ "google.golang.org/genproto/googleapis/api/annotations"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"
)

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

type GetAccountRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the account that should be retrieved.
	Id            string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetAccountRequest) ProtoMessage() {}

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

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

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

type GetAccountResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *accounts.Account      `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetAccountResponse) ProtoMessage() {}

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

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

func (x *GetAccountResponse) GetItem() *accounts.Account {
	if x != nil {
		return x.Item
	}
	return nil
}

type ListAccountsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the auth method whose accounts should be listed.
	AuthMethodId string `protobuf:"bytes,1,opt,name=auth_method_id,proto3" json:"auth_method_id,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	// You can specify that the filter should only return items that match.
	// Refer to [filter expressions](https://developer.hashicorp.com/boundary/docs/concepts/filtering) for more information.
	Filter string `protobuf:"bytes,30,opt,name=filter,proto3" json:"filter,omitempty" class:"sensitive"` // @gotags: `class:"sensitive"`
	// An opaque token that Boundary uses to continue an existing iteration or
	// request updated items. If you do not specify a token, pagination
	// starts from the beginning. To learn more about list pagination
	// in Boundary, refer to [list pagination](https://developer.hashicorp.com/boundary/docs/api-clients/api/pagination).
	ListToken string `protobuf:"bytes,40,opt,name=list_token,proto3" json:"list_token,omitempty" class:"public"` // @gotags: `class:"public"`
	// The maximum size of a page in this iteration.
	// If you do not set a page size, Boundary uses the configured default page size.
	// If the page_size is greater than the default page size configured,
	// Boundary truncates the page size to this number.
	PageSize      uint32 `protobuf:"varint,50,opt,name=page_size,proto3" json:"page_size,omitempty" class:"public"` // @gotags: `class:"public"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListAccountsRequest) ProtoMessage() {}

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

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

func (x *ListAccountsRequest) GetAuthMethodId() string {
	if x != nil {
		return x.AuthMethodId
	}
	return ""
}

func (x *ListAccountsRequest) GetFilter() string {
	if x != nil {
		return x.Filter
	}
	return ""
}

func (x *ListAccountsRequest) GetListToken() string {
	if x != nil {
		return x.ListToken
	}
	return ""
}

func (x *ListAccountsRequest) GetPageSize() uint32 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

type ListAccountsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The list of accounts.
	Items []*accounts.Account `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// The type of response, either "delta" or "complete".
	// Delta signifies that this is part of a paginated result
	// or an update to a previously completed pagination.
	// Complete signifies that it is the last page.
	ResponseType string `protobuf:"bytes,2,opt,name=response_type,proto3" json:"response_type,omitempty" class:"public"` // @gotags: `class:"public"`
	// An opaque token used to continue an existing pagination or
	// request updated items. Use this token in the next list request
	// to request the next page.
	ListToken string `protobuf:"bytes,3,opt,name=list_token,proto3" json:"list_token,omitempty" class:"public"` // @gotags: `class:"public"`
	// The name of the field which the items are sorted by.
	SortBy string `protobuf:"bytes,4,opt,name=sort_by,proto3" json:"sort_by,omitempty" class:"public"` // @gotags: `class:"public"`
	// The direction of the sort, either "asc" or "desc".
	SortDir string `protobuf:"bytes,5,opt,name=sort_dir,proto3" json:"sort_dir,omitempty" class:"public"` // @gotags: `class:"public"`
	// A list of item IDs that have been removed since they were returned
	// as part of a pagination. They should be dropped from any client cache.
	// This may contain items that are not known to the cache, if they were
	// created and deleted between listings.
	RemovedIds []string `protobuf:"bytes,6,rep,name=removed_ids,proto3" json:"removed_ids,omitempty" class:"public"` // @gotags: `class:"public"`
	// An estimate at the total items available. This may change during pagination.
	EstItemCount  uint32 `protobuf:"varint,7,opt,name=est_item_count,proto3" json:"est_item_count,omitempty" class:"public"` // @gotags: `class:"public"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListAccountsResponse) ProtoMessage() {}

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

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

func (x *ListAccountsResponse) GetItems() []*accounts.Account {
	if x != nil {
		return x.Items
	}
	return nil
}

func (x *ListAccountsResponse) GetResponseType() string {
	if x != nil {
		return x.ResponseType
	}
	return ""
}

func (x *ListAccountsResponse) GetListToken() string {
	if x != nil {
		return x.ListToken
	}
	return ""
}

func (x *ListAccountsResponse) GetSortBy() string {
	if x != nil {
		return x.SortBy
	}
	return ""
}

func (x *ListAccountsResponse) GetSortDir() string {
	if x != nil {
		return x.SortDir
	}
	return ""
}

func (x *ListAccountsResponse) GetRemovedIds() []string {
	if x != nil {
		return x.RemovedIds
	}
	return nil
}

func (x *ListAccountsResponse) GetEstItemCount() uint32 {
	if x != nil {
		return x.EstItemCount
	}
	return 0
}

type CreateAccountRequest struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *accounts.Account      `protobuf:"bytes,2,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateAccountRequest) ProtoMessage() {}

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

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

func (x *CreateAccountRequest) GetItem() *accounts.Account {
	if x != nil {
		return x.Item
	}
	return nil
}

type CreateAccountResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Uri           string                 `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	Item          *accounts.Account      `protobuf:"bytes,2,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateAccountResponse) ProtoMessage() {}

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

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

func (x *CreateAccountResponse) GetUri() string {
	if x != nil {
		return x.Uri
	}
	return ""
}

func (x *CreateAccountResponse) GetItem() *accounts.Account {
	if x != nil {
		return x.Item
	}
	return nil
}

type UpdateAccountRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the account that should be updated.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	// A subset of the account that contains the fields to update.
	Item          *accounts.Account      `protobuf:"bytes,2,opt,name=item,proto3" json:"item,omitempty"`
	UpdateMask    *fieldmaskpb.FieldMask `protobuf:"bytes,3,opt,name=update_mask,proto3" json:"update_mask,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UpdateAccountRequest) ProtoMessage() {}

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

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

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

func (x *UpdateAccountRequest) GetItem() *accounts.Account {
	if x != nil {
		return x.Item
	}
	return nil
}

func (x *UpdateAccountRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
	if x != nil {
		return x.UpdateMask
	}
	return nil
}

type UpdateAccountResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *accounts.Account      `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UpdateAccountResponse) ProtoMessage() {}

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

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

func (x *UpdateAccountResponse) GetItem() *accounts.Account {
	if x != nil {
		return x.Item
	}
	return nil
}

type DeleteAccountRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the account to delete.
	Id            string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteAccountRequest) ProtoMessage() {}

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

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

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

type DeleteAccountResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteAccountResponse) ProtoMessage() {}

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

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

type SetPasswordRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the account for which the password should be set.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	// Version is used to ensure this resource has not changed.
	// The mutation will fail if the version does not match the latest known good version.
	Version uint32 `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty" class:"public"` // @gotags: `class:"public"`
	// The password that should be set.
	Password      string `protobuf:"bytes,3,opt,name=password,proto3" json:"password,omitempty" class:"secret"` // @gotags: `class:"secret"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*SetPasswordRequest) ProtoMessage() {}

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

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

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

func (x *SetPasswordRequest) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *SetPasswordRequest) GetPassword() string {
	if x != nil {
		return x.Password
	}
	return ""
}

type SetPasswordResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *accounts.Account      `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*SetPasswordResponse) ProtoMessage() {}

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

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

func (x *SetPasswordResponse) GetItem() *accounts.Account {
	if x != nil {
		return x.Item
	}
	return nil
}

type ChangePasswordRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the account for which the password should be changed.
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty" class:"public" eventstream:"observation"` // @gotags: `class:"public" eventstream:"observation"`
	// Version is used to ensure this resource has not changed.
	// The mutation will fail if the version does not match the latest known good version.
	Version uint32 `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty" class:"public"` // @gotags: `class:"public"`
	// The current password for the account.
	CurrentPassword string `protobuf:"bytes,3,opt,name=current_password,proto3" json:"current_password,omitempty" class:"secret"` // @gotags: `class:"secret"`
	// The new password that should be set.
	NewPassword   string `protobuf:"bytes,4,opt,name=new_password,proto3" json:"new_password,omitempty" class:"secret"` // @gotags: `class:"secret"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ChangePasswordRequest) ProtoMessage() {}

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

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

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

func (x *ChangePasswordRequest) GetVersion() uint32 {
	if x != nil {
		return x.Version
	}
	return 0
}

func (x *ChangePasswordRequest) GetCurrentPassword() string {
	if x != nil {
		return x.CurrentPassword
	}
	return ""
}

func (x *ChangePasswordRequest) GetNewPassword() string {
	if x != nil {
		return x.NewPassword
	}
	return ""
}

type ChangePasswordResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Item          *accounts.Account      `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ChangePasswordResponse) ProtoMessage() {}

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

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

func (x *ChangePasswordResponse) GetItem() *accounts.Account {
	if x != nil {
		return x.Item
	}
	return nil
}

var File_controller_api_services_v1_account_service_proto protoreflect.FileDescriptor

const file_controller_api_services_v1_account_service_proto_rawDesc = "" +
	"\n" +
	"0controller/api/services/v1/account_service.proto\x12\x1acontroller.api.services.v1\x1a2controller/api/resources/accounts/v1/account.proto\x1a*controller/custom_options/v1/options.proto\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\"#\n" +
	"\x11GetAccountRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\"W\n" +
	"\x12GetAccountResponse\x12A\n" +
	"\x04item\x18\x01 \x01(\v2-.controller.api.resources.accounts.v1.AccountR\x04item\"\x93\x01\n" +
	"\x13ListAccountsRequest\x12&\n" +
	"\x0eauth_method_id\x18\x01 \x01(\tR\x0eauth_method_id\x12\x16\n" +
	"\x06filter\x18\x1e \x01(\tR\x06filter\x12\x1e\n" +
	"\n" +
	"list_token\x18( \x01(\tR\n" +
	"list_token\x12\x1c\n" +
	"\tpage_size\x182 \x01(\rR\tpage_size\"\xa1\x02\n" +
	"\x14ListAccountsResponse\x12C\n" +
	"\x05items\x18\x01 \x03(\v2-.controller.api.resources.accounts.v1.AccountR\x05items\x12$\n" +
	"\rresponse_type\x18\x02 \x01(\tR\rresponse_type\x12\x1e\n" +
	"\n" +
	"list_token\x18\x03 \x01(\tR\n" +
	"list_token\x12\x18\n" +
	"\asort_by\x18\x04 \x01(\tR\asort_by\x12\x1a\n" +
	"\bsort_dir\x18\x05 \x01(\tR\bsort_dir\x12 \n" +
	"\vremoved_ids\x18\x06 \x03(\tR\vremoved_ids\x12&\n" +
	"\x0eest_item_count\x18\a \x01(\rR\x0eest_item_count\"Y\n" +
	"\x14CreateAccountRequest\x12A\n" +
	"\x04item\x18\x02 \x01(\v2-.controller.api.resources.accounts.v1.AccountR\x04item\"l\n" +
	"\x15CreateAccountResponse\x12\x10\n" +
	"\x03uri\x18\x01 \x01(\tR\x03uri\x12A\n" +
	"\x04item\x18\x02 \x01(\v2-.controller.api.resources.accounts.v1.AccountR\x04item\"\xa7\x01\n" +
	"\x14UpdateAccountRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12A\n" +
	"\x04item\x18\x02 \x01(\v2-.controller.api.resources.accounts.v1.AccountR\x04item\x12<\n" +
	"\vupdate_mask\x18\x03 \x01(\v2\x1a.google.protobuf.FieldMaskR\vupdate_mask\"Z\n" +
	"\x15UpdateAccountResponse\x12A\n" +
	"\x04item\x18\x01 \x01(\v2-.controller.api.resources.accounts.v1.AccountR\x04item\"&\n" +
	"\x14DeleteAccountRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\"\x17\n" +
	"\x15DeleteAccountResponse\"Z\n" +
	"\x12SetPasswordRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n" +
	"\aversion\x18\x02 \x01(\rR\aversion\x12\x1a\n" +
	"\bpassword\x18\x03 \x01(\tR\bpassword\"X\n" +
	"\x13SetPasswordResponse\x12A\n" +
	"\x04item\x18\x01 \x01(\v2-.controller.api.resources.accounts.v1.AccountR\x04item\"\x91\x01\n" +
	"\x15ChangePasswordRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n" +
	"\aversion\x18\x02 \x01(\rR\aversion\x12*\n" +
	"\x10current_password\x18\x03 \x01(\tR\x10current_password\x12\"\n" +
	"\fnew_password\x18\x04 \x01(\tR\fnew_password\"[\n" +
	"\x16ChangePasswordResponse\x12A\n" +
	"\x04item\x18\x01 \x01(\v2-.controller.api.resources.accounts.v1.AccountR\x04item2\x9d\r\n" +
	"\x0eAccountService\x12\xbc\x01\n" +
	"\n" +
	"GetAccount\x12-.controller.api.services.v1.GetAccountRequest\x1a..controller.api.services.v1.GetAccountResponse\"O\x92A-\x12+Gets a single account based on the input ID\x82\xd3\xe4\x93\x02\x19b\x04item\x12\x11/v1/accounts/{id}\x12\xb9\x01\n" +
	"\fListAccounts\x12/.controller.api.services.v1.ListAccountsRequest\x1a0.controller.api.services.v1.ListAccountsResponse\"F\x92A/\x12-Lists all accounts in a specific auth method.\x82\xd3\xe4\x93\x02\x0e\x12\f/v1/accounts\x12\xd0\x01\n" +
	"\rCreateAccount\x120.controller.api.services.v1.CreateAccountRequest\x1a1.controller.api.services.v1.CreateAccountResponse\"Z\x92A7\x125Creates a single account in the provided auth method.\x82\xd3\xe4\x93\x02\x1a:\x04itemb\x04item\"\f/v1/accounts\x12\xb3\x01\n" +
	"\rUpdateAccount\x120.controller.api.services.v1.UpdateAccountRequest\x1a1.controller.api.services.v1.UpdateAccountResponse\"=\x92A\x15\x12\x13Updates an account.\x82\xd3\xe4\x93\x02\x1f:\x04itemb\x04item2\x11/v1/accounts/{id}\x12\xa7\x01\n" +
	"\rDeleteAccount\x120.controller.api.services.v1.DeleteAccountRequest\x1a1.controller.api.services.v1.DeleteAccountResponse\"1\x92A\x15\x12\x13Deletes an account.\x82\xd3\xe4\x93\x02\x13*\x11/v1/accounts/{id}\x12\xcf\x01\n" +
	"\vSetPassword\x12..controller.api.services.v1.SetPasswordRequest\x1a/.controller.api.services.v1.SetPasswordResponse\"_\x92A-\x12+Sets the password for the provided account.\x82\xd3\xe4\x93\x02):\x01*b\x04item\"\x1e/v1/accounts/{id}:set-password\x12\xdb\x01\n" +
	"\x0eChangePassword\x121.controller.api.services.v1.ChangePasswordRequest\x1a2.controller.api.services.v1.ChangePasswordResponse\"b\x92A-\x12+Sets the password for the provided account.\x82\xd3\xe4\x93\x02,:\x01*b\x04item\"!/v1/accounts/{id}:change-password\x1a\xac\x02\x92A\xa8\x02\n" +
	"\x0fAccount service\x12\x91\x01The account service exposes endpoints for interacting with accounts in Boundary. Accounts belong to an auth method and are associated with users.\x1a\x80\x01\n" +
	"0Read about accounts in the Boundary domain model\x12Lhttps://developer.hashicorp.com/boundary/docs/concepts/domain-model/accountsBU\xa2\xe3)\x04authZKgithub.com/hashicorp/boundary/internal/gen/controller/api/services;servicesb\x06proto3"

var (
	file_controller_api_services_v1_account_service_proto_rawDescOnce sync.Once
	file_controller_api_services_v1_account_service_proto_rawDescData []byte
)

func file_controller_api_services_v1_account_service_proto_rawDescGZIP() []byte {
	file_controller_api_services_v1_account_service_proto_rawDescOnce.Do(func() {
		file_controller_api_services_v1_account_service_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_controller_api_services_v1_account_service_proto_rawDesc), len(file_controller_api_services_v1_account_service_proto_rawDesc)))
	})
	return file_controller_api_services_v1_account_service_proto_rawDescData
}

var file_controller_api_services_v1_account_service_proto_msgTypes = make([]protoimpl.MessageInfo, 14)
var file_controller_api_services_v1_account_service_proto_goTypes = []any{
	(*GetAccountRequest)(nil),      // 0: controller.api.services.v1.GetAccountRequest
	(*GetAccountResponse)(nil),     // 1: controller.api.services.v1.GetAccountResponse
	(*ListAccountsRequest)(nil),    // 2: controller.api.services.v1.ListAccountsRequest
	(*ListAccountsResponse)(nil),   // 3: controller.api.services.v1.ListAccountsResponse
	(*CreateAccountRequest)(nil),   // 4: controller.api.services.v1.CreateAccountRequest
	(*CreateAccountResponse)(nil),  // 5: controller.api.services.v1.CreateAccountResponse
	(*UpdateAccountRequest)(nil),   // 6: controller.api.services.v1.UpdateAccountRequest
	(*UpdateAccountResponse)(nil),  // 7: controller.api.services.v1.UpdateAccountResponse
	(*DeleteAccountRequest)(nil),   // 8: controller.api.services.v1.DeleteAccountRequest
	(*DeleteAccountResponse)(nil),  // 9: controller.api.services.v1.DeleteAccountResponse
	(*SetPasswordRequest)(nil),     // 10: controller.api.services.v1.SetPasswordRequest
	(*SetPasswordResponse)(nil),    // 11: controller.api.services.v1.SetPasswordResponse
	(*ChangePasswordRequest)(nil),  // 12: controller.api.services.v1.ChangePasswordRequest
	(*ChangePasswordResponse)(nil), // 13: controller.api.services.v1.ChangePasswordResponse
	(*accounts.Account)(nil),       // 14: controller.api.resources.accounts.v1.Account
	(*fieldmaskpb.FieldMask)(nil),  // 15: google.protobuf.FieldMask
}
var file_controller_api_services_v1_account_service_proto_depIdxs = []int32{
	14, // 0: controller.api.services.v1.GetAccountResponse.item:type_name -> controller.api.resources.accounts.v1.Account
	14, // 1: controller.api.services.v1.ListAccountsResponse.items:type_name -> controller.api.resources.accounts.v1.Account
	14, // 2: controller.api.services.v1.CreateAccountRequest.item:type_name -> controller.api.resources.accounts.v1.Account
	14, // 3: controller.api.services.v1.CreateAccountResponse.item:type_name -> controller.api.resources.accounts.v1.Account
	14, // 4: controller.api.services.v1.UpdateAccountRequest.item:type_name -> controller.api.resources.accounts.v1.Account
	15, // 5: controller.api.services.v1.UpdateAccountRequest.update_mask:type_name -> google.protobuf.FieldMask
	14, // 6: controller.api.services.v1.UpdateAccountResponse.item:type_name -> controller.api.resources.accounts.v1.Account
	14, // 7: controller.api.services.v1.SetPasswordResponse.item:type_name -> controller.api.resources.accounts.v1.Account
	14, // 8: controller.api.services.v1.ChangePasswordResponse.item:type_name -> controller.api.resources.accounts.v1.Account
	0,  // 9: controller.api.services.v1.AccountService.GetAccount:input_type -> controller.api.services.v1.GetAccountRequest
	2,  // 10: controller.api.services.v1.AccountService.ListAccounts:input_type -> controller.api.services.v1.ListAccountsRequest
	4,  // 11: controller.api.services.v1.AccountService.CreateAccount:input_type -> controller.api.services.v1.CreateAccountRequest
	6,  // 12: controller.api.services.v1.AccountService.UpdateAccount:input_type -> controller.api.services.v1.UpdateAccountRequest
	8,  // 13: controller.api.services.v1.AccountService.DeleteAccount:input_type -> controller.api.services.v1.DeleteAccountRequest
	10, // 14: controller.api.services.v1.AccountService.SetPassword:input_type -> controller.api.services.v1.SetPasswordRequest
	12, // 15: controller.api.services.v1.AccountService.ChangePassword:input_type -> controller.api.services.v1.ChangePasswordRequest
	1,  // 16: controller.api.services.v1.AccountService.GetAccount:output_type -> controller.api.services.v1.GetAccountResponse
	3,  // 17: controller.api.services.v1.AccountService.ListAccounts:output_type -> controller.api.services.v1.ListAccountsResponse
	5,  // 18: controller.api.services.v1.AccountService.CreateAccount:output_type -> controller.api.services.v1.CreateAccountResponse
	7,  // 19: controller.api.services.v1.AccountService.UpdateAccount:output_type -> controller.api.services.v1.UpdateAccountResponse
	9,  // 20: controller.api.services.v1.AccountService.DeleteAccount:output_type -> controller.api.services.v1.DeleteAccountResponse
	11, // 21: controller.api.services.v1.AccountService.SetPassword:output_type -> controller.api.services.v1.SetPasswordResponse
	13, // 22: controller.api.services.v1.AccountService.ChangePassword:output_type -> controller.api.services.v1.ChangePasswordResponse
	16, // [16:23] is the sub-list for method output_type
	9,  // [9:16] is the sub-list for method input_type
	9,  // [9:9] is the sub-list for extension type_name
	9,  // [9:9] is the sub-list for extension extendee
	0,  // [0:9] is the sub-list for field type_name
}

func init() { file_controller_api_services_v1_account_service_proto_init() }
func file_controller_api_services_v1_account_service_proto_init() {
	if File_controller_api_services_v1_account_service_proto != nil {
		return
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_controller_api_services_v1_account_service_proto_rawDesc), len(file_controller_api_services_v1_account_service_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   14,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_controller_api_services_v1_account_service_proto_goTypes,
		DependencyIndexes: file_controller_api_services_v1_account_service_proto_depIdxs,
		MessageInfos:      file_controller_api_services_v1_account_service_proto_msgTypes,
	}.Build()
	File_controller_api_services_v1_account_service_proto = out.File
	file_controller_api_services_v1_account_service_proto_goTypes = nil
	file_controller_api_services_v1_account_service_proto_depIdxs = nil
}
