"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.resolveProfileData = void 0; const property_provider_1 = require("@aws-sdk/property-provider"); const resolveAssumeRoleCredentials_1 = require("./resolveAssumeRoleCredentials"); const resolveSsoCredentials_1 = require("./resolveSsoCredentials"); const resolveStaticCredentials_1 = require("./resolveStaticCredentials"); const resolveWebIdentityCredentials_1 = require("./resolveWebIdentityCredentials"); const resolveProfileData = async (profileName, profiles, options, visitedProfiles = {}) => { const data = profiles[profileName]; if (Object.keys(visitedProfiles).length > 0 && (0, resolveStaticCredentials_1.isStaticCredsProfile)(data)) { return (0, resolveStaticCredentials_1.resolveStaticCredentials)(data); } if ((0, resolveAssumeRoleCredentials_1.isAssumeRoleProfile)(data)) { return (0, resolveAssumeRoleCredentials_1.resolveAssumeRoleCredentials)(profileName, profiles, options, visitedProfiles); } if ((0, resolveStaticCredentials_1.isStaticCredsProfile)(data)) { return (0, resolveStaticCredentials_1.resolveStaticCredentials)(data); } if ((0, resolveWebIdentityCredentials_1.isWebIdentityProfile)(data)) { return (0, resolveWebIdentityCredentials_1.resolveWebIdentityCredentials)(data, options); } if ((0, resolveSsoCredentials_1.isSsoProfile)(data)) { return (0, resolveSsoCredentials_1.resolveSsoCredentials)(data); } throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} could not be found or parsed in shared credentials file.`); }; exports.resolveProfileData = resolveProfileData;