import * as pulumi from "@pulumi/pulumi";
/**
 * Encrypts or Decrypts a value using a Key Vault Key.
 */
export declare function getEncryptedValue(args: GetEncryptedValueArgs, opts?: pulumi.InvokeOptions): Promise<GetEncryptedValueResult>;
/**
 * A collection of arguments for invoking getEncryptedValue.
 */
export interface GetEncryptedValueArgs {
    /**
     * The Algorithm which should be used to Decrypt/Encrypt this Value. Possible values are `RSA1_5`, `RSA-OAEP` and `RSA-OAEP-256`.
     */
    algorithm: string;
    /**
     * The Base64 URL Encoded Encrypted Data which should be decrypted into `plainTextValue`.
     */
    encryptedData?: string;
    /**
     * The ID of the Key Vault Key which should be used to Decrypt/Encrypt this Value.
     */
    keyVaultKeyId: string;
    /**
     * The plain-text value which should be Encrypted into `encryptedData`.
     *
     * > **Note:** One of either `encryptedData` or `plainTextValue` must be specified and is used to populate the encrypted/decrypted value for the other field.
     */
    plainTextValue?: string;
}
/**
 * A collection of values returned by getEncryptedValue.
 */
export interface GetEncryptedValueResult {
    readonly algorithm: string;
    /**
     * The Base64URL decoded string of `plainTextValue`. Because the API would remove padding characters of `plainTextValue` when encrypting, this attribute is useful to get the original value.
     */
    readonly decodedPlainTextValue: string;
    readonly encryptedData?: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly keyVaultKeyId: string;
    readonly plainTextValue?: string;
}
/**
 * Encrypts or Decrypts a value using a Key Vault Key.
 */
export declare function getEncryptedValueOutput(args: GetEncryptedValueOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetEncryptedValueResult>;
/**
 * A collection of arguments for invoking getEncryptedValue.
 */
export interface GetEncryptedValueOutputArgs {
    /**
     * The Algorithm which should be used to Decrypt/Encrypt this Value. Possible values are `RSA1_5`, `RSA-OAEP` and `RSA-OAEP-256`.
     */
    algorithm: pulumi.Input<string>;
    /**
     * The Base64 URL Encoded Encrypted Data which should be decrypted into `plainTextValue`.
     */
    encryptedData?: pulumi.Input<string | undefined>;
    /**
     * The ID of the Key Vault Key which should be used to Decrypt/Encrypt this Value.
     */
    keyVaultKeyId: pulumi.Input<string>;
    /**
     * The plain-text value which should be Encrypted into `encryptedData`.
     *
     * > **Note:** One of either `encryptedData` or `plainTextValue` must be specified and is used to populate the encrypted/decrypted value for the other field.
     */
    plainTextValue?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getEncryptedValue.d.ts.map