@google-cloud/confidentialcomputing
Version:
Confidential Computing API client for Node.js
897 lines (733 loc) • 542 kB
TypeScript
// 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