import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../types/output"; /** * 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/list). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const myKeyHandles = gcp.kms.getKeyHandles({ * project: "resource-project-id", * location: "us-central1", * resourceTypeSelector: "storage.googleapis.com/Bucket", * }); * ``` */ export declare function getKeyHandles(args: GetKeyHandlesArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getKeyHandles. */ export interface GetKeyHandlesArgs { /** * 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 project in which the resource belongs. If it * is not provided, the provider project is used. */ project?: string; /** * The resource type by which to filter KeyHandle e.g. {SERVICE}.googleapis.com/{TYPE}. See documentation for supported resource types. * * - - - */ resourceTypeSelector: string; } /** * A collection of values returned by getKeyHandles. */ export interface GetKeyHandlesResult { /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; readonly keyHandles: outputs.kms.GetKeyHandlesKeyHandle[]; /** * The location of the KMS Key and KeyHandle. */ readonly location: 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/list). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const myKeyHandles = gcp.kms.getKeyHandles({ * project: "resource-project-id", * location: "us-central1", * resourceTypeSelector: "storage.googleapis.com/Bucket", * }); * ``` */ export declare function getKeyHandlesOutput(args: GetKeyHandlesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getKeyHandles. */ export interface GetKeyHandlesOutputArgs { /** * 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 project in which the resource belongs. If it * is not provided, the provider project is used. */ project?: pulumi.Input; /** * The resource type by which to filter KeyHandle e.g. {SERVICE}.googleapis.com/{TYPE}. See documentation for supported resource types. * * - - - */ resourceTypeSelector: pulumi.Input; }