import * as pulumi from "@pulumi/pulumi";
/**
 * Use this data source to access information about an existing Managed Hardware Security Module Key.
 *
 * > **Note:** All arguments including the secret value will be stored in the raw state as plain-text.
 * [Read more about sensitive data in state](https://www.terraform.io/docs/state/sensitive-data.html).
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as azure from "@pulumi/azure";
 *
 * export = async () => {
 *     const example = await azure.keyvault.getManagedHardwareSecurityModuleKey({
 *         managedHsmId: exampleAzurermKeyVaultManagedHardwareSecurityModule.id,
 *         name: exampleAzurermKeyVaultManagedHardwareSecurityModuleKey.name,
 *     });
 *     return {
 *         "hsm-key-vesrion": example.version,
 *     };
 * }
 * ```
 */
export declare function getManagedHardwareSecurityModuleKey(args: GetManagedHardwareSecurityModuleKeyArgs, opts?: pulumi.InvokeOptions): Promise<GetManagedHardwareSecurityModuleKeyResult>;
/**
 * A collection of arguments for invoking getManagedHardwareSecurityModuleKey.
 */
export interface GetManagedHardwareSecurityModuleKeyArgs {
    /**
     * Specifies the ID of the Managed Hardware Security Module instance where the Secret resides, available on the `azure.keyvault.ManagedHardwareSecurityModuleKey` Data Source / Resource.
     *
     * > **Note:** The Managed Hardware Security Module must be in the same subscription as the provider. If the Managed Hardware Security Module is in another subscription, you must create an aliased provider for that subscription.
     */
    managedHsmId: string;
    /**
     * Specifies the name of the Managed Hardware Security Module Key.
     */
    name: string;
}
/**
 * A collection of values returned by getManagedHardwareSecurityModuleKey.
 */
export interface GetManagedHardwareSecurityModuleKeyResult {
    /**
     * The EC Curve name of this Managed Hardware Security Module Key.
     */
    readonly curve: string;
    readonly expirationDate: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * A list of JSON web key operations assigned to this Managed Hardware Security Module Key
     */
    readonly keyOpts: string[];
    /**
     * Specifies the Size of this Managed Hardware Security Module Key.
     */
    readonly keySize: number;
    /**
     * Specifies the Key Type of this Managed Hardware Security Module Key
     */
    readonly keyType: string;
    readonly managedHsmId: string;
    readonly name: string;
    readonly notBeforeDate: string;
    /**
     * A mapping of tags assigned to this Managed Hardware Security Module Key.
     */
    readonly tags: {
        [key: string]: string;
    };
    /**
     * The current version of the Managed Hardware Security Module Key.
     */
    readonly version: string;
    /**
     * The versioned ID of the Managed Hardware Security Module Key.
     */
    readonly versionedId: string;
}
/**
 * Use this data source to access information about an existing Managed Hardware Security Module Key.
 *
 * > **Note:** All arguments including the secret value will be stored in the raw state as plain-text.
 * [Read more about sensitive data in state](https://www.terraform.io/docs/state/sensitive-data.html).
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as azure from "@pulumi/azure";
 *
 * export = async () => {
 *     const example = await azure.keyvault.getManagedHardwareSecurityModuleKey({
 *         managedHsmId: exampleAzurermKeyVaultManagedHardwareSecurityModule.id,
 *         name: exampleAzurermKeyVaultManagedHardwareSecurityModuleKey.name,
 *     });
 *     return {
 *         "hsm-key-vesrion": example.version,
 *     };
 * }
 * ```
 */
export declare function getManagedHardwareSecurityModuleKeyOutput(args: GetManagedHardwareSecurityModuleKeyOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetManagedHardwareSecurityModuleKeyResult>;
/**
 * A collection of arguments for invoking getManagedHardwareSecurityModuleKey.
 */
export interface GetManagedHardwareSecurityModuleKeyOutputArgs {
    /**
     * Specifies the ID of the Managed Hardware Security Module instance where the Secret resides, available on the `azure.keyvault.ManagedHardwareSecurityModuleKey` Data Source / Resource.
     *
     * > **Note:** The Managed Hardware Security Module must be in the same subscription as the provider. If the Managed Hardware Security Module is in another subscription, you must create an aliased provider for that subscription.
     */
    managedHsmId: pulumi.Input<string>;
    /**
     * Specifies the name of the Managed Hardware Security Module Key.
     */
    name: pulumi.Input<string>;
}
//# sourceMappingURL=getManagedHardwareSecurityModuleKey.d.ts.map