// Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 syntax = "proto3"; package controller.custom_options.v1; import "google/protobuf/descriptor.proto"; option go_package = "github.com/hashicorp/boundary/sdk/pbs/controller/protooptions;protooptions"; extend google.protobuf.FieldOptions { // mask_mapping is an option which tags a field with the expected field mask // used by a companion proto if applied on the field this option is for. // The value of this option should be for the field name itself and not for // the json name. MaskMapping mask_mapping = 85464; // generate_sdk_option is a directive used when generating the SDK to // indicate that an option should be created for the field. This also controls // API options (DefaultX, WithX functions). bool generate_sdk_option = 85412; // subtype is used for oneOf attribute subtypes, to identify that we only need to parse attributes // of oneOf once and not for each option when generating the API // This will serve as a JSON key, used to transform that into the key the protobuf expects string subtype = 85555; // subtype_source_id is used to indicate that a field provided an id that can be used // to determine the subtype of a message. bool subtype_source_id = 85556; } extend google.protobuf.FileOptions { // domain is used to associate the messages in a file with a domain package. string domain = 85556; } message MaskMapping { string this = 1; string that = 2; }