UNPKG

@google-cloud/confidentialcomputing

Version:
897 lines (733 loc) 542 kB
// Copyright 2026 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. import type {protobuf as $protobuf} from "google-gax"; import Long = require("long"); /** Namespace google. */ export namespace google { /** Namespace cloud. */ namespace cloud { /** Namespace confidentialcomputing. */ namespace confidentialcomputing { /** Namespace v1. */ namespace v1 { /** Represents a ConfidentialComputing */ class ConfidentialComputing extends $protobuf.rpc.Service { /** * Constructs a new ConfidentialComputing service. * @param rpcImpl RPC implementation * @param [requestDelimited=false] Whether requests are length-delimited * @param [responseDelimited=false] Whether responses are length-delimited */ constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean); /** * Creates new ConfidentialComputing service using the specified rpc implementation. * @param rpcImpl RPC implementation * @param [requestDelimited=false] Whether requests are length-delimited * @param [responseDelimited=false] Whether responses are length-delimited * @returns RPC service. Useful where requests and/or responses are streamed. */ public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): ConfidentialComputing; /** * Calls CreateChallenge. * @param request CreateChallengeRequest message or plain object * @param callback Node-style callback called with the error, if any, and Challenge */ public createChallenge(request: google.cloud.confidentialcomputing.v1.ICreateChallengeRequest, callback: google.cloud.confidentialcomputing.v1.ConfidentialComputing.CreateChallengeCallback): void; /** * Calls CreateChallenge. * @param request CreateChallengeRequest message or plain object * @returns Promise */ public createChallenge(request: google.cloud.confidentialcomputing.v1.ICreateChallengeRequest): Promise<google.cloud.confidentialcomputing.v1.Challenge>; /** * Calls VerifyAttestation. * @param request VerifyAttestationRequest message or plain object * @param callback Node-style callback called with the error, if any, and VerifyAttestationResponse */ public verifyAttestation(request: google.cloud.confidentialcomputing.v1.IVerifyAttestationRequest, callback: google.cloud.confidentialcomputing.v1.ConfidentialComputing.VerifyAttestationCallback): void; /** * Calls VerifyAttestation. * @param request VerifyAttestationRequest message or plain object * @returns Promise */ public verifyAttestation(request: google.cloud.confidentialcomputing.v1.IVerifyAttestationRequest): Promise<google.cloud.confidentialcomputing.v1.VerifyAttestationResponse>; /** * Calls VerifyConfidentialSpace. * @param request VerifyConfidentialSpaceRequest message or plain object * @param callback Node-style callback called with the error, if any, and VerifyConfidentialSpaceResponse */ public verifyConfidentialSpace(request: google.cloud.confidentialcomputing.v1.IVerifyConfidentialSpaceRequest, callback: google.cloud.confidentialcomputing.v1.ConfidentialComputing.VerifyConfidentialSpaceCallback): void; /** * Calls VerifyConfidentialSpace. * @param request VerifyConfidentialSpaceRequest message or plain object * @returns Promise */ public verifyConfidentialSpace(request: google.cloud.confidentialcomputing.v1.IVerifyConfidentialSpaceRequest): Promise<google.cloud.confidentialcomputing.v1.VerifyConfidentialSpaceResponse>; /** * Calls VerifyConfidentialGke. * @param request VerifyConfidentialGkeRequest message or plain object * @param callback Node-style callback called with the error, if any, and VerifyConfidentialGkeResponse */ public verifyConfidentialGke(request: google.cloud.confidentialcomputing.v1.IVerifyConfidentialGkeRequest, callback: google.cloud.confidentialcomputing.v1.ConfidentialComputing.VerifyConfidentialGkeCallback): void; /** * Calls VerifyConfidentialGke. * @param request VerifyConfidentialGkeRequest message or plain object * @returns Promise */ public verifyConfidentialGke(request: google.cloud.confidentialcomputing.v1.IVerifyConfidentialGkeRequest): Promise<google.cloud.confidentialcomputing.v1.VerifyConfidentialGkeResponse>; } namespace ConfidentialComputing { /** * Callback as used by {@link google.cloud.confidentialcomputing.v1.ConfidentialComputing|createChallenge}. * @param error Error, if any * @param [response] Challenge */ type CreateChallengeCallback = (error: (Error|null), response?: google.cloud.confidentialcomputing.v1.Challenge) => void; /** * Callback as used by {@link google.cloud.confidentialcomputing.v1.ConfidentialComputing|verifyAttestation}. * @param error Error, if any * @param [response] VerifyAttestationResponse */ type VerifyAttestationCallback = (error: (Error|null), response?: google.cloud.confidentialcomputing.v1.VerifyAttestationResponse) => void; /** * Callback as used by {@link google.cloud.confidentialcomputing.v1.ConfidentialComputing|verifyConfidentialSpace}. * @param error Error, if any * @param [response] VerifyConfidentialSpaceResponse */ type VerifyConfidentialSpaceCallback = (error: (Error|null), response?: google.cloud.confidentialcomputing.v1.VerifyConfidentialSpaceResponse) => void; /** * Callback as used by {@link google.cloud.confidentialcomputing.v1.ConfidentialComputing|verifyConfidentialGke}. * @param error Error, if any * @param [response] VerifyConfidentialGkeResponse */ type VerifyConfidentialGkeCallback = (error: (Error|null), response?: google.cloud.confidentialcomputing.v1.VerifyConfidentialGkeResponse) => void; } /** SigningAlgorithm enum. */ enum SigningAlgorithm { SIGNING_ALGORITHM_UNSPECIFIED = 0, RSASSA_PSS_SHA256 = 1, RSASSA_PKCS1V15_SHA256 = 2, ECDSA_P256_SHA256 = 3 } /** TokenType enum. */ enum TokenType { TOKEN_TYPE_UNSPECIFIED = 0, TOKEN_TYPE_OIDC = 1, TOKEN_TYPE_PKI = 2, TOKEN_TYPE_LIMITED_AWS = 3, TOKEN_TYPE_AWS_PRINCIPALTAGS = 4 } /** SignatureType enum. */ enum SignatureType { SIGNATURE_TYPE_UNSPECIFIED = 0, SIGNATURE_TYPE_OIDC = 1, SIGNATURE_TYPE_PKI = 2 } /** TokenProfile enum. */ enum TokenProfile { TOKEN_PROFILE_UNSPECIFIED = 0, TOKEN_PROFILE_DEFAULT_EAT = 1, TOKEN_PROFILE_AWS = 2 } /** Properties of a Challenge. */ interface IChallenge { /** Challenge name */ name?: (string|null); /** Challenge createTime */ createTime?: (google.protobuf.ITimestamp|null); /** Challenge expireTime */ expireTime?: (google.protobuf.ITimestamp|null); /** Challenge used */ used?: (boolean|null); /** Challenge tpmNonce */ tpmNonce?: (string|null); } /** Represents a Challenge. */ class Challenge implements IChallenge { /** * Constructs a new Challenge. * @param [properties] Properties to set */ constructor(properties?: google.cloud.confidentialcomputing.v1.IChallenge); /** Challenge name. */ public name: string; /** Challenge createTime. */ public createTime?: (google.protobuf.ITimestamp|null); /** Challenge expireTime. */ public expireTime?: (google.protobuf.ITimestamp|null); /** Challenge used. */ public used: boolean; /** Challenge tpmNonce. */ public tpmNonce: string; /** * Creates a new Challenge instance using the specified properties. * @param [properties] Properties to set * @returns Challenge instance */ public static create(properties?: google.cloud.confidentialcomputing.v1.IChallenge): google.cloud.confidentialcomputing.v1.Challenge; /** * Encodes the specified Challenge message. Does not implicitly {@link google.cloud.confidentialcomputing.v1.Challenge.verify|verify} messages. * @param message Challenge message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: google.cloud.confidentialcomputing.v1.IChallenge, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified Challenge message, length delimited. Does not implicitly {@link google.cloud.confidentialcomputing.v1.Challenge.verify|verify} messages. * @param message Challenge message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: google.cloud.confidentialcomputing.v1.IChallenge, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a Challenge message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns Challenge * @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.confidentialcomputing.v1.Challenge; /** * Decodes a Challenge message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns Challenge * @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.confidentialcomputing.v1.Challenge; /** * Verifies a Challenge 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 Challenge message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns Challenge */ public static fromObject(object: { [k: string]: any }): google.cloud.confidentialcomputing.v1.Challenge; /** * Creates a plain object from a Challenge message. Also converts values to other types if specified. * @param message Challenge * @param [options] Conversion options * @returns Plain object */ public static toObject(message: google.cloud.confidentialcomputing.v1.Challenge, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this Challenge to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for Challenge * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a CreateChallengeRequest. */ interface ICreateChallengeRequest { /** CreateChallengeRequest parent */ parent?: (string|null); /** CreateChallengeRequest challenge */ challenge?: (google.cloud.confidentialcomputing.v1.IChallenge|null); } /** Represents a CreateChallengeRequest. */ class CreateChallengeRequest implements ICreateChallengeRequest { /** * Constructs a new CreateChallengeRequest. * @param [properties] Properties to set */ constructor(properties?: google.cloud.confidentialcomputing.v1.ICreateChallengeRequest); /** CreateChallengeRequest parent. */ public parent: string; /** CreateChallengeRequest challenge. */ public challenge?: (google.cloud.confidentialcomputing.v1.IChallenge|null); /** * Creates a new CreateChallengeRequest instance using the specified properties. * @param [properties] Properties to set * @returns CreateChallengeRequest instance */ public static create(properties?: google.cloud.confidentialcomputing.v1.ICreateChallengeRequest): google.cloud.confidentialcomputing.v1.CreateChallengeRequest; /** * Encodes the specified CreateChallengeRequest message. Does not implicitly {@link google.cloud.confidentialcomputing.v1.CreateChallengeRequest.verify|verify} messages. * @param message CreateChallengeRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: google.cloud.confidentialcomputing.v1.ICreateChallengeRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified CreateChallengeRequest message, length delimited. Does not implicitly {@link google.cloud.confidentialcomputing.v1.CreateChallengeRequest.verify|verify} messages. * @param message CreateChallengeRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: google.cloud.confidentialcomputing.v1.ICreateChallengeRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a CreateChallengeRequest message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns CreateChallengeRequest * @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.confidentialcomputing.v1.CreateChallengeRequest; /** * Decodes a CreateChallengeRequest message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns CreateChallengeRequest * @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.confidentialcomputing.v1.CreateChallengeRequest; /** * Verifies a CreateChallengeRequest 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 CreateChallengeRequest message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns CreateChallengeRequest */ public static fromObject(object: { [k: string]: any }): google.cloud.confidentialcomputing.v1.CreateChallengeRequest; /** * Creates a plain object from a CreateChallengeRequest message. Also converts values to other types if specified. * @param message CreateChallengeRequest * @param [options] Conversion options * @returns Plain object */ public static toObject(message: google.cloud.confidentialcomputing.v1.CreateChallengeRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this CreateChallengeRequest to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for CreateChallengeRequest * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a VerifyAttestationRequest. */ interface IVerifyAttestationRequest { /** VerifyAttestationRequest tdCcel */ tdCcel?: (google.cloud.confidentialcomputing.v1.ITdxCcelAttestation|null); /** VerifyAttestationRequest sevSnpAttestation */ sevSnpAttestation?: (google.cloud.confidentialcomputing.v1.ISevSnpAttestation|null); /** VerifyAttestationRequest nvidiaAttestation */ nvidiaAttestation?: (google.cloud.confidentialcomputing.v1.INvidiaAttestation|null); /** VerifyAttestationRequest challenge */ challenge?: (string|null); /** VerifyAttestationRequest gcpCredentials */ gcpCredentials?: (google.cloud.confidentialcomputing.v1.IGcpCredentials|null); /** VerifyAttestationRequest tpmAttestation */ tpmAttestation?: (google.cloud.confidentialcomputing.v1.ITpmAttestation|null); /** VerifyAttestationRequest confidentialSpaceInfo */ confidentialSpaceInfo?: (google.cloud.confidentialcomputing.v1.IConfidentialSpaceInfo|null); /** VerifyAttestationRequest tokenOptions */ tokenOptions?: (google.cloud.confidentialcomputing.v1.ITokenOptions|null); /** VerifyAttestationRequest attester */ attester?: (string|null); } /** Represents a VerifyAttestationRequest. */ class VerifyAttestationRequest implements IVerifyAttestationRequest { /** * Constructs a new VerifyAttestationRequest. * @param [properties] Properties to set */ constructor(properties?: google.cloud.confidentialcomputing.v1.IVerifyAttestationRequest); /** VerifyAttestationRequest tdCcel. */ public tdCcel?: (google.cloud.confidentialcomputing.v1.ITdxCcelAttestation|null); /** VerifyAttestationRequest sevSnpAttestation. */ public sevSnpAttestation?: (google.cloud.confidentialcomputing.v1.ISevSnpAttestation|null); /** VerifyAttestationRequest nvidiaAttestation. */ public nvidiaAttestation?: (google.cloud.confidentialcomputing.v1.INvidiaAttestation|null); /** VerifyAttestationRequest challenge. */ public challenge: string; /** VerifyAttestationRequest gcpCredentials. */ public gcpCredentials?: (google.cloud.confidentialcomputing.v1.IGcpCredentials|null); /** VerifyAttestationRequest tpmAttestation. */ public tpmAttestation?: (google.cloud.confidentialcomputing.v1.ITpmAttestation|null); /** VerifyAttestationRequest confidentialSpaceInfo. */ public confidentialSpaceInfo?: (google.cloud.confidentialcomputing.v1.IConfidentialSpaceInfo|null); /** VerifyAttestationRequest tokenOptions. */ public tokenOptions?: (google.cloud.confidentialcomputing.v1.ITokenOptions|null); /** VerifyAttestationRequest attester. */ public attester: string; /** VerifyAttestationRequest teeAttestation. */ public teeAttestation?: ("tdCcel"|"sevSnpAttestation"); /** VerifyAttestationRequest deviceAttestation. */ public deviceAttestation?: "nvidiaAttestation"; /** * Creates a new VerifyAttestationRequest instance using the specified properties. * @param [properties] Properties to set * @returns VerifyAttestationRequest instance */ public static create(properties?: google.cloud.confidentialcomputing.v1.IVerifyAttestationRequest): google.cloud.confidentialcomputing.v1.VerifyAttestationRequest; /** * Encodes the specified VerifyAttestationRequest message. Does not implicitly {@link google.cloud.confidentialcomputing.v1.VerifyAttestationRequest.verify|verify} messages. * @param message VerifyAttestationRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: google.cloud.confidentialcomputing.v1.IVerifyAttestationRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified VerifyAttestationRequest message, length delimited. Does not implicitly {@link google.cloud.confidentialcomputing.v1.VerifyAttestationRequest.verify|verify} messages. * @param message VerifyAttestationRequest message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: google.cloud.confidentialcomputing.v1.IVerifyAttestationRequest, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a VerifyAttestationRequest message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns VerifyAttestationRequest * @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.confidentialcomputing.v1.VerifyAttestationRequest; /** * Decodes a VerifyAttestationRequest message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns VerifyAttestationRequest * @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.confidentialcomputing.v1.VerifyAttestationRequest; /** * Verifies a VerifyAttestationRequest 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 VerifyAttestationRequest message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns VerifyAttestationRequest */ public static fromObject(object: { [k: string]: any }): google.cloud.confidentialcomputing.v1.VerifyAttestationRequest; /** * Creates a plain object from a VerifyAttestationRequest message. Also converts values to other types if specified. * @param message VerifyAttestationRequest * @param [options] Conversion options * @returns Plain object */ public static toObject(message: google.cloud.confidentialcomputing.v1.VerifyAttestationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this VerifyAttestationRequest to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for VerifyAttestationRequest * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a NvidiaAttestation. */ interface INvidiaAttestation { /** NvidiaAttestation spt */ spt?: (google.cloud.confidentialcomputing.v1.NvidiaAttestation.ISinglePassthroughAttestation|null); /** NvidiaAttestation ppcie */ ppcie?: (google.cloud.confidentialcomputing.v1.NvidiaAttestation.IProtectedPcieAttestation|null); /** NvidiaAttestation mpt */ mpt?: (google.cloud.confidentialcomputing.v1.NvidiaAttestation.IMultiGpuSecurePassthroughAttestation|null); } /** Represents a NvidiaAttestation. */ class NvidiaAttestation implements INvidiaAttestation { /** * Constructs a new NvidiaAttestation. * @param [properties] Properties to set */ constructor(properties?: google.cloud.confidentialcomputing.v1.INvidiaAttestation); /** NvidiaAttestation spt. */ public spt?: (google.cloud.confidentialcomputing.v1.NvidiaAttestation.ISinglePassthroughAttestation|null); /** NvidiaAttestation ppcie. */ public ppcie?: (google.cloud.confidentialcomputing.v1.NvidiaAttestation.IProtectedPcieAttestation|null); /** NvidiaAttestation mpt. */ public mpt?: (google.cloud.confidentialcomputing.v1.NvidiaAttestation.IMultiGpuSecurePassthroughAttestation|null); /** NvidiaAttestation ccFeature. */ public ccFeature?: ("spt"|"ppcie"|"mpt"); /** * Creates a new NvidiaAttestation instance using the specified properties. * @param [properties] Properties to set * @returns NvidiaAttestation instance */ public static create(properties?: google.cloud.confidentialcomputing.v1.INvidiaAttestation): google.cloud.confidentialcomputing.v1.NvidiaAttestation; /** * Encodes the specified NvidiaAttestation message. Does not implicitly {@link google.cloud.confidentialcomputing.v1.NvidiaAttestation.verify|verify} messages. * @param message NvidiaAttestation message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: google.cloud.confidentialcomputing.v1.INvidiaAttestation, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified NvidiaAttestation message, length delimited. Does not implicitly {@link google.cloud.confidentialcomputing.v1.NvidiaAttestation.verify|verify} messages. * @param message NvidiaAttestation message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: google.cloud.confidentialcomputing.v1.INvidiaAttestation, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a NvidiaAttestation message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns NvidiaAttestation * @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.confidentialcomputing.v1.NvidiaAttestation; /** * Decodes a NvidiaAttestation message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns NvidiaAttestation * @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.confidentialcomputing.v1.NvidiaAttestation; /** * Verifies a NvidiaAttestation 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 NvidiaAttestation message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns NvidiaAttestation */ public static fromObject(object: { [k: string]: any }): google.cloud.confidentialcomputing.v1.NvidiaAttestation; /** * Creates a plain object from a NvidiaAttestation message. Also converts values to other types if specified. * @param message NvidiaAttestation * @param [options] Conversion options * @returns Plain object */ public static toObject(message: google.cloud.confidentialcomputing.v1.NvidiaAttestation, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this NvidiaAttestation to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for NvidiaAttestation * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace NvidiaAttestation { /** Properties of a GpuInfo. */ interface IGpuInfo { /** GpuInfo uuid */ uuid?: (string|null); /** GpuInfo driverVersion */ driverVersion?: (string|null); /** GpuInfo vbiosVersion */ vbiosVersion?: (string|null); /** GpuInfo gpuArchitectureType */ gpuArchitectureType?: (google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuArchitectureType|keyof typeof google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuArchitectureType|null); /** GpuInfo attestationCertificateChain */ attestationCertificateChain?: (Uint8Array|Buffer|string|null); /** GpuInfo attestationReport */ attestationReport?: (Uint8Array|Buffer|string|null); } /** Represents a GpuInfo. */ class GpuInfo implements IGpuInfo { /** * Constructs a new GpuInfo. * @param [properties] Properties to set */ constructor(properties?: google.cloud.confidentialcomputing.v1.NvidiaAttestation.IGpuInfo); /** GpuInfo uuid. */ public uuid: string; /** GpuInfo driverVersion. */ public driverVersion: string; /** GpuInfo vbiosVersion. */ public vbiosVersion: string; /** GpuInfo gpuArchitectureType. */ public gpuArchitectureType: (google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuArchitectureType|keyof typeof google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuArchitectureType); /** GpuInfo attestationCertificateChain. */ public attestationCertificateChain: (Uint8Array|Buffer|string); /** GpuInfo attestationReport. */ public attestationReport: (Uint8Array|Buffer|string); /** * Creates a new GpuInfo instance using the specified properties. * @param [properties] Properties to set * @returns GpuInfo instance */ public static create(properties?: google.cloud.confidentialcomputing.v1.NvidiaAttestation.IGpuInfo): google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuInfo; /** * Encodes the specified GpuInfo message. Does not implicitly {@link google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuInfo.verify|verify} messages. * @param message GpuInfo message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: google.cloud.confidentialcomputing.v1.NvidiaAttestation.IGpuInfo, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified GpuInfo message, length delimited. Does not implicitly {@link google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuInfo.verify|verify} messages. * @param message GpuInfo message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: google.cloud.confidentialcomputing.v1.NvidiaAttestation.IGpuInfo, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a GpuInfo message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns GpuInfo * @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.confidentialcomputing.v1.NvidiaAttestation.GpuInfo; /** * Decodes a GpuInfo message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns GpuInfo * @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.confidentialcomputing.v1.NvidiaAttestation.GpuInfo; /** * Verifies a GpuInfo 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 GpuInfo message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns GpuInfo */ public static fromObject(object: { [k: string]: any }): google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuInfo; /** * Creates a plain object from a GpuInfo message. Also converts values to other types if specified. * @param message GpuInfo * @param [options] Conversion options * @returns Plain object */ public static toObject(message: google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuInfo, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this GpuInfo to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for GpuInfo * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SwitchInfo. */ interface ISwitchInfo { /** SwitchInfo uuid */ uuid?: (string|null); /** SwitchInfo attestationCertificateChain */ attestationCertificateChain?: (Uint8Array|Buffer|string|null); /** SwitchInfo attestationReport */ attestationReport?: (Uint8Array|Buffer|string|null); } /** Represents a SwitchInfo. */ class SwitchInfo implements ISwitchInfo { /** * Constructs a new SwitchInfo. * @param [properties] Properties to set */ constructor(properties?: google.cloud.confidentialcomputing.v1.NvidiaAttestation.ISwitchInfo); /** SwitchInfo uuid. */ public uuid: string; /** SwitchInfo attestationCertificateChain. */ public attestationCertificateChain: (Uint8Array|Buffer|string); /** SwitchInfo attestationReport. */ public attestationReport: (Uint8Array|Buffer|string); /** * Creates a new SwitchInfo instance using the specified properties. * @param [properties] Properties to set * @returns SwitchInfo instance */ public static create(properties?: google.cloud.confidentialcomputing.v1.NvidiaAttestation.ISwitchInfo): google.cloud.confidentialcomputing.v1.NvidiaAttestation.SwitchInfo; /** * Encodes the specified SwitchInfo message. Does not implicitly {@link google.cloud.confidentialcomputing.v1.NvidiaAttestation.SwitchInfo.verify|verify} messages. * @param message SwitchInfo message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: google.cloud.confidentialcomputing.v1.NvidiaAttestation.ISwitchInfo, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SwitchInfo message, length delimited. Does not implicitly {@link google.cloud.confidentialcomputing.v1.NvidiaAttestation.SwitchInfo.verify|verify} messages. * @param message SwitchInfo message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: google.cloud.confidentialcomputing.v1.NvidiaAttestation.ISwitchInfo, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SwitchInfo message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SwitchInfo * @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.confidentialcomputing.v1.NvidiaAttestation.SwitchInfo; /** * Decodes a SwitchInfo message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SwitchInfo * @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.confidentialcomputing.v1.NvidiaAttestation.SwitchInfo; /** * Verifies a SwitchInfo 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 SwitchInfo message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SwitchInfo */ public static fromObject(object: { [k: string]: any }): google.cloud.confidentialcomputing.v1.NvidiaAttestation.SwitchInfo; /** * Creates a plain object from a SwitchInfo message. Also converts values to other types if specified. * @param message SwitchInfo * @param [options] Conversion options * @returns Plain object */ public static toObject(message: google.cloud.confidentialcomputing.v1.NvidiaAttestation.SwitchInfo, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SwitchInfo to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SwitchInfo * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SinglePassthroughAttestation. */ interface ISinglePassthroughAttestation { /** SinglePassthroughAttestation gpuQuote */ gpuQuote?: (google.cloud.confidentialcomputing.v1.NvidiaAttestation.IGpuInfo|null