import * as pulumi from "@pulumi/pulumi"; import { input as inputs, output as outputs } from "../../types"; /** * Create a new CryptoKeyVersion in a CryptoKey. The server will assign the next sequential id. If unset, state will be set to ENABLED. */ export declare class KeyRingCryptoKeyCryptoKeyVersion extends pulumi.CustomResource { /** * Get an existing KeyRingCryptoKeyCryptoKeyVersion resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): KeyRingCryptoKeyCryptoKeyVersion; /** * Returns true if the given object is an instance of KeyRingCryptoKeyCryptoKeyVersion. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is KeyRingCryptoKeyCryptoKeyVersion; /** * The CryptoKeyVersionAlgorithm that this CryptoKeyVersion supports. */ readonly algorithm: pulumi.Output; /** * Statement that was generated and signed by the HSM at key creation time. Use this statement to verify attributes of the key as stored on the HSM, independently of Google. Only provided for key versions with protection_level HSM. */ readonly attestation: pulumi.Output; /** * The time at which this CryptoKeyVersion was created. */ readonly createTime: pulumi.Output; /** * The time this CryptoKeyVersion's key material was destroyed. Only present if state is DESTROYED. */ readonly destroyEventTime: pulumi.Output; /** * The time this CryptoKeyVersion's key material is scheduled for destruction. Only present if state is DESTROY_SCHEDULED. */ readonly destroyTime: pulumi.Output; /** * ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level. */ readonly externalProtectionLevelOptions: pulumi.Output; /** * The time this CryptoKeyVersion's key material was generated. */ readonly generateTime: pulumi.Output; /** * The root cause of an import failure. Only present if state is IMPORT_FAILED. */ readonly importFailureReason: pulumi.Output; /** * The name of the ImportJob used to import this CryptoKeyVersion. Only present if the underlying key material was imported. */ readonly importJob: pulumi.Output; /** * The time at which this CryptoKeyVersion's key material was imported. */ readonly importTime: pulumi.Output; /** * The resource name for this CryptoKeyVersion in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`. */ readonly name: pulumi.Output; /** * The ProtectionLevel describing how crypto operations are performed with this CryptoKeyVersion. */ readonly protectionLevel: pulumi.Output; /** * The current state of the CryptoKeyVersion. */ readonly state: pulumi.Output; /** * Create a KeyRingCryptoKeyCryptoKeyVersion resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: KeyRingCryptoKeyCryptoKeyVersionArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a KeyRingCryptoKeyCryptoKeyVersion resource. */ export interface KeyRingCryptoKeyCryptoKeyVersionArgs { readonly cryptoKeyVersionsId: pulumi.Input; readonly cryptoKeysId: pulumi.Input; /** * ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level. */ readonly externalProtectionLevelOptions?: pulumi.Input; readonly keyRingsId: pulumi.Input; readonly locationsId: pulumi.Input; readonly projectsId: pulumi.Input; /** * The current state of the CryptoKeyVersion. */ readonly state?: pulumi.Input; }