import * as pulumi from "@pulumi/pulumi"; /** * Provides access to Google Cloud Platform KMS KeyHandle. A key handle is a Cloud KMS resource that helps you safely span the separation of duties to create new Cloud KMS keys for CMEK using Autokey. * * For more information see * [the official documentation](https://cloud.google.com/kms/docs/resource-hierarchy#key_handles) * and * [API](https://cloud.google.com/kms/docs/reference/rest/v1/projects.locations.keyHandles). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const myKeyHandle = gcp.kms.getKeyHandle({ * name: "eed58b7b-20ad-4da8-ad85-ba78a0d5ab87", * location: "us-central1", * }); * ``` */ export declare function getKeyHandle(args: GetKeyHandleArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getKeyHandle. */ export interface GetKeyHandleArgs { /** * The Google Cloud Platform location for the KeyHandle. * A full list of valid locations can be found by running `gcloud kms locations list`. * * - - - */ location: string; /** * The KeyHandle's name. * A KeyHandle name must exist within the provided location and must be valid UUID. */ name: string; /** * The project in which the resource belongs. If it * is not provided, the provider project is used. */ project?: string; } /** * A collection of values returned by getKeyHandle. */ export interface GetKeyHandleResult { /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; /** * The identifier of the KMS Key created for the KeyHandle. Its format is `projects/{projectId}/locations/{location}/keyRings/{keyRingName}/cryptoKeys/{cryptoKeyName}`. */ readonly kmsKey: string; /** * The location of the KMS Key and KeyHandle. */ readonly location: string; readonly name: string; /** * The identifier of the project where KMS KeyHandle is created. */ readonly project?: string; /** * Indicates the resource type that the resulting CryptoKey is meant to protect, e.g. {SERVICE}.googleapis.com/{TYPE}. See documentation for supported resource types. */ readonly resourceTypeSelector: string; } /** * Provides access to Google Cloud Platform KMS KeyHandle. A key handle is a Cloud KMS resource that helps you safely span the separation of duties to create new Cloud KMS keys for CMEK using Autokey. * * For more information see * [the official documentation](https://cloud.google.com/kms/docs/resource-hierarchy#key_handles) * and * [API](https://cloud.google.com/kms/docs/reference/rest/v1/projects.locations.keyHandles). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const myKeyHandle = gcp.kms.getKeyHandle({ * name: "eed58b7b-20ad-4da8-ad85-ba78a0d5ab87", * location: "us-central1", * }); * ``` */ export declare function getKeyHandleOutput(args: GetKeyHandleOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getKeyHandle. */ export interface GetKeyHandleOutputArgs { /** * The Google Cloud Platform location for the KeyHandle. * A full list of valid locations can be found by running `gcloud kms locations list`. * * - - - */ location: pulumi.Input; /** * The KeyHandle's name. * A KeyHandle name must exist within the provided location and must be valid UUID. */ name: pulumi.Input; /** * The project in which the resource belongs. If it * is not provided, the provider project is used. */ project?: pulumi.Input; }