diff --git a/packages/google-cloud-datacatalog/protos/google/cloud/datacatalog/v1/common.proto b/packages/google-cloud-datacatalog/protos/google/cloud/datacatalog/v1/common.proto index efe049e9d57..bb3ec486b46 100644 --- a/packages/google-cloud-datacatalog/protos/google/cloud/datacatalog/v1/common.proto +++ b/packages/google-cloud-datacatalog/protos/google/cloud/datacatalog/v1/common.proto @@ -63,6 +63,9 @@ enum IntegratedSystem { // Looker LOOKER = 9; + + // Vertex AI + VERTEX_AI = 10; } // This enum describes all the systems that manage diff --git a/packages/google-cloud-datacatalog/protos/google/cloud/datacatalog/v1/datacatalog.proto b/packages/google-cloud-datacatalog/protos/google/cloud/datacatalog/v1/datacatalog.proto index 3d9da1cd8d1..9c6452db265 100644 --- a/packages/google-cloud-datacatalog/protos/google/cloud/datacatalog/v1/datacatalog.proto +++ b/packages/google-cloud-datacatalog/protos/google/cloud/datacatalog/v1/datacatalog.proto @@ -1172,12 +1172,18 @@ message Entry { // only for entries with the `ROUTINE` type. RoutineSpec routine_spec = 28; + // Specification that applies to a dataset. + DatasetSpec dataset_spec = 32; + // Specification that applies to a fileset resource. Valid only // for entries with the `FILESET` type. FilesetSpec fileset_spec = 33; // Specification that applies to a Service resource. ServiceSpec service_spec = 42; + + // Model specification. + ModelSpec model_spec = 43; } // Display name of an entry. @@ -1372,6 +1378,16 @@ message RoutineSpec { } } +// Specification that applies to a dataset. Valid only for +// entries with the `DATASET` type. +message DatasetSpec { + // Fields specific to the source system. + oneof system_spec { + // Vertex AI Dataset specific fields + VertexDatasetSpec vertex_dataset_spec = 2; + } +} + // Specification that applies to // entries that are part `SQL_DATABASE` system // (user_specified_type) @@ -1468,6 +1484,121 @@ message ServiceSpec { } } +// Detail description of the source information of a Vertex model. +message VertexModelSourceInfo { + // Source of the model. + enum ModelSourceType { + // Should not be used. + MODEL_SOURCE_TYPE_UNSPECIFIED = 0; + + // The Model is uploaded by automl training pipeline. + AUTOML = 1; + + // The Model is uploaded by user or custom training pipeline. + CUSTOM = 2; + + // The Model is registered and sync'ed from BigQuery ML. + BQML = 3; + + // The Model is saved or tuned from Model Garden. + MODEL_GARDEN = 4; + } + + // Type of the model source. + ModelSourceType source_type = 1; + + // If this Model is copy of another Model. If true then + // [source_type][google.cloud.datacatalog.v1.VertexModelSourceInfo.source_type] + // pertains to the original. + bool copy = 2; +} + +// Specification for vertex model resources. +message VertexModelSpec { + // The version ID of the model. + string version_id = 1; + + // User provided version aliases so that a model version can be referenced via + // alias + repeated string version_aliases = 2; + + // The description of this version. + string version_description = 3; + + // Source of a Vertex model. + VertexModelSourceInfo vertex_model_source_info = 4; + + // URI of the Docker image to be used as the custom container for serving + // predictions. + string container_image_uri = 5; +} + +// Specification for vertex dataset resources. +message VertexDatasetSpec { + // Type of data stored in the dataset. + enum DataType { + // Should not be used. + DATA_TYPE_UNSPECIFIED = 0; + + // Structured data dataset. + TABLE = 1; + + // Image dataset which supports ImageClassification, ImageObjectDetection + // and ImageSegmentation problems. + IMAGE = 2; + + // Document dataset which supports TextClassification, TextExtraction and + // TextSentiment problems. + TEXT = 3; + + // Video dataset which supports VideoClassification, VideoObjectTracking and + // VideoActionRecognition problems. + VIDEO = 4; + + // Conversation dataset which supports conversation problems. + CONVERSATION = 5; + + // TimeSeries dataset. + TIME_SERIES = 6; + + // Document dataset which supports DocumentAnnotation problems. + DOCUMENT = 7; + + // TextToSpeech dataset which supports TextToSpeech problems. + TEXT_TO_SPEECH = 8; + + // Translation dataset which supports Translation problems. + TRANSLATION = 9; + + // Store Vision dataset which is used for HITL integration. + STORE_VISION = 10; + + // Enterprise Knowledge Graph dataset which is used for HITL labeling + // integration. + ENTERPRISE_KNOWLEDGE_GRAPH = 11; + + // Text prompt dataset which supports Large Language Models. + TEXT_PROMPT = 12; + } + + // The number of DataItems in this Dataset. Only apply for non-structured + // Dataset. + int64 data_item_count = 1; + + // Type of the dataset. + DataType data_type = 2; +} + +// Specification that applies to a model. Valid only for +// entries with the `MODEL` type. +message ModelSpec { + // System spec + oneof system_spec { + // Specification for vertex model resources. + VertexModelSpec vertex_model_spec = 1; + } +} + // Business Context of the entry. message BusinessContext { // Entry overview fields for rich text descriptions of entries. diff --git a/packages/google-cloud-datacatalog/protos/protos.d.ts b/packages/google-cloud-datacatalog/protos/protos.d.ts index fefcb600f52..a98ffb1996e 100644 --- a/packages/google-cloud-datacatalog/protos/protos.d.ts +++ b/packages/google-cloud-datacatalog/protos/protos.d.ts @@ -476,7 +476,8 @@ export namespace google { CLOUD_SPANNER = 6, CLOUD_BIGTABLE = 7, CLOUD_SQL = 8, - LOOKER = 9 + LOOKER = 9, + VERTEX_AI = 10 } /** ManagingSystem enum. */ @@ -3038,12 +3039,18 @@ export namespace google { /** Entry routineSpec */ routineSpec?: (google.cloud.datacatalog.v1.IRoutineSpec|null); + /** Entry datasetSpec */ + datasetSpec?: (google.cloud.datacatalog.v1.IDatasetSpec|null); + /** Entry filesetSpec */ filesetSpec?: (google.cloud.datacatalog.v1.IFilesetSpec|null); /** Entry serviceSpec */ serviceSpec?: (google.cloud.datacatalog.v1.IServiceSpec|null); + /** Entry modelSpec */ + modelSpec?: (google.cloud.datacatalog.v1.IModelSpec|null); + /** Entry displayName */ displayName?: (string|null); @@ -3129,12 +3136,18 @@ export namespace google { /** Entry routineSpec. */ public routineSpec?: (google.cloud.datacatalog.v1.IRoutineSpec|null); + /** Entry datasetSpec. */ + public datasetSpec?: (google.cloud.datacatalog.v1.IDatasetSpec|null); + /** Entry filesetSpec. */ public filesetSpec?: (google.cloud.datacatalog.v1.IFilesetSpec|null); /** Entry serviceSpec. */ public serviceSpec?: (google.cloud.datacatalog.v1.IServiceSpec|null); + /** Entry modelSpec. */ + public modelSpec?: (google.cloud.datacatalog.v1.IModelSpec|null); + /** Entry displayName. */ public displayName: string; @@ -3175,7 +3188,7 @@ export namespace google { public typeSpec?: ("gcsFilesetSpec"|"bigqueryTableSpec"|"bigqueryDateShardedSpec"); /** Entry spec. */ - public spec?: ("databaseTableSpec"|"dataSourceConnectionSpec"|"routineSpec"|"filesetSpec"|"serviceSpec"); + public spec?: ("databaseTableSpec"|"dataSourceConnectionSpec"|"routineSpec"|"datasetSpec"|"filesetSpec"|"serviceSpec"|"modelSpec"); /** * Creates a new Entry instance using the specified properties. @@ -3950,6 +3963,106 @@ export namespace google { } } + /** Properties of a DatasetSpec. */ + interface IDatasetSpec { + + /** DatasetSpec vertexDatasetSpec */ + vertexDatasetSpec?: (google.cloud.datacatalog.v1.IVertexDatasetSpec|null); + } + + /** Represents a DatasetSpec. */ + class DatasetSpec implements IDatasetSpec { + + /** + * Constructs a new DatasetSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.datacatalog.v1.IDatasetSpec); + + /** DatasetSpec vertexDatasetSpec. */ + public vertexDatasetSpec?: (google.cloud.datacatalog.v1.IVertexDatasetSpec|null); + + /** DatasetSpec systemSpec. */ + public systemSpec?: "vertexDatasetSpec"; + + /** + * Creates a new DatasetSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns DatasetSpec instance + */ + public static create(properties?: google.cloud.datacatalog.v1.IDatasetSpec): google.cloud.datacatalog.v1.DatasetSpec; + + /** + * Encodes the specified DatasetSpec message. Does not implicitly {@link google.cloud.datacatalog.v1.DatasetSpec.verify|verify} messages. + * @param message DatasetSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.datacatalog.v1.IDatasetSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified DatasetSpec message, length delimited. Does not implicitly {@link google.cloud.datacatalog.v1.DatasetSpec.verify|verify} messages. + * @param message DatasetSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.datacatalog.v1.IDatasetSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a DatasetSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns DatasetSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.datacatalog.v1.DatasetSpec; + + /** + * Decodes a DatasetSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns DatasetSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.datacatalog.v1.DatasetSpec; + + /** + * Verifies a DatasetSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a DatasetSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns DatasetSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.datacatalog.v1.DatasetSpec; + + /** + * Creates a plain object from a DatasetSpec message. Also converts values to other types if specified. + * @param message DatasetSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.datacatalog.v1.DatasetSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this DatasetSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for DatasetSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + /** Properties of a SqlDatabaseSystemSpec. */ interface ISqlDatabaseSystemSpec { @@ -4598,6 +4711,465 @@ export namespace google { public static getTypeUrl(typeUrlPrefix?: string): string; } + /** Properties of a VertexModelSourceInfo. */ + interface IVertexModelSourceInfo { + + /** VertexModelSourceInfo sourceType */ + sourceType?: (google.cloud.datacatalog.v1.VertexModelSourceInfo.ModelSourceType|keyof typeof google.cloud.datacatalog.v1.VertexModelSourceInfo.ModelSourceType|null); + + /** VertexModelSourceInfo copy */ + copy?: (boolean|null); + } + + /** Represents a VertexModelSourceInfo. */ + class VertexModelSourceInfo implements IVertexModelSourceInfo { + + /** + * Constructs a new VertexModelSourceInfo. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.datacatalog.v1.IVertexModelSourceInfo); + + /** VertexModelSourceInfo sourceType. */ + public sourceType: (google.cloud.datacatalog.v1.VertexModelSourceInfo.ModelSourceType|keyof typeof google.cloud.datacatalog.v1.VertexModelSourceInfo.ModelSourceType); + + /** VertexModelSourceInfo copy. */ + public copy: boolean; + + /** + * Creates a new VertexModelSourceInfo instance using the specified properties. + * @param [properties] Properties to set + * @returns VertexModelSourceInfo instance + */ + public static create(properties?: google.cloud.datacatalog.v1.IVertexModelSourceInfo): google.cloud.datacatalog.v1.VertexModelSourceInfo; + + /** + * Encodes the specified VertexModelSourceInfo message. Does not implicitly {@link google.cloud.datacatalog.v1.VertexModelSourceInfo.verify|verify} messages. + * @param message VertexModelSourceInfo message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.datacatalog.v1.IVertexModelSourceInfo, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified VertexModelSourceInfo message, length delimited. Does not implicitly {@link google.cloud.datacatalog.v1.VertexModelSourceInfo.verify|verify} messages. + * @param message VertexModelSourceInfo message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.datacatalog.v1.IVertexModelSourceInfo, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a VertexModelSourceInfo message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns VertexModelSourceInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.datacatalog.v1.VertexModelSourceInfo; + + /** + * Decodes a VertexModelSourceInfo message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns VertexModelSourceInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.datacatalog.v1.VertexModelSourceInfo; + + /** + * Verifies a VertexModelSourceInfo message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a VertexModelSourceInfo message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns VertexModelSourceInfo + */ + public static fromObject(object: { [k: string]: any }): google.cloud.datacatalog.v1.VertexModelSourceInfo; + + /** + * Creates a plain object from a VertexModelSourceInfo message. Also converts values to other types if specified. + * @param message VertexModelSourceInfo + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.datacatalog.v1.VertexModelSourceInfo, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this VertexModelSourceInfo to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for VertexModelSourceInfo + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + namespace VertexModelSourceInfo { + + /** ModelSourceType enum. */ + enum ModelSourceType { + MODEL_SOURCE_TYPE_UNSPECIFIED = 0, + AUTOML = 1, + CUSTOM = 2, + BQML = 3, + MODEL_GARDEN = 4 + } + } + + /** Properties of a VertexModelSpec. */ + interface IVertexModelSpec { + + /** VertexModelSpec versionId */ + versionId?: (string|null); + + /** VertexModelSpec versionAliases */ + versionAliases?: (string[]|null); + + /** VertexModelSpec versionDescription */ + versionDescription?: (string|null); + + /** VertexModelSpec vertexModelSourceInfo */ + vertexModelSourceInfo?: (google.cloud.datacatalog.v1.IVertexModelSourceInfo|null); + + /** VertexModelSpec containerImageUri */ + containerImageUri?: (string|null); + } + + /** Represents a VertexModelSpec. */ + class VertexModelSpec implements IVertexModelSpec { + + /** + * Constructs a new VertexModelSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.datacatalog.v1.IVertexModelSpec); + + /** VertexModelSpec versionId. */ + public versionId: string; + + /** VertexModelSpec versionAliases. */ + public versionAliases: string[]; + + /** VertexModelSpec versionDescription. */ + public versionDescription: string; + + /** VertexModelSpec vertexModelSourceInfo. */ + public vertexModelSourceInfo?: (google.cloud.datacatalog.v1.IVertexModelSourceInfo|null); + + /** VertexModelSpec containerImageUri. */ + public containerImageUri: string; + + /** + * Creates a new VertexModelSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns VertexModelSpec instance + */ + public static create(properties?: google.cloud.datacatalog.v1.IVertexModelSpec): google.cloud.datacatalog.v1.VertexModelSpec; + + /** + * Encodes the specified VertexModelSpec message. Does not implicitly {@link google.cloud.datacatalog.v1.VertexModelSpec.verify|verify} messages. + * @param message VertexModelSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.datacatalog.v1.IVertexModelSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified VertexModelSpec message, length delimited. Does not implicitly {@link google.cloud.datacatalog.v1.VertexModelSpec.verify|verify} messages. + * @param message VertexModelSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.datacatalog.v1.IVertexModelSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a VertexModelSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns VertexModelSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.datacatalog.v1.VertexModelSpec; + + /** + * Decodes a VertexModelSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns VertexModelSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.datacatalog.v1.VertexModelSpec; + + /** + * Verifies a VertexModelSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a VertexModelSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns VertexModelSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.datacatalog.v1.VertexModelSpec; + + /** + * Creates a plain object from a VertexModelSpec message. Also converts values to other types if specified. + * @param message VertexModelSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.datacatalog.v1.VertexModelSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this VertexModelSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for VertexModelSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + /** Properties of a VertexDatasetSpec. */ + interface IVertexDatasetSpec { + + /** VertexDatasetSpec dataItemCount */ + dataItemCount?: (number|Long|string|null); + + /** VertexDatasetSpec dataType */ + dataType?: (google.cloud.datacatalog.v1.VertexDatasetSpec.DataType|keyof typeof google.cloud.datacatalog.v1.VertexDatasetSpec.DataType|null); + } + + /** Represents a VertexDatasetSpec. */ + class VertexDatasetSpec implements IVertexDatasetSpec { + + /** + * Constructs a new VertexDatasetSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.datacatalog.v1.IVertexDatasetSpec); + + /** VertexDatasetSpec dataItemCount. */ + public dataItemCount: (number|Long|string); + + /** VertexDatasetSpec dataType. */ + public dataType: (google.cloud.datacatalog.v1.VertexDatasetSpec.DataType|keyof typeof google.cloud.datacatalog.v1.VertexDatasetSpec.DataType); + + /** + * Creates a new VertexDatasetSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns VertexDatasetSpec instance + */ + public static create(properties?: google.cloud.datacatalog.v1.IVertexDatasetSpec): google.cloud.datacatalog.v1.VertexDatasetSpec; + + /** + * Encodes the specified VertexDatasetSpec message. Does not implicitly {@link google.cloud.datacatalog.v1.VertexDatasetSpec.verify|verify} messages. + * @param message VertexDatasetSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.datacatalog.v1.IVertexDatasetSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified VertexDatasetSpec message, length delimited. Does not implicitly {@link google.cloud.datacatalog.v1.VertexDatasetSpec.verify|verify} messages. + * @param message VertexDatasetSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.datacatalog.v1.IVertexDatasetSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a VertexDatasetSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns VertexDatasetSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.datacatalog.v1.VertexDatasetSpec; + + /** + * Decodes a VertexDatasetSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns VertexDatasetSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.datacatalog.v1.VertexDatasetSpec; + + /** + * Verifies a VertexDatasetSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a VertexDatasetSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns VertexDatasetSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.datacatalog.v1.VertexDatasetSpec; + + /** + * Creates a plain object from a VertexDatasetSpec message. Also converts values to other types if specified. + * @param message VertexDatasetSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.datacatalog.v1.VertexDatasetSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this VertexDatasetSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for VertexDatasetSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + + namespace VertexDatasetSpec { + + /** DataType enum. */ + enum DataType { + DATA_TYPE_UNSPECIFIED = 0, + TABLE = 1, + IMAGE = 2, + TEXT = 3, + VIDEO = 4, + CONVERSATION = 5, + TIME_SERIES = 6, + DOCUMENT = 7, + TEXT_TO_SPEECH = 8, + TRANSLATION = 9, + STORE_VISION = 10, + ENTERPRISE_KNOWLEDGE_GRAPH = 11, + TEXT_PROMPT = 12 + } + } + + /** Properties of a ModelSpec. */ + interface IModelSpec { + + /** ModelSpec vertexModelSpec */ + vertexModelSpec?: (google.cloud.datacatalog.v1.IVertexModelSpec|null); + } + + /** Represents a ModelSpec. */ + class ModelSpec implements IModelSpec { + + /** + * Constructs a new ModelSpec. + * @param [properties] Properties to set + */ + constructor(properties?: google.cloud.datacatalog.v1.IModelSpec); + + /** ModelSpec vertexModelSpec. */ + public vertexModelSpec?: (google.cloud.datacatalog.v1.IVertexModelSpec|null); + + /** ModelSpec systemSpec. */ + public systemSpec?: "vertexModelSpec"; + + /** + * Creates a new ModelSpec instance using the specified properties. + * @param [properties] Properties to set + * @returns ModelSpec instance + */ + public static create(properties?: google.cloud.datacatalog.v1.IModelSpec): google.cloud.datacatalog.v1.ModelSpec; + + /** + * Encodes the specified ModelSpec message. Does not implicitly {@link google.cloud.datacatalog.v1.ModelSpec.verify|verify} messages. + * @param message ModelSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: google.cloud.datacatalog.v1.IModelSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ModelSpec message, length delimited. Does not implicitly {@link google.cloud.datacatalog.v1.ModelSpec.verify|verify} messages. + * @param message ModelSpec message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: google.cloud.datacatalog.v1.IModelSpec, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ModelSpec message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ModelSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.datacatalog.v1.ModelSpec; + + /** + * Decodes a ModelSpec message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ModelSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.datacatalog.v1.ModelSpec; + + /** + * Verifies a ModelSpec message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ModelSpec message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ModelSpec + */ + public static fromObject(object: { [k: string]: any }): google.cloud.datacatalog.v1.ModelSpec; + + /** + * Creates a plain object from a ModelSpec message. Also converts values to other types if specified. + * @param message ModelSpec + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: google.cloud.datacatalog.v1.ModelSpec, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ModelSpec to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + + /** + * Gets the default type url for ModelSpec + * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns The default type url + */ + public static getTypeUrl(typeUrlPrefix?: string): string; + } + /** Properties of a BusinessContext. */ interface IBusinessContext { diff --git a/packages/google-cloud-datacatalog/protos/protos.js b/packages/google-cloud-datacatalog/protos/protos.js index a2d74acffe0..243e4492e4f 100644 --- a/packages/google-cloud-datacatalog/protos/protos.js +++ b/packages/google-cloud-datacatalog/protos/protos.js @@ -1128,6 +1128,7 @@ * @property {number} CLOUD_BIGTABLE=7 CLOUD_BIGTABLE value * @property {number} CLOUD_SQL=8 CLOUD_SQL value * @property {number} LOOKER=9 LOOKER value + * @property {number} VERTEX_AI=10 VERTEX_AI value */ v1.IntegratedSystem = (function() { var valuesById = {}, values = Object.create(valuesById); @@ -1140,6 +1141,7 @@ values[valuesById[7] = "CLOUD_BIGTABLE"] = 7; values[valuesById[8] = "CLOUD_SQL"] = 8; values[valuesById[9] = "LOOKER"] = 9; + values[valuesById[10] = "VERTEX_AI"] = 10; return values; })(); @@ -6598,8 +6600,10 @@ * @property {google.cloud.datacatalog.v1.IDatabaseTableSpec|null} [databaseTableSpec] Entry databaseTableSpec * @property {google.cloud.datacatalog.v1.IDataSourceConnectionSpec|null} [dataSourceConnectionSpec] Entry dataSourceConnectionSpec * @property {google.cloud.datacatalog.v1.IRoutineSpec|null} [routineSpec] Entry routineSpec + * @property {google.cloud.datacatalog.v1.IDatasetSpec|null} [datasetSpec] Entry datasetSpec * @property {google.cloud.datacatalog.v1.IFilesetSpec|null} [filesetSpec] Entry filesetSpec * @property {google.cloud.datacatalog.v1.IServiceSpec|null} [serviceSpec] Entry serviceSpec + * @property {google.cloud.datacatalog.v1.IModelSpec|null} [modelSpec] Entry modelSpec * @property {string|null} [displayName] Entry displayName * @property {string|null} [description] Entry description * @property {google.cloud.datacatalog.v1.IBusinessContext|null} [businessContext] Entry businessContext @@ -6755,6 +6759,14 @@ */ Entry.prototype.routineSpec = null; + /** + * Entry datasetSpec. + * @member {google.cloud.datacatalog.v1.IDatasetSpec|null|undefined} datasetSpec + * @memberof google.cloud.datacatalog.v1.Entry + * @instance + */ + Entry.prototype.datasetSpec = null; + /** * Entry filesetSpec. * @member {google.cloud.datacatalog.v1.IFilesetSpec|null|undefined} filesetSpec @@ -6771,6 +6783,14 @@ */ Entry.prototype.serviceSpec = null; + /** + * Entry modelSpec. + * @member {google.cloud.datacatalog.v1.IModelSpec|null|undefined} modelSpec + * @memberof google.cloud.datacatalog.v1.Entry + * @instance + */ + Entry.prototype.modelSpec = null; + /** * Entry displayName. * @member {string} displayName @@ -6892,12 +6912,12 @@ /** * Entry spec. - * @member {"databaseTableSpec"|"dataSourceConnectionSpec"|"routineSpec"|"filesetSpec"|"serviceSpec"|undefined} spec + * @member {"databaseTableSpec"|"dataSourceConnectionSpec"|"routineSpec"|"datasetSpec"|"filesetSpec"|"serviceSpec"|"modelSpec"|undefined} spec * @memberof google.cloud.datacatalog.v1.Entry * @instance */ Object.defineProperty(Entry.prototype, "spec", { - get: $util.oneOfGetter($oneOfFields = ["databaseTableSpec", "dataSourceConnectionSpec", "routineSpec", "filesetSpec", "serviceSpec"]), + get: $util.oneOfGetter($oneOfFields = ["databaseTableSpec", "dataSourceConnectionSpec", "routineSpec", "datasetSpec", "filesetSpec", "serviceSpec", "modelSpec"]), set: $util.oneOfSetter($oneOfFields) }); @@ -6968,6 +6988,8 @@ $root.google.cloud.datacatalog.v1.RoutineSpec.encode(message.routineSpec, writer.uint32(/* id 28, wireType 2 =*/226).fork()).ldelim(); if (message.fullyQualifiedName != null && Object.hasOwnProperty.call(message, "fullyQualifiedName")) writer.uint32(/* id 29, wireType 2 =*/234).string(message.fullyQualifiedName); + if (message.datasetSpec != null && Object.hasOwnProperty.call(message, "datasetSpec")) + $root.google.cloud.datacatalog.v1.DatasetSpec.encode(message.datasetSpec, writer.uint32(/* id 32, wireType 2 =*/258).fork()).ldelim(); if (message.filesetSpec != null && Object.hasOwnProperty.call(message, "filesetSpec")) $root.google.cloud.datacatalog.v1.FilesetSpec.encode(message.filesetSpec, writer.uint32(/* id 33, wireType 2 =*/266).fork()).ldelim(); if (message.businessContext != null && Object.hasOwnProperty.call(message, "businessContext")) @@ -6980,6 +7002,8 @@ $root.google.cloud.datacatalog.v1.CloudBigtableSystemSpec.encode(message.cloudBigtableSystemSpec, writer.uint32(/* id 41, wireType 2 =*/330).fork()).ldelim(); if (message.serviceSpec != null && Object.hasOwnProperty.call(message, "serviceSpec")) $root.google.cloud.datacatalog.v1.ServiceSpec.encode(message.serviceSpec, writer.uint32(/* id 42, wireType 2 =*/338).fork()).ldelim(); + if (message.modelSpec != null && Object.hasOwnProperty.call(message, "modelSpec")) + $root.google.cloud.datacatalog.v1.ModelSpec.encode(message.modelSpec, writer.uint32(/* id 43, wireType 2 =*/346).fork()).ldelim(); return writer; }; @@ -7078,6 +7102,10 @@ message.routineSpec = $root.google.cloud.datacatalog.v1.RoutineSpec.decode(reader, reader.uint32()); break; } + case 32: { + message.datasetSpec = $root.google.cloud.datacatalog.v1.DatasetSpec.decode(reader, reader.uint32()); + break; + } case 33: { message.filesetSpec = $root.google.cloud.datacatalog.v1.FilesetSpec.decode(reader, reader.uint32()); break; @@ -7086,6 +7114,10 @@ message.serviceSpec = $root.google.cloud.datacatalog.v1.ServiceSpec.decode(reader, reader.uint32()); break; } + case 43: { + message.modelSpec = $root.google.cloud.datacatalog.v1.ModelSpec.decode(reader, reader.uint32()); + break; + } case 3: { message.displayName = reader.string(); break; @@ -7231,6 +7263,7 @@ case 7: case 8: case 9: + case 10: break; } } @@ -7325,6 +7358,16 @@ return "routineSpec." + error; } } + if (message.datasetSpec != null && message.hasOwnProperty("datasetSpec")) { + if (properties.spec === 1) + return "spec: multiple values"; + properties.spec = 1; + { + var error = $root.google.cloud.datacatalog.v1.DatasetSpec.verify(message.datasetSpec); + if (error) + return "datasetSpec." + error; + } + } if (message.filesetSpec != null && message.hasOwnProperty("filesetSpec")) { if (properties.spec === 1) return "spec: multiple values"; @@ -7345,6 +7388,16 @@ return "serviceSpec." + error; } } + if (message.modelSpec != null && message.hasOwnProperty("modelSpec")) { + if (properties.spec === 1) + return "spec: multiple values"; + properties.spec = 1; + { + var error = $root.google.cloud.datacatalog.v1.ModelSpec.verify(message.modelSpec); + if (error) + return "modelSpec." + error; + } + } if (message.displayName != null && message.hasOwnProperty("displayName")) if (!$util.isString(message.displayName)) return "displayName: string expected"; @@ -7527,6 +7580,10 @@ case 9: message.integratedSystem = 9; break; + case "VERTEX_AI": + case 10: + message.integratedSystem = 10; + break; } if (object.userSpecifiedSystem != null) message.userSpecifiedSystem = String(object.userSpecifiedSystem); @@ -7575,6 +7632,11 @@ throw TypeError(".google.cloud.datacatalog.v1.Entry.routineSpec: object expected"); message.routineSpec = $root.google.cloud.datacatalog.v1.RoutineSpec.fromObject(object.routineSpec); } + if (object.datasetSpec != null) { + if (typeof object.datasetSpec !== "object") + throw TypeError(".google.cloud.datacatalog.v1.Entry.datasetSpec: object expected"); + message.datasetSpec = $root.google.cloud.datacatalog.v1.DatasetSpec.fromObject(object.datasetSpec); + } if (object.filesetSpec != null) { if (typeof object.filesetSpec !== "object") throw TypeError(".google.cloud.datacatalog.v1.Entry.filesetSpec: object expected"); @@ -7585,6 +7647,11 @@ throw TypeError(".google.cloud.datacatalog.v1.Entry.serviceSpec: object expected"); message.serviceSpec = $root.google.cloud.datacatalog.v1.ServiceSpec.fromObject(object.serviceSpec); } + if (object.modelSpec != null) { + if (typeof object.modelSpec !== "object") + throw TypeError(".google.cloud.datacatalog.v1.Entry.modelSpec: object expected"); + message.modelSpec = $root.google.cloud.datacatalog.v1.ModelSpec.fromObject(object.modelSpec); + } if (object.displayName != null) message.displayName = String(object.displayName); if (object.description != null) @@ -7733,6 +7800,11 @@ } if (message.fullyQualifiedName != null && message.hasOwnProperty("fullyQualifiedName")) object.fullyQualifiedName = message.fullyQualifiedName; + if (message.datasetSpec != null && message.hasOwnProperty("datasetSpec")) { + object.datasetSpec = $root.google.cloud.datacatalog.v1.DatasetSpec.toObject(message.datasetSpec, options); + if (options.oneofs) + object.spec = "datasetSpec"; + } if (message.filesetSpec != null && message.hasOwnProperty("filesetSpec")) { object.filesetSpec = $root.google.cloud.datacatalog.v1.FilesetSpec.toObject(message.filesetSpec, options); if (options.oneofs) @@ -7760,6 +7832,11 @@ if (options.oneofs) object.spec = "serviceSpec"; } + if (message.modelSpec != null && message.hasOwnProperty("modelSpec")) { + object.modelSpec = $root.google.cloud.datacatalog.v1.ModelSpec.toObject(message.modelSpec, options); + if (options.oneofs) + object.spec = "modelSpec"; + } return object; }; @@ -9525,6 +9602,233 @@ return RoutineSpec; })(); + v1.DatasetSpec = (function() { + + /** + * Properties of a DatasetSpec. + * @memberof google.cloud.datacatalog.v1 + * @interface IDatasetSpec + * @property {google.cloud.datacatalog.v1.IVertexDatasetSpec|null} [vertexDatasetSpec] DatasetSpec vertexDatasetSpec + */ + + /** + * Constructs a new DatasetSpec. + * @memberof google.cloud.datacatalog.v1 + * @classdesc Represents a DatasetSpec. + * @implements IDatasetSpec + * @constructor + * @param {google.cloud.datacatalog.v1.IDatasetSpec=} [properties] Properties to set + */ + function DatasetSpec(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * DatasetSpec vertexDatasetSpec. + * @member {google.cloud.datacatalog.v1.IVertexDatasetSpec|null|undefined} vertexDatasetSpec + * @memberof google.cloud.datacatalog.v1.DatasetSpec + * @instance + */ + DatasetSpec.prototype.vertexDatasetSpec = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * DatasetSpec systemSpec. + * @member {"vertexDatasetSpec"|undefined} systemSpec + * @memberof google.cloud.datacatalog.v1.DatasetSpec + * @instance + */ + Object.defineProperty(DatasetSpec.prototype, "systemSpec", { + get: $util.oneOfGetter($oneOfFields = ["vertexDatasetSpec"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new DatasetSpec instance using the specified properties. + * @function create + * @memberof google.cloud.datacatalog.v1.DatasetSpec + * @static + * @param {google.cloud.datacatalog.v1.IDatasetSpec=} [properties] Properties to set + * @returns {google.cloud.datacatalog.v1.DatasetSpec} DatasetSpec instance + */ + DatasetSpec.create = function create(properties) { + return new DatasetSpec(properties); + }; + + /** + * Encodes the specified DatasetSpec message. Does not implicitly {@link google.cloud.datacatalog.v1.DatasetSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.datacatalog.v1.DatasetSpec + * @static + * @param {google.cloud.datacatalog.v1.IDatasetSpec} message DatasetSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DatasetSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.vertexDatasetSpec != null && Object.hasOwnProperty.call(message, "vertexDatasetSpec")) + $root.google.cloud.datacatalog.v1.VertexDatasetSpec.encode(message.vertexDatasetSpec, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified DatasetSpec message, length delimited. Does not implicitly {@link google.cloud.datacatalog.v1.DatasetSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.datacatalog.v1.DatasetSpec + * @static + * @param {google.cloud.datacatalog.v1.IDatasetSpec} message DatasetSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + DatasetSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a DatasetSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.datacatalog.v1.DatasetSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.datacatalog.v1.DatasetSpec} DatasetSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DatasetSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.datacatalog.v1.DatasetSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 2: { + message.vertexDatasetSpec = $root.google.cloud.datacatalog.v1.VertexDatasetSpec.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a DatasetSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.datacatalog.v1.DatasetSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.datacatalog.v1.DatasetSpec} DatasetSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + DatasetSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a DatasetSpec message. + * @function verify + * @memberof google.cloud.datacatalog.v1.DatasetSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + DatasetSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.vertexDatasetSpec != null && message.hasOwnProperty("vertexDatasetSpec")) { + properties.systemSpec = 1; + { + var error = $root.google.cloud.datacatalog.v1.VertexDatasetSpec.verify(message.vertexDatasetSpec); + if (error) + return "vertexDatasetSpec." + error; + } + } + return null; + }; + + /** + * Creates a DatasetSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.datacatalog.v1.DatasetSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.datacatalog.v1.DatasetSpec} DatasetSpec + */ + DatasetSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.datacatalog.v1.DatasetSpec) + return object; + var message = new $root.google.cloud.datacatalog.v1.DatasetSpec(); + if (object.vertexDatasetSpec != null) { + if (typeof object.vertexDatasetSpec !== "object") + throw TypeError(".google.cloud.datacatalog.v1.DatasetSpec.vertexDatasetSpec: object expected"); + message.vertexDatasetSpec = $root.google.cloud.datacatalog.v1.VertexDatasetSpec.fromObject(object.vertexDatasetSpec); + } + return message; + }; + + /** + * Creates a plain object from a DatasetSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.datacatalog.v1.DatasetSpec + * @static + * @param {google.cloud.datacatalog.v1.DatasetSpec} message DatasetSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + DatasetSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (message.vertexDatasetSpec != null && message.hasOwnProperty("vertexDatasetSpec")) { + object.vertexDatasetSpec = $root.google.cloud.datacatalog.v1.VertexDatasetSpec.toObject(message.vertexDatasetSpec, options); + if (options.oneofs) + object.systemSpec = "vertexDatasetSpec"; + } + return object; + }; + + /** + * Converts this DatasetSpec to JSON. + * @function toJSON + * @memberof google.cloud.datacatalog.v1.DatasetSpec + * @instance + * @returns {Object.} JSON object + */ + DatasetSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for DatasetSpec + * @function getTypeUrl + * @memberof google.cloud.datacatalog.v1.DatasetSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + DatasetSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.datacatalog.v1.DatasetSpec"; + }; + + return DatasetSpec; + })(); + v1.SqlDatabaseSystemSpec = (function() { /** @@ -10732,86 +11036,1263 @@ return message; }; - /** - * Creates a plain object from a CloudBigtableClusterSpec message. Also converts values to other types if specified. - * @function toObject - * @memberof google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.CloudBigtableClusterSpec - * @static - * @param {google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.CloudBigtableClusterSpec} message CloudBigtableClusterSpec - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - CloudBigtableClusterSpec.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.displayName = ""; - object.location = ""; - object.type = ""; - object.linkedResource = ""; + /** + * Creates a plain object from a CloudBigtableClusterSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.CloudBigtableClusterSpec + * @static + * @param {google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.CloudBigtableClusterSpec} message CloudBigtableClusterSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CloudBigtableClusterSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.displayName = ""; + object.location = ""; + object.type = ""; + object.linkedResource = ""; + } + if (message.displayName != null && message.hasOwnProperty("displayName")) + object.displayName = message.displayName; + if (message.location != null && message.hasOwnProperty("location")) + object.location = message.location; + if (message.type != null && message.hasOwnProperty("type")) + object.type = message.type; + if (message.linkedResource != null && message.hasOwnProperty("linkedResource")) + object.linkedResource = message.linkedResource; + return object; + }; + + /** + * Converts this CloudBigtableClusterSpec to JSON. + * @function toJSON + * @memberof google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.CloudBigtableClusterSpec + * @instance + * @returns {Object.} JSON object + */ + CloudBigtableClusterSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for CloudBigtableClusterSpec + * @function getTypeUrl + * @memberof google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.CloudBigtableClusterSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + CloudBigtableClusterSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.CloudBigtableClusterSpec"; + }; + + return CloudBigtableClusterSpec; + })(); + + return CloudBigtableInstanceSpec; + })(); + + v1.ServiceSpec = (function() { + + /** + * Properties of a ServiceSpec. + * @memberof google.cloud.datacatalog.v1 + * @interface IServiceSpec + * @property {google.cloud.datacatalog.v1.ICloudBigtableInstanceSpec|null} [cloudBigtableInstanceSpec] ServiceSpec cloudBigtableInstanceSpec + */ + + /** + * Constructs a new ServiceSpec. + * @memberof google.cloud.datacatalog.v1 + * @classdesc Represents a ServiceSpec. + * @implements IServiceSpec + * @constructor + * @param {google.cloud.datacatalog.v1.IServiceSpec=} [properties] Properties to set + */ + function ServiceSpec(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * ServiceSpec cloudBigtableInstanceSpec. + * @member {google.cloud.datacatalog.v1.ICloudBigtableInstanceSpec|null|undefined} cloudBigtableInstanceSpec + * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @instance + */ + ServiceSpec.prototype.cloudBigtableInstanceSpec = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * ServiceSpec systemSpec. + * @member {"cloudBigtableInstanceSpec"|undefined} systemSpec + * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @instance + */ + Object.defineProperty(ServiceSpec.prototype, "systemSpec", { + get: $util.oneOfGetter($oneOfFields = ["cloudBigtableInstanceSpec"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new ServiceSpec instance using the specified properties. + * @function create + * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @static + * @param {google.cloud.datacatalog.v1.IServiceSpec=} [properties] Properties to set + * @returns {google.cloud.datacatalog.v1.ServiceSpec} ServiceSpec instance + */ + ServiceSpec.create = function create(properties) { + return new ServiceSpec(properties); + }; + + /** + * Encodes the specified ServiceSpec message. Does not implicitly {@link google.cloud.datacatalog.v1.ServiceSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @static + * @param {google.cloud.datacatalog.v1.IServiceSpec} message ServiceSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ServiceSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.cloudBigtableInstanceSpec != null && Object.hasOwnProperty.call(message, "cloudBigtableInstanceSpec")) + $root.google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.encode(message.cloudBigtableInstanceSpec, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified ServiceSpec message, length delimited. Does not implicitly {@link google.cloud.datacatalog.v1.ServiceSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @static + * @param {google.cloud.datacatalog.v1.IServiceSpec} message ServiceSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ServiceSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ServiceSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.datacatalog.v1.ServiceSpec} ServiceSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ServiceSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.datacatalog.v1.ServiceSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.cloudBigtableInstanceSpec = $root.google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.decode(reader, reader.uint32()); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ServiceSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.datacatalog.v1.ServiceSpec} ServiceSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ServiceSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ServiceSpec message. + * @function verify + * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ServiceSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.cloudBigtableInstanceSpec != null && message.hasOwnProperty("cloudBigtableInstanceSpec")) { + properties.systemSpec = 1; + { + var error = $root.google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.verify(message.cloudBigtableInstanceSpec); + if (error) + return "cloudBigtableInstanceSpec." + error; + } + } + return null; + }; + + /** + * Creates a ServiceSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.datacatalog.v1.ServiceSpec} ServiceSpec + */ + ServiceSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.datacatalog.v1.ServiceSpec) + return object; + var message = new $root.google.cloud.datacatalog.v1.ServiceSpec(); + if (object.cloudBigtableInstanceSpec != null) { + if (typeof object.cloudBigtableInstanceSpec !== "object") + throw TypeError(".google.cloud.datacatalog.v1.ServiceSpec.cloudBigtableInstanceSpec: object expected"); + message.cloudBigtableInstanceSpec = $root.google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.fromObject(object.cloudBigtableInstanceSpec); + } + return message; + }; + + /** + * Creates a plain object from a ServiceSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @static + * @param {google.cloud.datacatalog.v1.ServiceSpec} message ServiceSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ServiceSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (message.cloudBigtableInstanceSpec != null && message.hasOwnProperty("cloudBigtableInstanceSpec")) { + object.cloudBigtableInstanceSpec = $root.google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.toObject(message.cloudBigtableInstanceSpec, options); + if (options.oneofs) + object.systemSpec = "cloudBigtableInstanceSpec"; + } + return object; + }; + + /** + * Converts this ServiceSpec to JSON. + * @function toJSON + * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @instance + * @returns {Object.} JSON object + */ + ServiceSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for ServiceSpec + * @function getTypeUrl + * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + ServiceSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.datacatalog.v1.ServiceSpec"; + }; + + return ServiceSpec; + })(); + + v1.VertexModelSourceInfo = (function() { + + /** + * Properties of a VertexModelSourceInfo. + * @memberof google.cloud.datacatalog.v1 + * @interface IVertexModelSourceInfo + * @property {google.cloud.datacatalog.v1.VertexModelSourceInfo.ModelSourceType|null} [sourceType] VertexModelSourceInfo sourceType + * @property {boolean|null} [copy] VertexModelSourceInfo copy + */ + + /** + * Constructs a new VertexModelSourceInfo. + * @memberof google.cloud.datacatalog.v1 + * @classdesc Represents a VertexModelSourceInfo. + * @implements IVertexModelSourceInfo + * @constructor + * @param {google.cloud.datacatalog.v1.IVertexModelSourceInfo=} [properties] Properties to set + */ + function VertexModelSourceInfo(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * VertexModelSourceInfo sourceType. + * @member {google.cloud.datacatalog.v1.VertexModelSourceInfo.ModelSourceType} sourceType + * @memberof google.cloud.datacatalog.v1.VertexModelSourceInfo + * @instance + */ + VertexModelSourceInfo.prototype.sourceType = 0; + + /** + * VertexModelSourceInfo copy. + * @member {boolean} copy + * @memberof google.cloud.datacatalog.v1.VertexModelSourceInfo + * @instance + */ + VertexModelSourceInfo.prototype.copy = false; + + /** + * Creates a new VertexModelSourceInfo instance using the specified properties. + * @function create + * @memberof google.cloud.datacatalog.v1.VertexModelSourceInfo + * @static + * @param {google.cloud.datacatalog.v1.IVertexModelSourceInfo=} [properties] Properties to set + * @returns {google.cloud.datacatalog.v1.VertexModelSourceInfo} VertexModelSourceInfo instance + */ + VertexModelSourceInfo.create = function create(properties) { + return new VertexModelSourceInfo(properties); + }; + + /** + * Encodes the specified VertexModelSourceInfo message. Does not implicitly {@link google.cloud.datacatalog.v1.VertexModelSourceInfo.verify|verify} messages. + * @function encode + * @memberof google.cloud.datacatalog.v1.VertexModelSourceInfo + * @static + * @param {google.cloud.datacatalog.v1.IVertexModelSourceInfo} message VertexModelSourceInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + VertexModelSourceInfo.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.sourceType != null && Object.hasOwnProperty.call(message, "sourceType")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.sourceType); + if (message.copy != null && Object.hasOwnProperty.call(message, "copy")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.copy); + return writer; + }; + + /** + * Encodes the specified VertexModelSourceInfo message, length delimited. Does not implicitly {@link google.cloud.datacatalog.v1.VertexModelSourceInfo.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.datacatalog.v1.VertexModelSourceInfo + * @static + * @param {google.cloud.datacatalog.v1.IVertexModelSourceInfo} message VertexModelSourceInfo message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + VertexModelSourceInfo.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a VertexModelSourceInfo message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.datacatalog.v1.VertexModelSourceInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.datacatalog.v1.VertexModelSourceInfo} VertexModelSourceInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + VertexModelSourceInfo.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.datacatalog.v1.VertexModelSourceInfo(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.sourceType = reader.int32(); + break; + } + case 2: { + message.copy = reader.bool(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a VertexModelSourceInfo message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.datacatalog.v1.VertexModelSourceInfo + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.datacatalog.v1.VertexModelSourceInfo} VertexModelSourceInfo + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + VertexModelSourceInfo.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a VertexModelSourceInfo message. + * @function verify + * @memberof google.cloud.datacatalog.v1.VertexModelSourceInfo + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + VertexModelSourceInfo.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.sourceType != null && message.hasOwnProperty("sourceType")) + switch (message.sourceType) { + default: + return "sourceType: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + break; + } + if (message.copy != null && message.hasOwnProperty("copy")) + if (typeof message.copy !== "boolean") + return "copy: boolean expected"; + return null; + }; + + /** + * Creates a VertexModelSourceInfo message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.datacatalog.v1.VertexModelSourceInfo + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.datacatalog.v1.VertexModelSourceInfo} VertexModelSourceInfo + */ + VertexModelSourceInfo.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.datacatalog.v1.VertexModelSourceInfo) + return object; + var message = new $root.google.cloud.datacatalog.v1.VertexModelSourceInfo(); + switch (object.sourceType) { + default: + if (typeof object.sourceType === "number") { + message.sourceType = object.sourceType; + break; + } + break; + case "MODEL_SOURCE_TYPE_UNSPECIFIED": + case 0: + message.sourceType = 0; + break; + case "AUTOML": + case 1: + message.sourceType = 1; + break; + case "CUSTOM": + case 2: + message.sourceType = 2; + break; + case "BQML": + case 3: + message.sourceType = 3; + break; + case "MODEL_GARDEN": + case 4: + message.sourceType = 4; + break; + } + if (object.copy != null) + message.copy = Boolean(object.copy); + return message; + }; + + /** + * Creates a plain object from a VertexModelSourceInfo message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.datacatalog.v1.VertexModelSourceInfo + * @static + * @param {google.cloud.datacatalog.v1.VertexModelSourceInfo} message VertexModelSourceInfo + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + VertexModelSourceInfo.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.sourceType = options.enums === String ? "MODEL_SOURCE_TYPE_UNSPECIFIED" : 0; + object.copy = false; + } + if (message.sourceType != null && message.hasOwnProperty("sourceType")) + object.sourceType = options.enums === String ? $root.google.cloud.datacatalog.v1.VertexModelSourceInfo.ModelSourceType[message.sourceType] === undefined ? message.sourceType : $root.google.cloud.datacatalog.v1.VertexModelSourceInfo.ModelSourceType[message.sourceType] : message.sourceType; + if (message.copy != null && message.hasOwnProperty("copy")) + object.copy = message.copy; + return object; + }; + + /** + * Converts this VertexModelSourceInfo to JSON. + * @function toJSON + * @memberof google.cloud.datacatalog.v1.VertexModelSourceInfo + * @instance + * @returns {Object.} JSON object + */ + VertexModelSourceInfo.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for VertexModelSourceInfo + * @function getTypeUrl + * @memberof google.cloud.datacatalog.v1.VertexModelSourceInfo + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + VertexModelSourceInfo.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.datacatalog.v1.VertexModelSourceInfo"; + }; + + /** + * ModelSourceType enum. + * @name google.cloud.datacatalog.v1.VertexModelSourceInfo.ModelSourceType + * @enum {number} + * @property {number} MODEL_SOURCE_TYPE_UNSPECIFIED=0 MODEL_SOURCE_TYPE_UNSPECIFIED value + * @property {number} AUTOML=1 AUTOML value + * @property {number} CUSTOM=2 CUSTOM value + * @property {number} BQML=3 BQML value + * @property {number} MODEL_GARDEN=4 MODEL_GARDEN value + */ + VertexModelSourceInfo.ModelSourceType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "MODEL_SOURCE_TYPE_UNSPECIFIED"] = 0; + values[valuesById[1] = "AUTOML"] = 1; + values[valuesById[2] = "CUSTOM"] = 2; + values[valuesById[3] = "BQML"] = 3; + values[valuesById[4] = "MODEL_GARDEN"] = 4; + return values; + })(); + + return VertexModelSourceInfo; + })(); + + v1.VertexModelSpec = (function() { + + /** + * Properties of a VertexModelSpec. + * @memberof google.cloud.datacatalog.v1 + * @interface IVertexModelSpec + * @property {string|null} [versionId] VertexModelSpec versionId + * @property {Array.|null} [versionAliases] VertexModelSpec versionAliases + * @property {string|null} [versionDescription] VertexModelSpec versionDescription + * @property {google.cloud.datacatalog.v1.IVertexModelSourceInfo|null} [vertexModelSourceInfo] VertexModelSpec vertexModelSourceInfo + * @property {string|null} [containerImageUri] VertexModelSpec containerImageUri + */ + + /** + * Constructs a new VertexModelSpec. + * @memberof google.cloud.datacatalog.v1 + * @classdesc Represents a VertexModelSpec. + * @implements IVertexModelSpec + * @constructor + * @param {google.cloud.datacatalog.v1.IVertexModelSpec=} [properties] Properties to set + */ + function VertexModelSpec(properties) { + this.versionAliases = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * VertexModelSpec versionId. + * @member {string} versionId + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @instance + */ + VertexModelSpec.prototype.versionId = ""; + + /** + * VertexModelSpec versionAliases. + * @member {Array.} versionAliases + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @instance + */ + VertexModelSpec.prototype.versionAliases = $util.emptyArray; + + /** + * VertexModelSpec versionDescription. + * @member {string} versionDescription + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @instance + */ + VertexModelSpec.prototype.versionDescription = ""; + + /** + * VertexModelSpec vertexModelSourceInfo. + * @member {google.cloud.datacatalog.v1.IVertexModelSourceInfo|null|undefined} vertexModelSourceInfo + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @instance + */ + VertexModelSpec.prototype.vertexModelSourceInfo = null; + + /** + * VertexModelSpec containerImageUri. + * @member {string} containerImageUri + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @instance + */ + VertexModelSpec.prototype.containerImageUri = ""; + + /** + * Creates a new VertexModelSpec instance using the specified properties. + * @function create + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @static + * @param {google.cloud.datacatalog.v1.IVertexModelSpec=} [properties] Properties to set + * @returns {google.cloud.datacatalog.v1.VertexModelSpec} VertexModelSpec instance + */ + VertexModelSpec.create = function create(properties) { + return new VertexModelSpec(properties); + }; + + /** + * Encodes the specified VertexModelSpec message. Does not implicitly {@link google.cloud.datacatalog.v1.VertexModelSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @static + * @param {google.cloud.datacatalog.v1.IVertexModelSpec} message VertexModelSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + VertexModelSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.versionId != null && Object.hasOwnProperty.call(message, "versionId")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.versionId); + if (message.versionAliases != null && message.versionAliases.length) + for (var i = 0; i < message.versionAliases.length; ++i) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.versionAliases[i]); + if (message.versionDescription != null && Object.hasOwnProperty.call(message, "versionDescription")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.versionDescription); + if (message.vertexModelSourceInfo != null && Object.hasOwnProperty.call(message, "vertexModelSourceInfo")) + $root.google.cloud.datacatalog.v1.VertexModelSourceInfo.encode(message.vertexModelSourceInfo, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.containerImageUri != null && Object.hasOwnProperty.call(message, "containerImageUri")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.containerImageUri); + return writer; + }; + + /** + * Encodes the specified VertexModelSpec message, length delimited. Does not implicitly {@link google.cloud.datacatalog.v1.VertexModelSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @static + * @param {google.cloud.datacatalog.v1.IVertexModelSpec} message VertexModelSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + VertexModelSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a VertexModelSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.datacatalog.v1.VertexModelSpec} VertexModelSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + VertexModelSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.datacatalog.v1.VertexModelSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.versionId = reader.string(); + break; + } + case 2: { + if (!(message.versionAliases && message.versionAliases.length)) + message.versionAliases = []; + message.versionAliases.push(reader.string()); + break; + } + case 3: { + message.versionDescription = reader.string(); + break; + } + case 4: { + message.vertexModelSourceInfo = $root.google.cloud.datacatalog.v1.VertexModelSourceInfo.decode(reader, reader.uint32()); + break; + } + case 5: { + message.containerImageUri = reader.string(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a VertexModelSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.datacatalog.v1.VertexModelSpec} VertexModelSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + VertexModelSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a VertexModelSpec message. + * @function verify + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + VertexModelSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.versionId != null && message.hasOwnProperty("versionId")) + if (!$util.isString(message.versionId)) + return "versionId: string expected"; + if (message.versionAliases != null && message.hasOwnProperty("versionAliases")) { + if (!Array.isArray(message.versionAliases)) + return "versionAliases: array expected"; + for (var i = 0; i < message.versionAliases.length; ++i) + if (!$util.isString(message.versionAliases[i])) + return "versionAliases: string[] expected"; + } + if (message.versionDescription != null && message.hasOwnProperty("versionDescription")) + if (!$util.isString(message.versionDescription)) + return "versionDescription: string expected"; + if (message.vertexModelSourceInfo != null && message.hasOwnProperty("vertexModelSourceInfo")) { + var error = $root.google.cloud.datacatalog.v1.VertexModelSourceInfo.verify(message.vertexModelSourceInfo); + if (error) + return "vertexModelSourceInfo." + error; + } + if (message.containerImageUri != null && message.hasOwnProperty("containerImageUri")) + if (!$util.isString(message.containerImageUri)) + return "containerImageUri: string expected"; + return null; + }; + + /** + * Creates a VertexModelSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.datacatalog.v1.VertexModelSpec} VertexModelSpec + */ + VertexModelSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.datacatalog.v1.VertexModelSpec) + return object; + var message = new $root.google.cloud.datacatalog.v1.VertexModelSpec(); + if (object.versionId != null) + message.versionId = String(object.versionId); + if (object.versionAliases) { + if (!Array.isArray(object.versionAliases)) + throw TypeError(".google.cloud.datacatalog.v1.VertexModelSpec.versionAliases: array expected"); + message.versionAliases = []; + for (var i = 0; i < object.versionAliases.length; ++i) + message.versionAliases[i] = String(object.versionAliases[i]); + } + if (object.versionDescription != null) + message.versionDescription = String(object.versionDescription); + if (object.vertexModelSourceInfo != null) { + if (typeof object.vertexModelSourceInfo !== "object") + throw TypeError(".google.cloud.datacatalog.v1.VertexModelSpec.vertexModelSourceInfo: object expected"); + message.vertexModelSourceInfo = $root.google.cloud.datacatalog.v1.VertexModelSourceInfo.fromObject(object.vertexModelSourceInfo); + } + if (object.containerImageUri != null) + message.containerImageUri = String(object.containerImageUri); + return message; + }; + + /** + * Creates a plain object from a VertexModelSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @static + * @param {google.cloud.datacatalog.v1.VertexModelSpec} message VertexModelSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + VertexModelSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) + object.versionAliases = []; + if (options.defaults) { + object.versionId = ""; + object.versionDescription = ""; + object.vertexModelSourceInfo = null; + object.containerImageUri = ""; + } + if (message.versionId != null && message.hasOwnProperty("versionId")) + object.versionId = message.versionId; + if (message.versionAliases && message.versionAliases.length) { + object.versionAliases = []; + for (var j = 0; j < message.versionAliases.length; ++j) + object.versionAliases[j] = message.versionAliases[j]; + } + if (message.versionDescription != null && message.hasOwnProperty("versionDescription")) + object.versionDescription = message.versionDescription; + if (message.vertexModelSourceInfo != null && message.hasOwnProperty("vertexModelSourceInfo")) + object.vertexModelSourceInfo = $root.google.cloud.datacatalog.v1.VertexModelSourceInfo.toObject(message.vertexModelSourceInfo, options); + if (message.containerImageUri != null && message.hasOwnProperty("containerImageUri")) + object.containerImageUri = message.containerImageUri; + return object; + }; + + /** + * Converts this VertexModelSpec to JSON. + * @function toJSON + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @instance + * @returns {Object.} JSON object + */ + VertexModelSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * Gets the default type url for VertexModelSpec + * @function getTypeUrl + * @memberof google.cloud.datacatalog.v1.VertexModelSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + VertexModelSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.datacatalog.v1.VertexModelSpec"; + }; + + return VertexModelSpec; + })(); + + v1.VertexDatasetSpec = (function() { + + /** + * Properties of a VertexDatasetSpec. + * @memberof google.cloud.datacatalog.v1 + * @interface IVertexDatasetSpec + * @property {number|Long|null} [dataItemCount] VertexDatasetSpec dataItemCount + * @property {google.cloud.datacatalog.v1.VertexDatasetSpec.DataType|null} [dataType] VertexDatasetSpec dataType + */ + + /** + * Constructs a new VertexDatasetSpec. + * @memberof google.cloud.datacatalog.v1 + * @classdesc Represents a VertexDatasetSpec. + * @implements IVertexDatasetSpec + * @constructor + * @param {google.cloud.datacatalog.v1.IVertexDatasetSpec=} [properties] Properties to set + */ + function VertexDatasetSpec(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * VertexDatasetSpec dataItemCount. + * @member {number|Long} dataItemCount + * @memberof google.cloud.datacatalog.v1.VertexDatasetSpec + * @instance + */ + VertexDatasetSpec.prototype.dataItemCount = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * VertexDatasetSpec dataType. + * @member {google.cloud.datacatalog.v1.VertexDatasetSpec.DataType} dataType + * @memberof google.cloud.datacatalog.v1.VertexDatasetSpec + * @instance + */ + VertexDatasetSpec.prototype.dataType = 0; + + /** + * Creates a new VertexDatasetSpec instance using the specified properties. + * @function create + * @memberof google.cloud.datacatalog.v1.VertexDatasetSpec + * @static + * @param {google.cloud.datacatalog.v1.IVertexDatasetSpec=} [properties] Properties to set + * @returns {google.cloud.datacatalog.v1.VertexDatasetSpec} VertexDatasetSpec instance + */ + VertexDatasetSpec.create = function create(properties) { + return new VertexDatasetSpec(properties); + }; + + /** + * Encodes the specified VertexDatasetSpec message. Does not implicitly {@link google.cloud.datacatalog.v1.VertexDatasetSpec.verify|verify} messages. + * @function encode + * @memberof google.cloud.datacatalog.v1.VertexDatasetSpec + * @static + * @param {google.cloud.datacatalog.v1.IVertexDatasetSpec} message VertexDatasetSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + VertexDatasetSpec.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.dataItemCount != null && Object.hasOwnProperty.call(message, "dataItemCount")) + writer.uint32(/* id 1, wireType 0 =*/8).int64(message.dataItemCount); + if (message.dataType != null && Object.hasOwnProperty.call(message, "dataType")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.dataType); + return writer; + }; + + /** + * Encodes the specified VertexDatasetSpec message, length delimited. Does not implicitly {@link google.cloud.datacatalog.v1.VertexDatasetSpec.verify|verify} messages. + * @function encodeDelimited + * @memberof google.cloud.datacatalog.v1.VertexDatasetSpec + * @static + * @param {google.cloud.datacatalog.v1.IVertexDatasetSpec} message VertexDatasetSpec message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + VertexDatasetSpec.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a VertexDatasetSpec message from the specified reader or buffer. + * @function decode + * @memberof google.cloud.datacatalog.v1.VertexDatasetSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {google.cloud.datacatalog.v1.VertexDatasetSpec} VertexDatasetSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + VertexDatasetSpec.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.datacatalog.v1.VertexDatasetSpec(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + message.dataItemCount = reader.int64(); + break; + } + case 2: { + message.dataType = reader.int32(); + break; + } + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a VertexDatasetSpec message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof google.cloud.datacatalog.v1.VertexDatasetSpec + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {google.cloud.datacatalog.v1.VertexDatasetSpec} VertexDatasetSpec + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + VertexDatasetSpec.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a VertexDatasetSpec message. + * @function verify + * @memberof google.cloud.datacatalog.v1.VertexDatasetSpec + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + VertexDatasetSpec.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.dataItemCount != null && message.hasOwnProperty("dataItemCount")) + if (!$util.isInteger(message.dataItemCount) && !(message.dataItemCount && $util.isInteger(message.dataItemCount.low) && $util.isInteger(message.dataItemCount.high))) + return "dataItemCount: integer|Long expected"; + if (message.dataType != null && message.hasOwnProperty("dataType")) + switch (message.dataType) { + default: + return "dataType: enum value expected"; + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + case 8: + case 9: + case 10: + case 11: + case 12: + break; } - if (message.displayName != null && message.hasOwnProperty("displayName")) - object.displayName = message.displayName; - if (message.location != null && message.hasOwnProperty("location")) - object.location = message.location; - if (message.type != null && message.hasOwnProperty("type")) - object.type = message.type; - if (message.linkedResource != null && message.hasOwnProperty("linkedResource")) - object.linkedResource = message.linkedResource; + return null; + }; + + /** + * Creates a VertexDatasetSpec message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof google.cloud.datacatalog.v1.VertexDatasetSpec + * @static + * @param {Object.} object Plain object + * @returns {google.cloud.datacatalog.v1.VertexDatasetSpec} VertexDatasetSpec + */ + VertexDatasetSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.datacatalog.v1.VertexDatasetSpec) return object; - }; + var message = new $root.google.cloud.datacatalog.v1.VertexDatasetSpec(); + if (object.dataItemCount != null) + if ($util.Long) + (message.dataItemCount = $util.Long.fromValue(object.dataItemCount)).unsigned = false; + else if (typeof object.dataItemCount === "string") + message.dataItemCount = parseInt(object.dataItemCount, 10); + else if (typeof object.dataItemCount === "number") + message.dataItemCount = object.dataItemCount; + else if (typeof object.dataItemCount === "object") + message.dataItemCount = new $util.LongBits(object.dataItemCount.low >>> 0, object.dataItemCount.high >>> 0).toNumber(); + switch (object.dataType) { + default: + if (typeof object.dataType === "number") { + message.dataType = object.dataType; + break; + } + break; + case "DATA_TYPE_UNSPECIFIED": + case 0: + message.dataType = 0; + break; + case "TABLE": + case 1: + message.dataType = 1; + break; + case "IMAGE": + case 2: + message.dataType = 2; + break; + case "TEXT": + case 3: + message.dataType = 3; + break; + case "VIDEO": + case 4: + message.dataType = 4; + break; + case "CONVERSATION": + case 5: + message.dataType = 5; + break; + case "TIME_SERIES": + case 6: + message.dataType = 6; + break; + case "DOCUMENT": + case 7: + message.dataType = 7; + break; + case "TEXT_TO_SPEECH": + case 8: + message.dataType = 8; + break; + case "TRANSLATION": + case 9: + message.dataType = 9; + break; + case "STORE_VISION": + case 10: + message.dataType = 10; + break; + case "ENTERPRISE_KNOWLEDGE_GRAPH": + case 11: + message.dataType = 11; + break; + case "TEXT_PROMPT": + case 12: + message.dataType = 12; + break; + } + return message; + }; - /** - * Converts this CloudBigtableClusterSpec to JSON. - * @function toJSON - * @memberof google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.CloudBigtableClusterSpec - * @instance - * @returns {Object.} JSON object - */ - CloudBigtableClusterSpec.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; + /** + * Creates a plain object from a VertexDatasetSpec message. Also converts values to other types if specified. + * @function toObject + * @memberof google.cloud.datacatalog.v1.VertexDatasetSpec + * @static + * @param {google.cloud.datacatalog.v1.VertexDatasetSpec} message VertexDatasetSpec + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + VertexDatasetSpec.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.dataItemCount = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.dataItemCount = options.longs === String ? "0" : 0; + object.dataType = options.enums === String ? "DATA_TYPE_UNSPECIFIED" : 0; + } + if (message.dataItemCount != null && message.hasOwnProperty("dataItemCount")) + if (typeof message.dataItemCount === "number") + object.dataItemCount = options.longs === String ? String(message.dataItemCount) : message.dataItemCount; + else + object.dataItemCount = options.longs === String ? $util.Long.prototype.toString.call(message.dataItemCount) : options.longs === Number ? new $util.LongBits(message.dataItemCount.low >>> 0, message.dataItemCount.high >>> 0).toNumber() : message.dataItemCount; + if (message.dataType != null && message.hasOwnProperty("dataType")) + object.dataType = options.enums === String ? $root.google.cloud.datacatalog.v1.VertexDatasetSpec.DataType[message.dataType] === undefined ? message.dataType : $root.google.cloud.datacatalog.v1.VertexDatasetSpec.DataType[message.dataType] : message.dataType; + return object; + }; - /** - * Gets the default type url for CloudBigtableClusterSpec - * @function getTypeUrl - * @memberof google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.CloudBigtableClusterSpec - * @static - * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") - * @returns {string} The default type url - */ - CloudBigtableClusterSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { - if (typeUrlPrefix === undefined) { - typeUrlPrefix = "type.googleapis.com"; - } - return typeUrlPrefix + "/google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.CloudBigtableClusterSpec"; - }; + /** + * Converts this VertexDatasetSpec to JSON. + * @function toJSON + * @memberof google.cloud.datacatalog.v1.VertexDatasetSpec + * @instance + * @returns {Object.} JSON object + */ + VertexDatasetSpec.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; - return CloudBigtableClusterSpec; + /** + * Gets the default type url for VertexDatasetSpec + * @function getTypeUrl + * @memberof google.cloud.datacatalog.v1.VertexDatasetSpec + * @static + * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") + * @returns {string} The default type url + */ + VertexDatasetSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + if (typeUrlPrefix === undefined) { + typeUrlPrefix = "type.googleapis.com"; + } + return typeUrlPrefix + "/google.cloud.datacatalog.v1.VertexDatasetSpec"; + }; + + /** + * DataType enum. + * @name google.cloud.datacatalog.v1.VertexDatasetSpec.DataType + * @enum {number} + * @property {number} DATA_TYPE_UNSPECIFIED=0 DATA_TYPE_UNSPECIFIED value + * @property {number} TABLE=1 TABLE value + * @property {number} IMAGE=2 IMAGE value + * @property {number} TEXT=3 TEXT value + * @property {number} VIDEO=4 VIDEO value + * @property {number} CONVERSATION=5 CONVERSATION value + * @property {number} TIME_SERIES=6 TIME_SERIES value + * @property {number} DOCUMENT=7 DOCUMENT value + * @property {number} TEXT_TO_SPEECH=8 TEXT_TO_SPEECH value + * @property {number} TRANSLATION=9 TRANSLATION value + * @property {number} STORE_VISION=10 STORE_VISION value + * @property {number} ENTERPRISE_KNOWLEDGE_GRAPH=11 ENTERPRISE_KNOWLEDGE_GRAPH value + * @property {number} TEXT_PROMPT=12 TEXT_PROMPT value + */ + VertexDatasetSpec.DataType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "DATA_TYPE_UNSPECIFIED"] = 0; + values[valuesById[1] = "TABLE"] = 1; + values[valuesById[2] = "IMAGE"] = 2; + values[valuesById[3] = "TEXT"] = 3; + values[valuesById[4] = "VIDEO"] = 4; + values[valuesById[5] = "CONVERSATION"] = 5; + values[valuesById[6] = "TIME_SERIES"] = 6; + values[valuesById[7] = "DOCUMENT"] = 7; + values[valuesById[8] = "TEXT_TO_SPEECH"] = 8; + values[valuesById[9] = "TRANSLATION"] = 9; + values[valuesById[10] = "STORE_VISION"] = 10; + values[valuesById[11] = "ENTERPRISE_KNOWLEDGE_GRAPH"] = 11; + values[valuesById[12] = "TEXT_PROMPT"] = 12; + return values; })(); - return CloudBigtableInstanceSpec; + return VertexDatasetSpec; })(); - v1.ServiceSpec = (function() { + v1.ModelSpec = (function() { /** - * Properties of a ServiceSpec. + * Properties of a ModelSpec. * @memberof google.cloud.datacatalog.v1 - * @interface IServiceSpec - * @property {google.cloud.datacatalog.v1.ICloudBigtableInstanceSpec|null} [cloudBigtableInstanceSpec] ServiceSpec cloudBigtableInstanceSpec + * @interface IModelSpec + * @property {google.cloud.datacatalog.v1.IVertexModelSpec|null} [vertexModelSpec] ModelSpec vertexModelSpec */ /** - * Constructs a new ServiceSpec. + * Constructs a new ModelSpec. * @memberof google.cloud.datacatalog.v1 - * @classdesc Represents a ServiceSpec. - * @implements IServiceSpec + * @classdesc Represents a ModelSpec. + * @implements IModelSpec * @constructor - * @param {google.cloud.datacatalog.v1.IServiceSpec=} [properties] Properties to set + * @param {google.cloud.datacatalog.v1.IModelSpec=} [properties] Properties to set */ - function ServiceSpec(properties) { + function ModelSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -10819,89 +12300,89 @@ } /** - * ServiceSpec cloudBigtableInstanceSpec. - * @member {google.cloud.datacatalog.v1.ICloudBigtableInstanceSpec|null|undefined} cloudBigtableInstanceSpec - * @memberof google.cloud.datacatalog.v1.ServiceSpec + * ModelSpec vertexModelSpec. + * @member {google.cloud.datacatalog.v1.IVertexModelSpec|null|undefined} vertexModelSpec + * @memberof google.cloud.datacatalog.v1.ModelSpec * @instance */ - ServiceSpec.prototype.cloudBigtableInstanceSpec = null; + ModelSpec.prototype.vertexModelSpec = null; // OneOf field names bound to virtual getters and setters var $oneOfFields; /** - * ServiceSpec systemSpec. - * @member {"cloudBigtableInstanceSpec"|undefined} systemSpec - * @memberof google.cloud.datacatalog.v1.ServiceSpec + * ModelSpec systemSpec. + * @member {"vertexModelSpec"|undefined} systemSpec + * @memberof google.cloud.datacatalog.v1.ModelSpec * @instance */ - Object.defineProperty(ServiceSpec.prototype, "systemSpec", { - get: $util.oneOfGetter($oneOfFields = ["cloudBigtableInstanceSpec"]), + Object.defineProperty(ModelSpec.prototype, "systemSpec", { + get: $util.oneOfGetter($oneOfFields = ["vertexModelSpec"]), set: $util.oneOfSetter($oneOfFields) }); /** - * Creates a new ServiceSpec instance using the specified properties. + * Creates a new ModelSpec instance using the specified properties. * @function create - * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @memberof google.cloud.datacatalog.v1.ModelSpec * @static - * @param {google.cloud.datacatalog.v1.IServiceSpec=} [properties] Properties to set - * @returns {google.cloud.datacatalog.v1.ServiceSpec} ServiceSpec instance + * @param {google.cloud.datacatalog.v1.IModelSpec=} [properties] Properties to set + * @returns {google.cloud.datacatalog.v1.ModelSpec} ModelSpec instance */ - ServiceSpec.create = function create(properties) { - return new ServiceSpec(properties); + ModelSpec.create = function create(properties) { + return new ModelSpec(properties); }; /** - * Encodes the specified ServiceSpec message. Does not implicitly {@link google.cloud.datacatalog.v1.ServiceSpec.verify|verify} messages. + * Encodes the specified ModelSpec message. Does not implicitly {@link google.cloud.datacatalog.v1.ModelSpec.verify|verify} messages. * @function encode - * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @memberof google.cloud.datacatalog.v1.ModelSpec * @static - * @param {google.cloud.datacatalog.v1.IServiceSpec} message ServiceSpec message or plain object to encode + * @param {google.cloud.datacatalog.v1.IModelSpec} message ModelSpec message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ServiceSpec.encode = function encode(message, writer) { + ModelSpec.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.cloudBigtableInstanceSpec != null && Object.hasOwnProperty.call(message, "cloudBigtableInstanceSpec")) - $root.google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.encode(message.cloudBigtableInstanceSpec, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.vertexModelSpec != null && Object.hasOwnProperty.call(message, "vertexModelSpec")) + $root.google.cloud.datacatalog.v1.VertexModelSpec.encode(message.vertexModelSpec, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); return writer; }; /** - * Encodes the specified ServiceSpec message, length delimited. Does not implicitly {@link google.cloud.datacatalog.v1.ServiceSpec.verify|verify} messages. + * Encodes the specified ModelSpec message, length delimited. Does not implicitly {@link google.cloud.datacatalog.v1.ModelSpec.verify|verify} messages. * @function encodeDelimited - * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @memberof google.cloud.datacatalog.v1.ModelSpec * @static - * @param {google.cloud.datacatalog.v1.IServiceSpec} message ServiceSpec message or plain object to encode + * @param {google.cloud.datacatalog.v1.IModelSpec} message ModelSpec message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - ServiceSpec.encodeDelimited = function encodeDelimited(message, writer) { + ModelSpec.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a ServiceSpec message from the specified reader or buffer. + * Decodes a ModelSpec message from the specified reader or buffer. * @function decode - * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @memberof google.cloud.datacatalog.v1.ModelSpec * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {google.cloud.datacatalog.v1.ServiceSpec} ServiceSpec + * @returns {google.cloud.datacatalog.v1.ModelSpec} ModelSpec * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceSpec.decode = function decode(reader, length) { + ModelSpec.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.datacatalog.v1.ServiceSpec(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.datacatalog.v1.ModelSpec(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: { - message.cloudBigtableInstanceSpec = $root.google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.decode(reader, reader.uint32()); + message.vertexModelSpec = $root.google.cloud.datacatalog.v1.VertexModelSpec.decode(reader, reader.uint32()); break; } default: @@ -10913,112 +12394,112 @@ }; /** - * Decodes a ServiceSpec message from the specified reader or buffer, length delimited. + * Decodes a ModelSpec message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @memberof google.cloud.datacatalog.v1.ModelSpec * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {google.cloud.datacatalog.v1.ServiceSpec} ServiceSpec + * @returns {google.cloud.datacatalog.v1.ModelSpec} ModelSpec * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceSpec.decodeDelimited = function decodeDelimited(reader) { + ModelSpec.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a ServiceSpec message. + * Verifies a ModelSpec message. * @function verify - * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @memberof google.cloud.datacatalog.v1.ModelSpec * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceSpec.verify = function verify(message) { + ModelSpec.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; var properties = {}; - if (message.cloudBigtableInstanceSpec != null && message.hasOwnProperty("cloudBigtableInstanceSpec")) { + if (message.vertexModelSpec != null && message.hasOwnProperty("vertexModelSpec")) { properties.systemSpec = 1; { - var error = $root.google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.verify(message.cloudBigtableInstanceSpec); + var error = $root.google.cloud.datacatalog.v1.VertexModelSpec.verify(message.vertexModelSpec); if (error) - return "cloudBigtableInstanceSpec." + error; + return "vertexModelSpec." + error; } } return null; }; /** - * Creates a ServiceSpec message from a plain object. Also converts values to their respective internal types. + * Creates a ModelSpec message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @memberof google.cloud.datacatalog.v1.ModelSpec * @static * @param {Object.} object Plain object - * @returns {google.cloud.datacatalog.v1.ServiceSpec} ServiceSpec + * @returns {google.cloud.datacatalog.v1.ModelSpec} ModelSpec */ - ServiceSpec.fromObject = function fromObject(object) { - if (object instanceof $root.google.cloud.datacatalog.v1.ServiceSpec) + ModelSpec.fromObject = function fromObject(object) { + if (object instanceof $root.google.cloud.datacatalog.v1.ModelSpec) return object; - var message = new $root.google.cloud.datacatalog.v1.ServiceSpec(); - if (object.cloudBigtableInstanceSpec != null) { - if (typeof object.cloudBigtableInstanceSpec !== "object") - throw TypeError(".google.cloud.datacatalog.v1.ServiceSpec.cloudBigtableInstanceSpec: object expected"); - message.cloudBigtableInstanceSpec = $root.google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.fromObject(object.cloudBigtableInstanceSpec); + var message = new $root.google.cloud.datacatalog.v1.ModelSpec(); + if (object.vertexModelSpec != null) { + if (typeof object.vertexModelSpec !== "object") + throw TypeError(".google.cloud.datacatalog.v1.ModelSpec.vertexModelSpec: object expected"); + message.vertexModelSpec = $root.google.cloud.datacatalog.v1.VertexModelSpec.fromObject(object.vertexModelSpec); } return message; }; /** - * Creates a plain object from a ServiceSpec message. Also converts values to other types if specified. + * Creates a plain object from a ModelSpec message. Also converts values to other types if specified. * @function toObject - * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @memberof google.cloud.datacatalog.v1.ModelSpec * @static - * @param {google.cloud.datacatalog.v1.ServiceSpec} message ServiceSpec + * @param {google.cloud.datacatalog.v1.ModelSpec} message ModelSpec * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - ServiceSpec.toObject = function toObject(message, options) { + ModelSpec.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (message.cloudBigtableInstanceSpec != null && message.hasOwnProperty("cloudBigtableInstanceSpec")) { - object.cloudBigtableInstanceSpec = $root.google.cloud.datacatalog.v1.CloudBigtableInstanceSpec.toObject(message.cloudBigtableInstanceSpec, options); + if (message.vertexModelSpec != null && message.hasOwnProperty("vertexModelSpec")) { + object.vertexModelSpec = $root.google.cloud.datacatalog.v1.VertexModelSpec.toObject(message.vertexModelSpec, options); if (options.oneofs) - object.systemSpec = "cloudBigtableInstanceSpec"; + object.systemSpec = "vertexModelSpec"; } return object; }; /** - * Converts this ServiceSpec to JSON. + * Converts this ModelSpec to JSON. * @function toJSON - * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @memberof google.cloud.datacatalog.v1.ModelSpec * @instance * @returns {Object.} JSON object */ - ServiceSpec.prototype.toJSON = function toJSON() { + ModelSpec.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * Gets the default type url for ServiceSpec + * Gets the default type url for ModelSpec * @function getTypeUrl - * @memberof google.cloud.datacatalog.v1.ServiceSpec + * @memberof google.cloud.datacatalog.v1.ModelSpec * @static * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns {string} The default type url */ - ServiceSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { + ModelSpec.getTypeUrl = function getTypeUrl(typeUrlPrefix) { if (typeUrlPrefix === undefined) { typeUrlPrefix = "type.googleapis.com"; } - return typeUrlPrefix + "/google.cloud.datacatalog.v1.ServiceSpec"; + return typeUrlPrefix + "/google.cloud.datacatalog.v1.ModelSpec"; }; - return ServiceSpec; + return ModelSpec; })(); v1.BusinessContext = (function() { @@ -19971,6 +21452,7 @@ case 7: case 8: case 9: + case 10: break; } if (message.fullyQualifiedName != null && message.hasOwnProperty("fullyQualifiedName")) @@ -20040,6 +21522,10 @@ case 9: message.system = 9; break; + case "VERTEX_AI": + case 10: + message.system = 10; + break; } if (object.fullyQualifiedName != null) message.fullyQualifiedName = String(object.fullyQualifiedName); @@ -23762,6 +25248,7 @@ case 7: case 8: case 9: + case 10: break; } } @@ -23874,6 +25361,10 @@ case 9: message.integratedSystem = 9; break; + case "VERTEX_AI": + case 10: + message.integratedSystem = 10; + break; } if (object.userSpecifiedSystem != null) message.userSpecifiedSystem = String(object.userSpecifiedSystem); diff --git a/packages/google-cloud-datacatalog/protos/protos.json b/packages/google-cloud-datacatalog/protos/protos.json index 9cd8ece0eb1..c1ef3a509b5 100644 --- a/packages/google-cloud-datacatalog/protos/protos.json +++ b/packages/google-cloud-datacatalog/protos/protos.json @@ -107,7 +107,8 @@ "CLOUD_SPANNER": 6, "CLOUD_BIGTABLE": 7, "CLOUD_SQL": 8, - "LOOKER": 9 + "LOOKER": 9, + "VERTEX_AI": 10 } }, "ManagingSystem": { @@ -1245,8 +1246,10 @@ "databaseTableSpec", "dataSourceConnectionSpec", "routineSpec", + "datasetSpec", "filesetSpec", - "serviceSpec" + "serviceSpec", + "modelSpec" ] } }, @@ -1328,6 +1331,10 @@ "type": "RoutineSpec", "id": 28 }, + "datasetSpec": { + "type": "DatasetSpec", + "id": 32 + }, "filesetSpec": { "type": "FilesetSpec", "id": 33 @@ -1336,6 +1343,10 @@ "type": "ServiceSpec", "id": 42 }, + "modelSpec": { + "type": "ModelSpec", + "id": 43 + }, "displayName": { "type": "string", "id": 3 @@ -1529,6 +1540,21 @@ } } }, + "DatasetSpec": { + "oneofs": { + "systemSpec": { + "oneof": [ + "vertexDatasetSpec" + ] + } + }, + "fields": { + "vertexDatasetSpec": { + "type": "VertexDatasetSpec", + "id": 2 + } + } + }, "SqlDatabaseSystemSpec": { "fields": { "sqlEngine": { @@ -1627,6 +1653,100 @@ } } }, + "VertexModelSourceInfo": { + "fields": { + "sourceType": { + "type": "ModelSourceType", + "id": 1 + }, + "copy": { + "type": "bool", + "id": 2 + } + }, + "nested": { + "ModelSourceType": { + "values": { + "MODEL_SOURCE_TYPE_UNSPECIFIED": 0, + "AUTOML": 1, + "CUSTOM": 2, + "BQML": 3, + "MODEL_GARDEN": 4 + } + } + } + }, + "VertexModelSpec": { + "fields": { + "versionId": { + "type": "string", + "id": 1 + }, + "versionAliases": { + "rule": "repeated", + "type": "string", + "id": 2 + }, + "versionDescription": { + "type": "string", + "id": 3 + }, + "vertexModelSourceInfo": { + "type": "VertexModelSourceInfo", + "id": 4 + }, + "containerImageUri": { + "type": "string", + "id": 5 + } + } + }, + "VertexDatasetSpec": { + "fields": { + "dataItemCount": { + "type": "int64", + "id": 1 + }, + "dataType": { + "type": "DataType", + "id": 2 + } + }, + "nested": { + "DataType": { + "values": { + "DATA_TYPE_UNSPECIFIED": 0, + "TABLE": 1, + "IMAGE": 2, + "TEXT": 3, + "VIDEO": 4, + "CONVERSATION": 5, + "TIME_SERIES": 6, + "DOCUMENT": 7, + "TEXT_TO_SPEECH": 8, + "TRANSLATION": 9, + "STORE_VISION": 10, + "ENTERPRISE_KNOWLEDGE_GRAPH": 11, + "TEXT_PROMPT": 12 + } + } + } + }, + "ModelSpec": { + "oneofs": { + "systemSpec": { + "oneof": [ + "vertexModelSpec" + ] + } + }, + "fields": { + "vertexModelSpec": { + "type": "VertexModelSpec", + "id": 1 + } + } + }, "BusinessContext": { "fields": { "entryOverview": {