UNPKG

@azure/core-auth

Version:

Provides low-level interfaces and helper methods for authentication in Azure SDK

67 lines 2.13 kB
"use strict"; // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. Object.defineProperty(exports, "__esModule", { value: true }); exports.AzureNamedKeyCredential = void 0; exports.isNamedKeyCredential = isNamedKeyCredential; const core_util_1 = require("@azure/core-util"); /** * A static name/key-based credential that supports updating * the underlying name and key values. */ class AzureNamedKeyCredential { /** * The value of the key to be used in authentication. */ get key() { return this._key; } /** * The value of the name to be used in authentication. */ get name() { return this._name; } /** * Create an instance of an AzureNamedKeyCredential for use * with a service client. * * @param name - The initial value of the name to use in authentication. * @param key - The initial value of the key to use in authentication. */ constructor(name, key) { if (!name || !key) { throw new TypeError("name and key must be non-empty strings"); } this._name = name; this._key = key; } /** * Change the value of the key. * * Updates will take effect upon the next request after * updating the key value. * * @param newName - The new name value to be used. * @param newKey - The new key value to be used. */ update(newName, newKey) { if (!newName || !newKey) { throw new TypeError("newName and newKey must be non-empty strings"); } this._name = newName; this._key = newKey; } } exports.AzureNamedKeyCredential = AzureNamedKeyCredential; /** * Tests an object to determine whether it implements NamedKeyCredential. * * @param credential - The assumed NamedKeyCredential to be tested. */ function isNamedKeyCredential(credential) { return ((0, core_util_1.isObjectWithProperties)(credential, ["name", "key"]) && typeof credential.key === "string" && typeof credential.name === "string"); } //# sourceMappingURL=azureNamedKeyCredential.js.map