diff --git a/.changeset/early-dots-eat.md b/.changeset/early-dots-eat.md new file mode 100644 index 0000000..e438c9b --- /dev/null +++ b/.changeset/early-dots-eat.md @@ -0,0 +1,5 @@ +--- +"@effect-aws/client-iam": major +--- + +implement effectful iam client diff --git a/.projenrc.ts b/.projenrc.ts index bfe5132..d91b852 100644 --- a/.projenrc.ts +++ b/.projenrc.ts @@ -108,6 +108,14 @@ new TypeScriptLibProject({ peerDeps: commonPeerDeps, }); +new TypeScriptLibProject({ + parent: project, + name: "client-iam", + deps: [...commonDeps, "@aws-sdk/client-iam@^3"], + devDeps: commonDevDeps, + peerDeps: commonPeerDeps, +}); + new TypeScriptLibProject({ parent: project, name: "lambda", diff --git a/README.md b/README.md index 5e1a9e7..a112b6d 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,7 @@ Effect Docs: https://www.effect.website
- [x] PowerTools Logger - [x] S3 Client +- [x] IAM Client - [x] DynamoDB Client - [x] SQS Client - [x] SNS Client diff --git a/package.json b/package.json index 86e8280..c2a4f1a 100644 --- a/package.json +++ b/package.json @@ -79,6 +79,7 @@ "packages/client-api-gateway-management-api", "packages/client-dynamodb", "packages/client-eventbridge", + "packages/client-iam", "packages/client-lambda", "packages/client-s3", "packages/client-sfn", diff --git a/packages/client-iam/.eslintrc.json b/packages/client-iam/.eslintrc.json new file mode 100644 index 0000000..140ba19 --- /dev/null +++ b/packages/client-iam/.eslintrc.json @@ -0,0 +1,131 @@ +// ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". +{ + "env": { + "jest": true, + "node": true + }, + "root": true, + "plugins": [ + "@typescript-eslint", + "import", + "prettier" + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaVersion": 2018, + "sourceType": "module", + "project": "./tsconfig.dev.json" + }, + "extends": [ + "plugin:import/typescript", + "prettier", + "plugin:prettier/recommended" + ], + "settings": { + "import/parsers": { + "@typescript-eslint/parser": [ + ".ts", + ".tsx" + ] + }, + "import/resolver": { + "node": {}, + "typescript": { + "project": "./tsconfig.dev.json", + "alwaysTryTypes": true + } + } + }, + "ignorePatterns": [ + "*.js", + "*.d.ts", + "node_modules/", + "*.generated.ts", + "coverage" + ], + "rules": { + "prettier/prettier": [ + "error" + ], + "@typescript-eslint/no-require-imports": [ + "error" + ], + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": [ + "**/test/**", + "**/build-tools/**" + ], + "optionalDependencies": false, + "peerDependencies": true + } + ], + "import/no-unresolved": [ + "error" + ], + "import/order": [ + "warn", + { + "groups": [ + "builtin", + "external" + ], + "alphabetize": { + "order": "asc", + "caseInsensitive": true + } + } + ], + "no-duplicate-imports": [ + "error" + ], + "no-shadow": [ + "off" + ], + "@typescript-eslint/no-shadow": [ + "error" + ], + "key-spacing": [ + "error" + ], + "no-multiple-empty-lines": [ + "error" + ], + "@typescript-eslint/no-floating-promises": [ + "error" + ], + "no-return-await": [ + "off" + ], + "@typescript-eslint/return-await": [ + "error" + ], + "no-trailing-spaces": [ + "error" + ], + "dot-notation": [ + "error" + ], + "no-bitwise": [ + "error" + ], + "@typescript-eslint/member-ordering": [ + "error", + { + "default": [ + "public-static-field", + "public-static-method", + "protected-static-field", + "protected-static-method", + "private-static-field", + "private-static-method", + "field", + "constructor", + "method" + ] + } + ] + }, + "overrides": [] +} diff --git a/packages/client-iam/.gitattributes b/packages/client-iam/.gitattributes new file mode 100644 index 0000000..3d4472e --- /dev/null +++ b/packages/client-iam/.gitattributes @@ -0,0 +1,21 @@ +# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". + +/./tsconfig.esm.json linguist-generated +/.eslintrc.json linguist-generated +/.gitattributes linguist-generated +/.gitignore linguist-generated +/.npmignore linguist-generated +/.npmrc linguist-generated +/.prettierignore linguist-generated +/.prettierrc.json linguist-generated +/.projen/** linguist-generated +/.projen/deps.json linguist-generated +/.projen/files.json linguist-generated +/.projen/tasks.json linguist-generated +/jest.config.json linguist-generated +/LICENSE linguist-generated +/package.json linguist-generated +/pnpm-lock.yaml linguist-generated +/project.json linguist-generated +/tsconfig.dev.json linguist-generated +/tsconfig.json linguist-generated \ No newline at end of file diff --git a/packages/client-iam/.gitignore b/packages/client-iam/.gitignore new file mode 100644 index 0000000..cd4750b --- /dev/null +++ b/packages/client-iam/.gitignore @@ -0,0 +1,46 @@ +# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". +!/.gitattributes +!/.projen/tasks.json +!/.projen/deps.json +!/.projen/files.json +!/package.json +!/LICENSE +!/.npmignore +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +lerna-debug.log* +report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json +pids +*.pid +*.seed +*.pid.lock +lib-cov +coverage +*.lcov +.nyc_output +build/Release +node_modules/ +jspm_packages/ +*.tsbuildinfo +.eslintcache +*.tgz +.yarn-integrity +.cache +!/.projenrc.js +!/jest.config.json +/coverage/ +!/.prettierignore +!/.prettierrc.json +!/.npmrc +!/test/ +!/tsconfig.json +!/tsconfig.dev.json +!/src/ +/lib +/dist/ +!/.eslintrc.json +!/./tsconfig.esm.json +!/project.json diff --git a/packages/client-iam/.npmignore b/packages/client-iam/.npmignore new file mode 100644 index 0000000..aaeff68 --- /dev/null +++ b/packages/client-iam/.npmignore @@ -0,0 +1,19 @@ +# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". +/.projen/ +/jest.config.json +/coverage/ +/test/ +/tsconfig.dev.json +/src/ +!/lib/ +!/lib/**/*.js +!/lib/**/*.d.ts +dist +/tsconfig.json +/.github/ +/.vscode/ +/.idea/ +/.projenrc.js +tsconfig.tsbuildinfo +/.eslintrc.json +/tsconfig.esm.json diff --git a/packages/client-iam/.prettierignore b/packages/client-iam/.prettierignore new file mode 100644 index 0000000..46704c7 --- /dev/null +++ b/packages/client-iam/.prettierignore @@ -0,0 +1 @@ +# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". diff --git a/packages/client-iam/.prettierrc.json b/packages/client-iam/.prettierrc.json new file mode 100644 index 0000000..84c85a3 --- /dev/null +++ b/packages/client-iam/.prettierrc.json @@ -0,0 +1,3 @@ +{ + "overrides": [] +} diff --git a/packages/client-iam/.projen/deps.json b/packages/client-iam/.projen/deps.json new file mode 100644 index 0000000..2d8b3c7 --- /dev/null +++ b/packages/client-iam/.projen/deps.json @@ -0,0 +1,97 @@ +{ + "dependencies": [ + { + "name": "@types/jest", + "type": "build" + }, + { + "name": "@types/node", + "version": "^16", + "type": "build" + }, + { + "name": "@typescript-eslint/eslint-plugin", + "version": "^6", + "type": "build" + }, + { + "name": "@typescript-eslint/parser", + "version": "^6", + "type": "build" + }, + { + "name": "aws-sdk-client-mock", + "type": "build" + }, + { + "name": "aws-sdk-client-mock-jest", + "type": "build" + }, + { + "name": "effect", + "version": "2.0.1", + "type": "build" + }, + { + "name": "eslint-config-prettier", + "type": "build" + }, + { + "name": "eslint-import-resolver-node", + "type": "build" + }, + { + "name": "eslint-import-resolver-typescript", + "type": "build" + }, + { + "name": "eslint-plugin-import", + "type": "build" + }, + { + "name": "eslint-plugin-prettier", + "type": "build" + }, + { + "name": "eslint", + "version": "^8", + "type": "build" + }, + { + "name": "jest", + "type": "build" + }, + { + "name": "prettier", + "type": "build" + }, + { + "name": "projen", + "type": "build" + }, + { + "name": "ts-jest", + "type": "build" + }, + { + "name": "typescript", + "type": "build" + }, + { + "name": "effect", + "version": "^2.0.1", + "type": "peer" + }, + { + "name": "@aws-sdk/client-iam", + "version": "^3", + "type": "runtime" + }, + { + "name": "@aws-sdk/types", + "version": "^3", + "type": "runtime" + } + ], + "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"." +} diff --git a/packages/client-iam/.projen/files.json b/packages/client-iam/.projen/files.json new file mode 100644 index 0000000..312ff31 --- /dev/null +++ b/packages/client-iam/.projen/files.json @@ -0,0 +1,20 @@ +{ + "files": [ + "./tsconfig.esm.json", + ".eslintrc.json", + ".gitattributes", + ".gitignore", + ".npmignore", + ".prettierignore", + ".prettierrc.json", + ".projen/deps.json", + ".projen/files.json", + ".projen/tasks.json", + "jest.config.json", + "LICENSE", + "project.json", + "tsconfig.dev.json", + "tsconfig.json" + ], + "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"." +} diff --git a/packages/client-iam/.projen/tasks.json b/packages/client-iam/.projen/tasks.json new file mode 100644 index 0000000..de5fc10 --- /dev/null +++ b/packages/client-iam/.projen/tasks.json @@ -0,0 +1,112 @@ +{ + "tasks": { + "build": { + "name": "build", + "description": "Full release build", + "steps": [ + { + "spawn": "pre-compile" + }, + { + "spawn": "compile" + }, + { + "spawn": "post-compile" + }, + { + "spawn": "test" + }, + { + "spawn": "package" + } + ] + }, + "compile": { + "name": "compile", + "description": "Only compile", + "steps": [ + { + "exec": "tsc -b ./tsconfig.json ./tsconfig.esm.json" + } + ] + }, + "default": { + "name": "default", + "description": "Synthesize project files" + }, + "eslint": { + "name": "eslint", + "description": "Runs eslint against the codebase", + "steps": [ + { + "exec": "eslint --ext .ts,.tsx --fix --no-error-on-unmatched-pattern src test build-tools" + } + ] + }, + "install": { + "name": "install", + "description": "Install project dependencies and update lockfile (non-frozen)", + "steps": [ + { + "exec": "pnpm i --no-frozen-lockfile" + } + ] + }, + "install:ci": { + "name": "install:ci", + "description": "Install project dependencies using frozen lockfile", + "steps": [ + { + "exec": "pnpm i --frozen-lockfile" + } + ] + }, + "package": { + "name": "package", + "description": "Creates the distribution package" + }, + "post-compile": { + "name": "post-compile", + "description": "Runs after successful compilation" + }, + "pre-compile": { + "name": "pre-compile", + "description": "Prepare the project for compilation" + }, + "test": { + "name": "test", + "description": "Run tests", + "steps": [ + { + "exec": "jest --passWithNoTests --updateSnapshot", + "receiveArgs": true + }, + { + "spawn": "eslint" + } + ] + }, + "test:watch": { + "name": "test:watch", + "description": "Run jest in watch mode", + "steps": [ + { + "exec": "jest --watch" + } + ] + }, + "watch": { + "name": "watch", + "description": "Watch & compile in the background", + "steps": [ + { + "exec": "tsc --build -w" + } + ] + } + }, + "env": { + "PATH": "$(pnpm -c exec \"node --print process.env.PATH\")" + }, + "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"." +} diff --git a/packages/client-iam/LICENSE b/packages/client-iam/LICENSE new file mode 100644 index 0000000..7afce46 --- /dev/null +++ b/packages/client-iam/LICENSE @@ -0,0 +1,19 @@ +Copyright (c) 2024 Victor Korzunin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/packages/client-iam/README.md b/packages/client-iam/README.md new file mode 100644 index 0000000..b3fa7dd --- /dev/null +++ b/packages/client-iam/README.md @@ -0,0 +1 @@ +# replace this \ No newline at end of file diff --git a/packages/client-iam/jest.config.json b/packages/client-iam/jest.config.json new file mode 100644 index 0000000..894210f --- /dev/null +++ b/packages/client-iam/jest.config.json @@ -0,0 +1,37 @@ +{ + "transform": { + "^.+\\.tsx?$": [ + "ts-jest", + { + "tsconfig": "tsconfig.dev.json" + } + ] + }, + "testMatch": [ + "/src/**/__tests__/**/*.ts?(x)", + "/(test|src)/**/*(*.)@(spec|test).ts?(x)" + ], + "clearMocks": true, + "collectCoverage": true, + "coverageReporters": [ + "json", + "lcov", + "clover", + "cobertura", + "text" + ], + "coverageDirectory": "coverage", + "coveragePathIgnorePatterns": [ + "/node_modules/" + ], + "testPathIgnorePatterns": [ + "/node_modules/" + ], + "watchPathIgnorePatterns": [ + "/node_modules/" + ], + "reporters": [ + "default" + ], + "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"." +} diff --git a/packages/client-iam/package.json b/packages/client-iam/package.json new file mode 100644 index 0000000..845c9e6 --- /dev/null +++ b/packages/client-iam/package.json @@ -0,0 +1,57 @@ +{ + "name": "@effect-aws/client-iam", + "scripts": { + "build": "npx projen build", + "compile": "npx projen compile", + "default": "npx projen default", + "eslint": "npx projen eslint", + "package": "npx projen package", + "post-compile": "npx projen post-compile", + "pre-compile": "npx projen pre-compile", + "test": "npx projen test", + "test:watch": "npx projen test:watch", + "watch": "npx projen watch" + }, + "author": { + "name": "Victor Korzunin", + "email": "ifloydrose@gmail.com", + "organization": false + }, + "devDependencies": { + "@types/jest": "^29.5.5", + "@types/node": "^16", + "@typescript-eslint/eslint-plugin": "^6", + "@typescript-eslint/parser": "^6", + "aws-sdk-client-mock": "^3.0.0", + "aws-sdk-client-mock-jest": "^3.0.0", + "effect": "2.0.1", + "eslint": "^8", + "eslint-config-prettier": "^9.0.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-import-resolver-typescript": "^3.6.1", + "eslint-plugin-import": "^2.28.1", + "eslint-plugin-prettier": "^5.0.0", + "jest": "^29.7.0", + "prettier": "^3.0.3", + "projen": "^0.73.34", + "ts-jest": "^29.1.1", + "typescript": "^5.2.2" + }, + "peerDependencies": { + "effect": "^2.0.1" + }, + "dependencies": { + "@aws-sdk/client-iam": "^3", + "@aws-sdk/types": "^3" + }, + "pnpm": {}, + "main": "lib/index.js", + "license": "MIT", + "publishConfig": { + "access": "public" + }, + "version": "1.0.0", + "types": "lib/index.d.ts", + "module": "lib/esm/index.js", + "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"." +} diff --git a/packages/client-iam/project.json b/packages/client-iam/project.json new file mode 100644 index 0000000..a7c4c69 --- /dev/null +++ b/packages/client-iam/project.json @@ -0,0 +1,77 @@ +{ + "name": "@effect-aws/client-iam", + "root": "packages/client-iam", + "targets": { + "default": { + "executor": "nx:run-commands", + "options": { + "command": "pnpm exec projen default", + "cwd": "packages/client-iam" + } + }, + "pre-compile": { + "executor": "nx:run-commands", + "options": { + "command": "pnpm exec projen pre-compile", + "cwd": "packages/client-iam" + } + }, + "compile": { + "executor": "nx:run-commands", + "options": { + "command": "pnpm exec projen compile", + "cwd": "packages/client-iam" + } + }, + "post-compile": { + "executor": "nx:run-commands", + "options": { + "command": "pnpm exec projen post-compile", + "cwd": "packages/client-iam" + } + }, + "test": { + "executor": "nx:run-commands", + "options": { + "command": "pnpm exec projen test", + "cwd": "packages/client-iam" + } + }, + "package": { + "executor": "nx:run-commands", + "options": { + "command": "pnpm exec projen package", + "cwd": "packages/client-iam" + } + }, + "build": { + "executor": "nx:run-commands", + "options": { + "command": "pnpm exec projen build", + "cwd": "packages/client-iam" + } + }, + "test:watch": { + "executor": "nx:run-commands", + "options": { + "command": "pnpm exec projen test:watch", + "cwd": "packages/client-iam" + } + }, + "watch": { + "executor": "nx:run-commands", + "options": { + "command": "pnpm exec projen watch", + "cwd": "packages/client-iam" + } + }, + "eslint": { + "executor": "nx:run-commands", + "options": { + "command": "pnpm exec projen eslint", + "cwd": "packages/client-iam" + } + } + }, + "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"." +} diff --git a/packages/client-iam/src/Errors.ts b/packages/client-iam/src/Errors.ts new file mode 100644 index 0000000..2d02c32 --- /dev/null +++ b/packages/client-iam/src/Errors.ts @@ -0,0 +1,87 @@ +import type { + ConcurrentModificationException, + CredentialReportExpiredException, + CredentialReportNotPresentException, + CredentialReportNotReadyException, + DeleteConflictException, + DuplicateCertificateException, + DuplicateSSHPublicKeyException, + EntityAlreadyExistsException, + EntityTemporarilyUnmodifiableException, + IAMServiceException, + InvalidAuthenticationCodeException, + InvalidCertificateException, + InvalidInputException, + InvalidPublicKeyException, + InvalidUserTypeException, + KeyPairMismatchException, + LimitExceededException, + MalformedCertificateException, + MalformedPolicyDocumentException, + NoSuchEntityException, + PasswordPolicyViolationException, + PolicyEvaluationException, + PolicyNotAttachableException, + ReportGenerationLimitExceededException, + ServiceFailureException, + ServiceNotSupportedException, + UnmodifiableEntityException, + UnrecognizedPublicKeyEncodingException, +} from "@aws-sdk/client-iam"; +import * as Data from "effect/Data"; + +export type TaggedException = Data.Case & + T & { readonly _tag: T["name"] }; + +export type InvalidInputError = TaggedException; +export type LimitExceededError = TaggedException; +export type NoSuchEntityError = TaggedException; +export type ServiceFailureError = TaggedException; +export type EntityAlreadyExistsError = + TaggedException; +export type UnmodifiableEntityError = + TaggedException; +export type PolicyNotAttachableError = + TaggedException; +export type EntityTemporarilyUnmodifiableError = + TaggedException; +export type InvalidUserTypeError = TaggedException; +export type PasswordPolicyViolationError = + TaggedException; +export type ConcurrentModificationError = + TaggedException; +export type MalformedPolicyDocumentError = + TaggedException; +export type ServiceNotSupportedError = + TaggedException; +export type DeleteConflictError = TaggedException; +export type InvalidAuthenticationCodeError = + TaggedException; +export type ReportGenerationLimitExceededError = + TaggedException; +export type CredentialReportExpiredError = + TaggedException; +export type CredentialReportNotPresentError = + TaggedException; +export type CredentialReportNotReadyError = + TaggedException; +export type UnrecognizedPublicKeyEncodingError = + TaggedException; +export type PolicyEvaluationError = TaggedException; +export type KeyPairMismatchError = TaggedException; +export type MalformedCertificateError = + TaggedException; +export type DuplicateCertificateError = + TaggedException; +export type InvalidCertificateError = + TaggedException; +export type DuplicateSSHPublicKeyError = + TaggedException; +export type InvalidPublicKeyError = TaggedException; + +export type IAMServiceError = TaggedException< + IAMServiceException & { name: "IAMServiceError" } +>; +export const IAMServiceError = Data.tagged("IAMServiceError"); +export type SdkError = TaggedException; +export const SdkError = Data.tagged("SdkError"); diff --git a/packages/client-iam/src/IAMClientInstance.ts b/packages/client-iam/src/IAMClientInstance.ts new file mode 100644 index 0000000..3a7801a --- /dev/null +++ b/packages/client-iam/src/IAMClientInstance.ts @@ -0,0 +1,50 @@ +import { IAMClient } from "@aws-sdk/client-iam"; +import * as Context from "effect/Context"; +import * as Effect from "effect/Effect"; +import * as Layer from "effect/Layer"; +import { + DefaultIAMClientConfigLayer, + IAMClientInstanceConfig, +} from "./IAMClientInstanceConfig"; + +/** + * @since 1.0.0 + * @category tags + */ +export type IAMClientInstance = { + readonly _: unique symbol; +}; + +/** + * @since 1.0.0 + * @category tags + */ +export const IAMClientInstance = Context.Tag( + Symbol.for("@effect-aws/client-iam/IAMClientInstance"), +); + +/** + * @since 1.0.0 + * @category constructors + */ +export const makeIAMClientInstance = Effect.map( + IAMClientInstanceConfig, + (config) => new IAMClient(config), +); + +/** + * @since 1.0.0 + * @category layers + */ +export const IAMClientInstanceLayer = Layer.effect( + IAMClientInstance, + makeIAMClientInstance, +); + +/** + * @since 1.0.0 + * @category layers + */ +export const DefaultIAMClientInstanceLayer = IAMClientInstanceLayer.pipe( + Layer.provide(DefaultIAMClientConfigLayer), +); diff --git a/packages/client-iam/src/IAMClientInstanceConfig.ts b/packages/client-iam/src/IAMClientInstanceConfig.ts new file mode 100644 index 0000000..f621667 --- /dev/null +++ b/packages/client-iam/src/IAMClientInstanceConfig.ts @@ -0,0 +1,64 @@ +import type { IAMClientConfig } from "@aws-sdk/client-iam"; +import * as Context from "effect/Context"; +import * as Effect from "effect/Effect"; +import * as Layer from "effect/Layer"; +import * as Runtime from "effect/Runtime"; + +/** + * @since 1.0.0 + * @category tags + */ +export interface IAMClientInstanceConfig { + readonly _: unique symbol; +} + +/** + * @since 1.0.0 + * @category tags + */ +export const IAMClientInstanceConfig = Context.Tag< + IAMClientInstanceConfig, + IAMClientConfig +>(Symbol.for("@effect-aws/client-iam/IAMClientInstanceConfig")); + +/** + * @since 1.0.0 + * @category constructors + */ +export const makeDefaultIAMClientInstanceConfig: Effect.Effect< + never, + never, + IAMClientConfig +> = Effect.gen(function* (_) { + const runtime = yield* _(Effect.runtime()); + const runSync = Runtime.runSync(runtime); + + return { + logger: { + info(m) { + Effect.logInfo(m).pipe(runSync); + }, + warn(m) { + Effect.logWarning(m).pipe(runSync); + }, + error(m) { + Effect.logError(m).pipe(runSync); + }, + debug(m) { + Effect.logDebug(m).pipe(runSync); + }, + trace(m) { + Effect.logTrace(m).pipe(runSync); + }, + }, + }; +}); + +/** + * @since 1.0.0 + * @category layers + */ +export const DefaultIAMClientConfigLayer = Layer.effect( + IAMClientInstanceConfig, + makeDefaultIAMClientInstanceConfig, +); diff --git a/packages/client-iam/src/IAMService.ts b/packages/client-iam/src/IAMService.ts new file mode 100644 index 0000000..9f0254a --- /dev/null +++ b/packages/client-iam/src/IAMService.ts @@ -0,0 +1,3204 @@ +import { + IAMServiceException, + AddClientIDToOpenIDConnectProviderCommand, + type AddClientIDToOpenIDConnectProviderCommandInput, + type AddClientIDToOpenIDConnectProviderCommandOutput, + AddRoleToInstanceProfileCommand, + type AddRoleToInstanceProfileCommandInput, + type AddRoleToInstanceProfileCommandOutput, + AddUserToGroupCommand, + type AddUserToGroupCommandInput, + type AddUserToGroupCommandOutput, + AttachGroupPolicyCommand, + type AttachGroupPolicyCommandInput, + type AttachGroupPolicyCommandOutput, + AttachRolePolicyCommand, + type AttachRolePolicyCommandInput, + type AttachRolePolicyCommandOutput, + AttachUserPolicyCommand, + type AttachUserPolicyCommandInput, + type AttachUserPolicyCommandOutput, + ChangePasswordCommand, + type ChangePasswordCommandInput, + type ChangePasswordCommandOutput, + CreateAccessKeyCommand, + type CreateAccessKeyCommandInput, + type CreateAccessKeyCommandOutput, + CreateAccountAliasCommand, + type CreateAccountAliasCommandInput, + type CreateAccountAliasCommandOutput, + CreateGroupCommand, + type CreateGroupCommandInput, + type CreateGroupCommandOutput, + CreateInstanceProfileCommand, + type CreateInstanceProfileCommandInput, + type CreateInstanceProfileCommandOutput, + CreateLoginProfileCommand, + type CreateLoginProfileCommandInput, + type CreateLoginProfileCommandOutput, + CreateOpenIDConnectProviderCommand, + type CreateOpenIDConnectProviderCommandInput, + type CreateOpenIDConnectProviderCommandOutput, + CreatePolicyCommand, + type CreatePolicyCommandInput, + type CreatePolicyCommandOutput, + CreatePolicyVersionCommand, + type CreatePolicyVersionCommandInput, + type CreatePolicyVersionCommandOutput, + CreateRoleCommand, + type CreateRoleCommandInput, + type CreateRoleCommandOutput, + CreateSAMLProviderCommand, + type CreateSAMLProviderCommandInput, + type CreateSAMLProviderCommandOutput, + CreateServiceLinkedRoleCommand, + type CreateServiceLinkedRoleCommandInput, + type CreateServiceLinkedRoleCommandOutput, + CreateServiceSpecificCredentialCommand, + type CreateServiceSpecificCredentialCommandInput, + type CreateServiceSpecificCredentialCommandOutput, + CreateUserCommand, + type CreateUserCommandInput, + type CreateUserCommandOutput, + CreateVirtualMFADeviceCommand, + type CreateVirtualMFADeviceCommandInput, + type CreateVirtualMFADeviceCommandOutput, + DeactivateMFADeviceCommand, + type DeactivateMFADeviceCommandInput, + type DeactivateMFADeviceCommandOutput, + DeleteAccessKeyCommand, + type DeleteAccessKeyCommandInput, + type DeleteAccessKeyCommandOutput, + DeleteAccountAliasCommand, + type DeleteAccountAliasCommandInput, + type DeleteAccountAliasCommandOutput, + DeleteAccountPasswordPolicyCommand, + type DeleteAccountPasswordPolicyCommandInput, + type DeleteAccountPasswordPolicyCommandOutput, + DeleteGroupCommand, + type DeleteGroupCommandInput, + type DeleteGroupCommandOutput, + DeleteGroupPolicyCommand, + type DeleteGroupPolicyCommandInput, + type DeleteGroupPolicyCommandOutput, + DeleteInstanceProfileCommand, + type DeleteInstanceProfileCommandInput, + type DeleteInstanceProfileCommandOutput, + DeleteLoginProfileCommand, + type DeleteLoginProfileCommandInput, + type DeleteLoginProfileCommandOutput, + DeleteOpenIDConnectProviderCommand, + type DeleteOpenIDConnectProviderCommandInput, + type DeleteOpenIDConnectProviderCommandOutput, + DeletePolicyCommand, + type DeletePolicyCommandInput, + type DeletePolicyCommandOutput, + DeletePolicyVersionCommand, + type DeletePolicyVersionCommandInput, + type DeletePolicyVersionCommandOutput, + DeleteRoleCommand, + type DeleteRoleCommandInput, + type DeleteRoleCommandOutput, + DeleteRolePermissionsBoundaryCommand, + type DeleteRolePermissionsBoundaryCommandInput, + type DeleteRolePermissionsBoundaryCommandOutput, + DeleteRolePolicyCommand, + type DeleteRolePolicyCommandInput, + type DeleteRolePolicyCommandOutput, + DeleteSAMLProviderCommand, + type DeleteSAMLProviderCommandInput, + type DeleteSAMLProviderCommandOutput, + DeleteServerCertificateCommand, + type DeleteServerCertificateCommandInput, + type DeleteServerCertificateCommandOutput, + DeleteServiceLinkedRoleCommand, + type DeleteServiceLinkedRoleCommandInput, + type DeleteServiceLinkedRoleCommandOutput, + DeleteServiceSpecificCredentialCommand, + type DeleteServiceSpecificCredentialCommandInput, + type DeleteServiceSpecificCredentialCommandOutput, + DeleteSigningCertificateCommand, + type DeleteSigningCertificateCommandInput, + type DeleteSigningCertificateCommandOutput, + DeleteSSHPublicKeyCommand, + type DeleteSSHPublicKeyCommandInput, + type DeleteSSHPublicKeyCommandOutput, + DeleteUserCommand, + type DeleteUserCommandInput, + type DeleteUserCommandOutput, + DeleteUserPermissionsBoundaryCommand, + type DeleteUserPermissionsBoundaryCommandInput, + type DeleteUserPermissionsBoundaryCommandOutput, + DeleteUserPolicyCommand, + type DeleteUserPolicyCommandInput, + type DeleteUserPolicyCommandOutput, + DeleteVirtualMFADeviceCommand, + type DeleteVirtualMFADeviceCommandInput, + type DeleteVirtualMFADeviceCommandOutput, + DetachGroupPolicyCommand, + type DetachGroupPolicyCommandInput, + type DetachGroupPolicyCommandOutput, + DetachRolePolicyCommand, + type DetachRolePolicyCommandInput, + type DetachRolePolicyCommandOutput, + DetachUserPolicyCommand, + type DetachUserPolicyCommandInput, + type DetachUserPolicyCommandOutput, + EnableMFADeviceCommand, + type EnableMFADeviceCommandInput, + type EnableMFADeviceCommandOutput, + GenerateCredentialReportCommand, + type GenerateCredentialReportCommandInput, + type GenerateCredentialReportCommandOutput, + GenerateOrganizationsAccessReportCommand, + type GenerateOrganizationsAccessReportCommandInput, + type GenerateOrganizationsAccessReportCommandOutput, + GenerateServiceLastAccessedDetailsCommand, + type GenerateServiceLastAccessedDetailsCommandInput, + type GenerateServiceLastAccessedDetailsCommandOutput, + GetAccessKeyLastUsedCommand, + type GetAccessKeyLastUsedCommandInput, + type GetAccessKeyLastUsedCommandOutput, + GetAccountAuthorizationDetailsCommand, + type GetAccountAuthorizationDetailsCommandInput, + type GetAccountAuthorizationDetailsCommandOutput, + GetAccountPasswordPolicyCommand, + type GetAccountPasswordPolicyCommandInput, + type GetAccountPasswordPolicyCommandOutput, + GetAccountSummaryCommand, + type GetAccountSummaryCommandInput, + type GetAccountSummaryCommandOutput, + GetContextKeysForCustomPolicyCommand, + type GetContextKeysForCustomPolicyCommandInput, + type GetContextKeysForCustomPolicyCommandOutput, + GetContextKeysForPrincipalPolicyCommand, + type GetContextKeysForPrincipalPolicyCommandInput, + type GetContextKeysForPrincipalPolicyCommandOutput, + GetCredentialReportCommand, + type GetCredentialReportCommandInput, + type GetCredentialReportCommandOutput, + GetGroupCommand, + type GetGroupCommandInput, + type GetGroupCommandOutput, + GetGroupPolicyCommand, + type GetGroupPolicyCommandInput, + type GetGroupPolicyCommandOutput, + GetInstanceProfileCommand, + type GetInstanceProfileCommandInput, + type GetInstanceProfileCommandOutput, + GetLoginProfileCommand, + type GetLoginProfileCommandInput, + type GetLoginProfileCommandOutput, + GetMFADeviceCommand, + type GetMFADeviceCommandInput, + type GetMFADeviceCommandOutput, + GetOpenIDConnectProviderCommand, + type GetOpenIDConnectProviderCommandInput, + type GetOpenIDConnectProviderCommandOutput, + GetOrganizationsAccessReportCommand, + type GetOrganizationsAccessReportCommandInput, + type GetOrganizationsAccessReportCommandOutput, + GetPolicyCommand, + type GetPolicyCommandInput, + type GetPolicyCommandOutput, + GetPolicyVersionCommand, + type GetPolicyVersionCommandInput, + type GetPolicyVersionCommandOutput, + GetRoleCommand, + type GetRoleCommandInput, + type GetRoleCommandOutput, + GetRolePolicyCommand, + type GetRolePolicyCommandInput, + type GetRolePolicyCommandOutput, + GetSAMLProviderCommand, + type GetSAMLProviderCommandInput, + type GetSAMLProviderCommandOutput, + GetServerCertificateCommand, + type GetServerCertificateCommandInput, + type GetServerCertificateCommandOutput, + GetServiceLastAccessedDetailsCommand, + type GetServiceLastAccessedDetailsCommandInput, + type GetServiceLastAccessedDetailsCommandOutput, + GetServiceLastAccessedDetailsWithEntitiesCommand, + type GetServiceLastAccessedDetailsWithEntitiesCommandInput, + type GetServiceLastAccessedDetailsWithEntitiesCommandOutput, + GetServiceLinkedRoleDeletionStatusCommand, + type GetServiceLinkedRoleDeletionStatusCommandInput, + type GetServiceLinkedRoleDeletionStatusCommandOutput, + GetSSHPublicKeyCommand, + type GetSSHPublicKeyCommandInput, + type GetSSHPublicKeyCommandOutput, + GetUserCommand, + type GetUserCommandInput, + type GetUserCommandOutput, + GetUserPolicyCommand, + type GetUserPolicyCommandInput, + type GetUserPolicyCommandOutput, + ListAccessKeysCommand, + type ListAccessKeysCommandInput, + type ListAccessKeysCommandOutput, + ListAccountAliasesCommand, + type ListAccountAliasesCommandInput, + type ListAccountAliasesCommandOutput, + ListAttachedGroupPoliciesCommand, + type ListAttachedGroupPoliciesCommandInput, + type ListAttachedGroupPoliciesCommandOutput, + ListAttachedRolePoliciesCommand, + type ListAttachedRolePoliciesCommandInput, + type ListAttachedRolePoliciesCommandOutput, + ListAttachedUserPoliciesCommand, + type ListAttachedUserPoliciesCommandInput, + type ListAttachedUserPoliciesCommandOutput, + ListEntitiesForPolicyCommand, + type ListEntitiesForPolicyCommandInput, + type ListEntitiesForPolicyCommandOutput, + ListGroupPoliciesCommand, + type ListGroupPoliciesCommandInput, + type ListGroupPoliciesCommandOutput, + ListGroupsCommand, + type ListGroupsCommandInput, + type ListGroupsCommandOutput, + ListGroupsForUserCommand, + type ListGroupsForUserCommandInput, + type ListGroupsForUserCommandOutput, + ListInstanceProfilesCommand, + type ListInstanceProfilesCommandInput, + type ListInstanceProfilesCommandOutput, + ListInstanceProfilesForRoleCommand, + type ListInstanceProfilesForRoleCommandInput, + type ListInstanceProfilesForRoleCommandOutput, + ListInstanceProfileTagsCommand, + type ListInstanceProfileTagsCommandInput, + type ListInstanceProfileTagsCommandOutput, + ListMFADevicesCommand, + type ListMFADevicesCommandInput, + type ListMFADevicesCommandOutput, + ListMFADeviceTagsCommand, + type ListMFADeviceTagsCommandInput, + type ListMFADeviceTagsCommandOutput, + ListOpenIDConnectProvidersCommand, + type ListOpenIDConnectProvidersCommandInput, + type ListOpenIDConnectProvidersCommandOutput, + ListOpenIDConnectProviderTagsCommand, + type ListOpenIDConnectProviderTagsCommandInput, + type ListOpenIDConnectProviderTagsCommandOutput, + ListPoliciesCommand, + type ListPoliciesCommandInput, + type ListPoliciesCommandOutput, + ListPoliciesGrantingServiceAccessCommand, + type ListPoliciesGrantingServiceAccessCommandInput, + type ListPoliciesGrantingServiceAccessCommandOutput, + ListPolicyTagsCommand, + type ListPolicyTagsCommandInput, + type ListPolicyTagsCommandOutput, + ListPolicyVersionsCommand, + type ListPolicyVersionsCommandInput, + type ListPolicyVersionsCommandOutput, + ListRolePoliciesCommand, + type ListRolePoliciesCommandInput, + type ListRolePoliciesCommandOutput, + ListRolesCommand, + type ListRolesCommandInput, + type ListRolesCommandOutput, + ListRoleTagsCommand, + type ListRoleTagsCommandInput, + type ListRoleTagsCommandOutput, + ListSAMLProvidersCommand, + type ListSAMLProvidersCommandInput, + type ListSAMLProvidersCommandOutput, + ListSAMLProviderTagsCommand, + type ListSAMLProviderTagsCommandInput, + type ListSAMLProviderTagsCommandOutput, + ListServerCertificatesCommand, + type ListServerCertificatesCommandInput, + type ListServerCertificatesCommandOutput, + ListServerCertificateTagsCommand, + type ListServerCertificateTagsCommandInput, + type ListServerCertificateTagsCommandOutput, + ListServiceSpecificCredentialsCommand, + type ListServiceSpecificCredentialsCommandInput, + type ListServiceSpecificCredentialsCommandOutput, + ListSigningCertificatesCommand, + type ListSigningCertificatesCommandInput, + type ListSigningCertificatesCommandOutput, + ListSSHPublicKeysCommand, + type ListSSHPublicKeysCommandInput, + type ListSSHPublicKeysCommandOutput, + ListUserPoliciesCommand, + type ListUserPoliciesCommandInput, + type ListUserPoliciesCommandOutput, + ListUsersCommand, + type ListUsersCommandInput, + type ListUsersCommandOutput, + ListUserTagsCommand, + type ListUserTagsCommandInput, + type ListUserTagsCommandOutput, + ListVirtualMFADevicesCommand, + type ListVirtualMFADevicesCommandInput, + type ListVirtualMFADevicesCommandOutput, + PutGroupPolicyCommand, + type PutGroupPolicyCommandInput, + type PutGroupPolicyCommandOutput, + PutRolePermissionsBoundaryCommand, + type PutRolePermissionsBoundaryCommandInput, + type PutRolePermissionsBoundaryCommandOutput, + PutRolePolicyCommand, + type PutRolePolicyCommandInput, + type PutRolePolicyCommandOutput, + PutUserPermissionsBoundaryCommand, + type PutUserPermissionsBoundaryCommandInput, + type PutUserPermissionsBoundaryCommandOutput, + PutUserPolicyCommand, + type PutUserPolicyCommandInput, + type PutUserPolicyCommandOutput, + RemoveClientIDFromOpenIDConnectProviderCommand, + type RemoveClientIDFromOpenIDConnectProviderCommandInput, + type RemoveClientIDFromOpenIDConnectProviderCommandOutput, + RemoveRoleFromInstanceProfileCommand, + type RemoveRoleFromInstanceProfileCommandInput, + type RemoveRoleFromInstanceProfileCommandOutput, + RemoveUserFromGroupCommand, + type RemoveUserFromGroupCommandInput, + type RemoveUserFromGroupCommandOutput, + ResetServiceSpecificCredentialCommand, + type ResetServiceSpecificCredentialCommandInput, + type ResetServiceSpecificCredentialCommandOutput, + ResyncMFADeviceCommand, + type ResyncMFADeviceCommandInput, + type ResyncMFADeviceCommandOutput, + SetDefaultPolicyVersionCommand, + type SetDefaultPolicyVersionCommandInput, + type SetDefaultPolicyVersionCommandOutput, + SetSecurityTokenServicePreferencesCommand, + type SetSecurityTokenServicePreferencesCommandInput, + type SetSecurityTokenServicePreferencesCommandOutput, + SimulateCustomPolicyCommand, + type SimulateCustomPolicyCommandInput, + type SimulateCustomPolicyCommandOutput, + SimulatePrincipalPolicyCommand, + type SimulatePrincipalPolicyCommandInput, + type SimulatePrincipalPolicyCommandOutput, + TagInstanceProfileCommand, + type TagInstanceProfileCommandInput, + type TagInstanceProfileCommandOutput, + TagMFADeviceCommand, + type TagMFADeviceCommandInput, + type TagMFADeviceCommandOutput, + TagOpenIDConnectProviderCommand, + type TagOpenIDConnectProviderCommandInput, + type TagOpenIDConnectProviderCommandOutput, + TagPolicyCommand, + type TagPolicyCommandInput, + type TagPolicyCommandOutput, + TagRoleCommand, + type TagRoleCommandInput, + type TagRoleCommandOutput, + TagSAMLProviderCommand, + type TagSAMLProviderCommandInput, + type TagSAMLProviderCommandOutput, + TagServerCertificateCommand, + type TagServerCertificateCommandInput, + type TagServerCertificateCommandOutput, + TagUserCommand, + type TagUserCommandInput, + type TagUserCommandOutput, + UntagInstanceProfileCommand, + type UntagInstanceProfileCommandInput, + type UntagInstanceProfileCommandOutput, + UntagMFADeviceCommand, + type UntagMFADeviceCommandInput, + type UntagMFADeviceCommandOutput, + UntagOpenIDConnectProviderCommand, + type UntagOpenIDConnectProviderCommandInput, + type UntagOpenIDConnectProviderCommandOutput, + UntagPolicyCommand, + type UntagPolicyCommandInput, + type UntagPolicyCommandOutput, + UntagRoleCommand, + type UntagRoleCommandInput, + type UntagRoleCommandOutput, + UntagSAMLProviderCommand, + type UntagSAMLProviderCommandInput, + type UntagSAMLProviderCommandOutput, + UntagServerCertificateCommand, + type UntagServerCertificateCommandInput, + type UntagServerCertificateCommandOutput, + UntagUserCommand, + type UntagUserCommandInput, + type UntagUserCommandOutput, + UpdateAccessKeyCommand, + type UpdateAccessKeyCommandInput, + type UpdateAccessKeyCommandOutput, + UpdateAccountPasswordPolicyCommand, + type UpdateAccountPasswordPolicyCommandInput, + type UpdateAccountPasswordPolicyCommandOutput, + UpdateAssumeRolePolicyCommand, + type UpdateAssumeRolePolicyCommandInput, + type UpdateAssumeRolePolicyCommandOutput, + UpdateGroupCommand, + type UpdateGroupCommandInput, + type UpdateGroupCommandOutput, + UpdateLoginProfileCommand, + type UpdateLoginProfileCommandInput, + type UpdateLoginProfileCommandOutput, + UpdateOpenIDConnectProviderThumbprintCommand, + type UpdateOpenIDConnectProviderThumbprintCommandInput, + type UpdateOpenIDConnectProviderThumbprintCommandOutput, + UpdateRoleCommand, + type UpdateRoleCommandInput, + type UpdateRoleCommandOutput, + UpdateRoleDescriptionCommand, + type UpdateRoleDescriptionCommandInput, + type UpdateRoleDescriptionCommandOutput, + UpdateSAMLProviderCommand, + type UpdateSAMLProviderCommandInput, + type UpdateSAMLProviderCommandOutput, + UpdateServerCertificateCommand, + type UpdateServerCertificateCommandInput, + type UpdateServerCertificateCommandOutput, + UpdateServiceSpecificCredentialCommand, + type UpdateServiceSpecificCredentialCommandInput, + type UpdateServiceSpecificCredentialCommandOutput, + UpdateSigningCertificateCommand, + type UpdateSigningCertificateCommandInput, + type UpdateSigningCertificateCommandOutput, + UpdateSSHPublicKeyCommand, + type UpdateSSHPublicKeyCommandInput, + type UpdateSSHPublicKeyCommandOutput, + UpdateUserCommand, + type UpdateUserCommandInput, + type UpdateUserCommandOutput, + UploadServerCertificateCommand, + type UploadServerCertificateCommandInput, + type UploadServerCertificateCommandOutput, + UploadSigningCertificateCommand, + type UploadSigningCertificateCommandInput, + type UploadSigningCertificateCommandOutput, + UploadSSHPublicKeyCommand, + type UploadSSHPublicKeyCommandInput, + type UploadSSHPublicKeyCommandOutput, +} from "@aws-sdk/client-iam"; +import { type HttpHandlerOptions as __HttpHandlerOptions } from "@aws-sdk/types"; +import { Context, Effect, Layer, ReadonlyRecord, Data } from "effect"; +import { + ConcurrentModificationError, + CredentialReportExpiredError, + CredentialReportNotPresentError, + CredentialReportNotReadyError, + DeleteConflictError, + DuplicateCertificateError, + DuplicateSSHPublicKeyError, + EntityAlreadyExistsError, + EntityTemporarilyUnmodifiableError, + IAMServiceError, + InvalidAuthenticationCodeError, + InvalidCertificateError, + InvalidInputError, + InvalidPublicKeyError, + InvalidUserTypeError, + KeyPairMismatchError, + LimitExceededError, + MalformedCertificateError, + MalformedPolicyDocumentError, + NoSuchEntityError, + PasswordPolicyViolationError, + PolicyEvaluationError, + PolicyNotAttachableError, + ReportGenerationLimitExceededError, + SdkError, + ServiceFailureError, + ServiceNotSupportedError, + TaggedException, + UnmodifiableEntityError, + UnrecognizedPublicKeyEncodingError, +} from "./Errors"; +import { IAMClientInstance, IAMClientInstanceLayer } from "./IAMClientInstance"; +import { DefaultIAMClientConfigLayer } from "./IAMClientInstanceConfig"; + +const commands = { + AddClientIDToOpenIDConnectProviderCommand, + AddRoleToInstanceProfileCommand, + AddUserToGroupCommand, + AttachGroupPolicyCommand, + AttachRolePolicyCommand, + AttachUserPolicyCommand, + ChangePasswordCommand, + CreateAccessKeyCommand, + CreateAccountAliasCommand, + CreateGroupCommand, + CreateInstanceProfileCommand, + CreateLoginProfileCommand, + CreateOpenIDConnectProviderCommand, + CreatePolicyCommand, + CreatePolicyVersionCommand, + CreateRoleCommand, + CreateSAMLProviderCommand, + CreateServiceLinkedRoleCommand, + CreateServiceSpecificCredentialCommand, + CreateUserCommand, + CreateVirtualMFADeviceCommand, + DeactivateMFADeviceCommand, + DeleteAccessKeyCommand, + DeleteAccountAliasCommand, + DeleteAccountPasswordPolicyCommand, + DeleteGroupCommand, + DeleteGroupPolicyCommand, + DeleteInstanceProfileCommand, + DeleteLoginProfileCommand, + DeleteOpenIDConnectProviderCommand, + DeletePolicyCommand, + DeletePolicyVersionCommand, + DeleteRoleCommand, + DeleteRolePermissionsBoundaryCommand, + DeleteRolePolicyCommand, + DeleteSAMLProviderCommand, + DeleteServerCertificateCommand, + DeleteServiceLinkedRoleCommand, + DeleteServiceSpecificCredentialCommand, + DeleteSigningCertificateCommand, + DeleteSSHPublicKeyCommand, + DeleteUserCommand, + DeleteUserPermissionsBoundaryCommand, + DeleteUserPolicyCommand, + DeleteVirtualMFADeviceCommand, + DetachGroupPolicyCommand, + DetachRolePolicyCommand, + DetachUserPolicyCommand, + EnableMFADeviceCommand, + GenerateCredentialReportCommand, + GenerateOrganizationsAccessReportCommand, + GenerateServiceLastAccessedDetailsCommand, + GetAccessKeyLastUsedCommand, + GetAccountAuthorizationDetailsCommand, + GetAccountPasswordPolicyCommand, + GetAccountSummaryCommand, + GetContextKeysForCustomPolicyCommand, + GetContextKeysForPrincipalPolicyCommand, + GetCredentialReportCommand, + GetGroupCommand, + GetGroupPolicyCommand, + GetInstanceProfileCommand, + GetLoginProfileCommand, + GetMFADeviceCommand, + GetOpenIDConnectProviderCommand, + GetOrganizationsAccessReportCommand, + GetPolicyCommand, + GetPolicyVersionCommand, + GetRoleCommand, + GetRolePolicyCommand, + GetSAMLProviderCommand, + GetServerCertificateCommand, + GetServiceLastAccessedDetailsCommand, + GetServiceLastAccessedDetailsWithEntitiesCommand, + GetServiceLinkedRoleDeletionStatusCommand, + GetSSHPublicKeyCommand, + GetUserCommand, + GetUserPolicyCommand, + ListAccessKeysCommand, + ListAccountAliasesCommand, + ListAttachedGroupPoliciesCommand, + ListAttachedRolePoliciesCommand, + ListAttachedUserPoliciesCommand, + ListEntitiesForPolicyCommand, + ListGroupPoliciesCommand, + ListGroupsCommand, + ListGroupsForUserCommand, + ListInstanceProfilesCommand, + ListInstanceProfilesForRoleCommand, + ListInstanceProfileTagsCommand, + ListMFADevicesCommand, + ListMFADeviceTagsCommand, + ListOpenIDConnectProvidersCommand, + ListOpenIDConnectProviderTagsCommand, + ListPoliciesCommand, + ListPoliciesGrantingServiceAccessCommand, + ListPolicyTagsCommand, + ListPolicyVersionsCommand, + ListRolePoliciesCommand, + ListRolesCommand, + ListRoleTagsCommand, + ListSAMLProvidersCommand, + ListSAMLProviderTagsCommand, + ListServerCertificatesCommand, + ListServerCertificateTagsCommand, + ListServiceSpecificCredentialsCommand, + ListSigningCertificatesCommand, + ListSSHPublicKeysCommand, + ListUserPoliciesCommand, + ListUsersCommand, + ListUserTagsCommand, + ListVirtualMFADevicesCommand, + PutGroupPolicyCommand, + PutRolePermissionsBoundaryCommand, + PutRolePolicyCommand, + PutUserPermissionsBoundaryCommand, + PutUserPolicyCommand, + RemoveClientIDFromOpenIDConnectProviderCommand, + RemoveRoleFromInstanceProfileCommand, + RemoveUserFromGroupCommand, + ResetServiceSpecificCredentialCommand, + ResyncMFADeviceCommand, + SetDefaultPolicyVersionCommand, + SetSecurityTokenServicePreferencesCommand, + SimulateCustomPolicyCommand, + SimulatePrincipalPolicyCommand, + TagInstanceProfileCommand, + TagMFADeviceCommand, + TagOpenIDConnectProviderCommand, + TagPolicyCommand, + TagRoleCommand, + TagSAMLProviderCommand, + TagServerCertificateCommand, + TagUserCommand, + UntagInstanceProfileCommand, + UntagMFADeviceCommand, + UntagOpenIDConnectProviderCommand, + UntagPolicyCommand, + UntagRoleCommand, + UntagSAMLProviderCommand, + UntagServerCertificateCommand, + UntagUserCommand, + UpdateAccessKeyCommand, + UpdateAccountPasswordPolicyCommand, + UpdateAssumeRolePolicyCommand, + UpdateGroupCommand, + UpdateLoginProfileCommand, + UpdateOpenIDConnectProviderThumbprintCommand, + UpdateRoleCommand, + UpdateRoleDescriptionCommand, + UpdateSAMLProviderCommand, + UpdateServerCertificateCommand, + UpdateServiceSpecificCredentialCommand, + UpdateSigningCertificateCommand, + UpdateSSHPublicKeyCommand, + UpdateUserCommand, + UploadServerCertificateCommand, + UploadSigningCertificateCommand, + UploadSSHPublicKeyCommand, +}; + +/** + * @since 1.0.0 + * @category models + */ +export type IAMService = { + readonly _: unique symbol; + + /** + * @see {@link AddClientIDToOpenIDConnectProviderCommand} + */ + readonly addClientIDToOpenIDConnectProvider: ( + args: AddClientIDToOpenIDConnectProviderCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + AddClientIDToOpenIDConnectProviderCommandOutput + >; + + /** + * @see {@link AddRoleToInstanceProfileCommand} + */ + readonly addRoleToInstanceProfile: ( + args: AddRoleToInstanceProfileCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | EntityAlreadyExistsError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError + | UnmodifiableEntityError, + AddRoleToInstanceProfileCommandOutput + >; + + /** + * @see {@link AddUserToGroupCommand} + */ + readonly addUserToGroup: ( + args: AddUserToGroupCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + AddUserToGroupCommandOutput + >; + + /** + * @see {@link AttachGroupPolicyCommand} + */ + readonly attachGroupPolicy: ( + args: AttachGroupPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | PolicyNotAttachableError + | ServiceFailureError, + AttachGroupPolicyCommandOutput + >; + + /** + * @see {@link AttachRolePolicyCommand} + */ + readonly attachRolePolicy: ( + args: AttachRolePolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | PolicyNotAttachableError + | ServiceFailureError + | UnmodifiableEntityError, + AttachRolePolicyCommandOutput + >; + + /** + * @see {@link AttachUserPolicyCommand} + */ + readonly attachUserPolicy: ( + args: AttachUserPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | PolicyNotAttachableError + | ServiceFailureError, + AttachUserPolicyCommandOutput + >; + + /** + * @see {@link ChangePasswordCommand} + */ + readonly changePassword: ( + args: ChangePasswordCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | EntityTemporarilyUnmodifiableError + | InvalidUserTypeError + | LimitExceededError + | NoSuchEntityError + | PasswordPolicyViolationError + | ServiceFailureError, + ChangePasswordCommandOutput + >; + + /** + * @see {@link CreateAccessKeyCommand} + */ + readonly createAccessKey: ( + args: CreateAccessKeyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + CreateAccessKeyCommandOutput + >; + + /** + * @see {@link CreateAccountAliasCommand} + */ + readonly createAccountAlias: ( + args: CreateAccountAliasCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | EntityAlreadyExistsError + | LimitExceededError + | ServiceFailureError, + CreateAccountAliasCommandOutput + >; + + /** + * @see {@link CreateGroupCommand} + */ + readonly createGroup: ( + args: CreateGroupCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | EntityAlreadyExistsError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + CreateGroupCommandOutput + >; + + /** + * @see {@link CreateInstanceProfileCommand} + */ + readonly createInstanceProfile: ( + args: CreateInstanceProfileCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | EntityAlreadyExistsError + | InvalidInputError + | LimitExceededError + | ServiceFailureError, + CreateInstanceProfileCommandOutput + >; + + /** + * @see {@link CreateLoginProfileCommand} + */ + readonly createLoginProfile: ( + args: CreateLoginProfileCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | EntityAlreadyExistsError + | LimitExceededError + | NoSuchEntityError + | PasswordPolicyViolationError + | ServiceFailureError, + CreateLoginProfileCommandOutput + >; + + /** + * @see {@link CreateOpenIDConnectProviderCommand} + */ + readonly createOpenIDConnectProvider: ( + args: CreateOpenIDConnectProviderCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | EntityAlreadyExistsError + | InvalidInputError + | LimitExceededError + | ServiceFailureError, + CreateOpenIDConnectProviderCommandOutput + >; + + /** + * @see {@link CreatePolicyCommand} + */ + readonly createPolicy: ( + args: CreatePolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | EntityAlreadyExistsError + | InvalidInputError + | LimitExceededError + | MalformedPolicyDocumentError + | ServiceFailureError, + CreatePolicyCommandOutput + >; + + /** + * @see {@link CreatePolicyVersionCommand} + */ + readonly createPolicyVersion: ( + args: CreatePolicyVersionCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | LimitExceededError + | MalformedPolicyDocumentError + | NoSuchEntityError + | ServiceFailureError, + CreatePolicyVersionCommandOutput + >; + + /** + * @see {@link CreateRoleCommand} + */ + readonly createRole: ( + args: CreateRoleCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | EntityAlreadyExistsError + | InvalidInputError + | LimitExceededError + | MalformedPolicyDocumentError + | ServiceFailureError, + CreateRoleCommandOutput + >; + + /** + * @see {@link CreateSAMLProviderCommand} + */ + readonly createSAMLProvider: ( + args: CreateSAMLProviderCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | EntityAlreadyExistsError + | InvalidInputError + | LimitExceededError + | ServiceFailureError, + CreateSAMLProviderCommandOutput + >; + + /** + * @see {@link CreateServiceLinkedRoleCommand} + */ + readonly createServiceLinkedRole: ( + args: CreateServiceLinkedRoleCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + CreateServiceLinkedRoleCommandOutput + >; + + /** + * @see {@link CreateServiceSpecificCredentialCommand} + */ + readonly createServiceSpecificCredential: ( + args: CreateServiceSpecificCredentialCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | NoSuchEntityError + | ServiceNotSupportedError, + CreateServiceSpecificCredentialCommandOutput + >; + + /** + * @see {@link CreateUserCommand} + */ + readonly createUser: ( + args: CreateUserCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | EntityAlreadyExistsError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + CreateUserCommandOutput + >; + + /** + * @see {@link CreateVirtualMFADeviceCommand} + */ + readonly createVirtualMFADevice: ( + args: CreateVirtualMFADeviceCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | EntityAlreadyExistsError + | InvalidInputError + | LimitExceededError + | ServiceFailureError, + CreateVirtualMFADeviceCommandOutput + >; + + /** + * @see {@link DeactivateMFADeviceCommand} + */ + readonly deactivateMFADevice: ( + args: DeactivateMFADeviceCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | EntityTemporarilyUnmodifiableError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeactivateMFADeviceCommandOutput + >; + + /** + * @see {@link DeleteAccessKeyCommand} + */ + readonly deleteAccessKey: ( + args: DeleteAccessKeyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeleteAccessKeyCommandOutput + >; + + /** + * @see {@link DeleteAccountAliasCommand} + */ + readonly deleteAccountAlias: ( + args: DeleteAccountAliasCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeleteAccountAliasCommandOutput + >; + + /** + * @see {@link DeleteAccountPasswordPolicyCommand} + */ + readonly deleteAccountPasswordPolicy: ( + args: DeleteAccountPasswordPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeleteAccountPasswordPolicyCommandOutput + >; + + /** + * @see {@link DeleteGroupCommand} + */ + readonly deleteGroup: ( + args: DeleteGroupCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | DeleteConflictError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeleteGroupCommandOutput + >; + + /** + * @see {@link DeleteGroupPolicyCommand} + */ + readonly deleteGroupPolicy: ( + args: DeleteGroupPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeleteGroupPolicyCommandOutput + >; + + /** + * @see {@link DeleteInstanceProfileCommand} + */ + readonly deleteInstanceProfile: ( + args: DeleteInstanceProfileCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | DeleteConflictError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeleteInstanceProfileCommandOutput + >; + + /** + * @see {@link DeleteLoginProfileCommand} + */ + readonly deleteLoginProfile: ( + args: DeleteLoginProfileCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | EntityTemporarilyUnmodifiableError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeleteLoginProfileCommandOutput + >; + + /** + * @see {@link DeleteOpenIDConnectProviderCommand} + */ + readonly deleteOpenIDConnectProvider: ( + args: DeleteOpenIDConnectProviderCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + DeleteOpenIDConnectProviderCommandOutput + >; + + /** + * @see {@link DeletePolicyCommand} + */ + readonly deletePolicy: ( + args: DeletePolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | DeleteConflictError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeletePolicyCommandOutput + >; + + /** + * @see {@link DeletePolicyVersionCommand} + */ + readonly deletePolicyVersion: ( + args: DeletePolicyVersionCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | DeleteConflictError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeletePolicyVersionCommandOutput + >; + + /** + * @see {@link DeleteRoleCommand} + */ + readonly deleteRole: ( + args: DeleteRoleCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | DeleteConflictError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError + | UnmodifiableEntityError, + DeleteRoleCommandOutput + >; + + /** + * @see {@link DeleteRolePermissionsBoundaryCommand} + */ + readonly deleteRolePermissionsBoundary: ( + args: DeleteRolePermissionsBoundaryCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | NoSuchEntityError + | ServiceFailureError + | UnmodifiableEntityError, + DeleteRolePermissionsBoundaryCommandOutput + >; + + /** + * @see {@link DeleteRolePolicyCommand} + */ + readonly deleteRolePolicy: ( + args: DeleteRolePolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError + | UnmodifiableEntityError, + DeleteRolePolicyCommandOutput + >; + + /** + * @see {@link DeleteSAMLProviderCommand} + */ + readonly deleteSAMLProvider: ( + args: DeleteSAMLProviderCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeleteSAMLProviderCommandOutput + >; + + /** + * @see {@link DeleteServerCertificateCommand} + */ + readonly deleteServerCertificate: ( + args: DeleteServerCertificateCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | DeleteConflictError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeleteServerCertificateCommandOutput + >; + + /** + * @see {@link DeleteServiceLinkedRoleCommand} + */ + readonly deleteServiceLinkedRole: ( + args: DeleteServiceLinkedRoleCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeleteServiceLinkedRoleCommandOutput + >; + + /** + * @see {@link DeleteServiceSpecificCredentialCommand} + */ + readonly deleteServiceSpecificCredential: ( + args: DeleteServiceSpecificCredentialCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError, + DeleteServiceSpecificCredentialCommandOutput + >; + + /** + * @see {@link DeleteSigningCertificateCommand} + */ + readonly deleteSigningCertificate: ( + args: DeleteSigningCertificateCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeleteSigningCertificateCommandOutput + >; + + /** + * @see {@link DeleteSSHPublicKeyCommand} + */ + readonly deleteSSHPublicKey: ( + args: DeleteSSHPublicKeyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError, + DeleteSSHPublicKeyCommandOutput + >; + + /** + * @see {@link DeleteUserCommand} + */ + readonly deleteUser: ( + args: DeleteUserCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | DeleteConflictError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeleteUserCommandOutput + >; + + /** + * @see {@link DeleteUserPermissionsBoundaryCommand} + */ + readonly deleteUserPermissionsBoundary: ( + args: DeleteUserPermissionsBoundaryCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + DeleteUserPermissionsBoundaryCommandOutput + >; + + /** + * @see {@link DeleteUserPolicyCommand} + */ + readonly deleteUserPolicy: ( + args: DeleteUserPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeleteUserPolicyCommandOutput + >; + + /** + * @see {@link DeleteVirtualMFADeviceCommand} + */ + readonly deleteVirtualMFADevice: ( + args: DeleteVirtualMFADeviceCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | DeleteConflictError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DeleteVirtualMFADeviceCommandOutput + >; + + /** + * @see {@link DetachGroupPolicyCommand} + */ + readonly detachGroupPolicy: ( + args: DetachGroupPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DetachGroupPolicyCommandOutput + >; + + /** + * @see {@link DetachRolePolicyCommand} + */ + readonly detachRolePolicy: ( + args: DetachRolePolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError + | UnmodifiableEntityError, + DetachRolePolicyCommandOutput + >; + + /** + * @see {@link DetachUserPolicyCommand} + */ + readonly detachUserPolicy: ( + args: DetachUserPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + DetachUserPolicyCommandOutput + >; + + /** + * @see {@link EnableMFADeviceCommand} + */ + readonly enableMFADevice: ( + args: EnableMFADeviceCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | EntityAlreadyExistsError + | EntityTemporarilyUnmodifiableError + | InvalidAuthenticationCodeError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + EnableMFADeviceCommandOutput + >; + + /** + * @see {@link GenerateCredentialReportCommand} + */ + readonly generateCredentialReport: ( + args: GenerateCredentialReportCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | LimitExceededError | ServiceFailureError, + GenerateCredentialReportCommandOutput + >; + + /** + * @see {@link GenerateOrganizationsAccessReportCommand} + */ + readonly generateOrganizationsAccessReport: ( + args: GenerateOrganizationsAccessReportCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | ReportGenerationLimitExceededError, + GenerateOrganizationsAccessReportCommandOutput + >; + + /** + * @see {@link GenerateServiceLastAccessedDetailsCommand} + */ + readonly generateServiceLastAccessedDetails: ( + args: GenerateServiceLastAccessedDetailsCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | InvalidInputError | NoSuchEntityError, + GenerateServiceLastAccessedDetailsCommandOutput + >; + + /** + * @see {@link GetAccessKeyLastUsedCommand} + */ + readonly getAccessKeyLastUsed: ( + args: GetAccessKeyLastUsedCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError, + GetAccessKeyLastUsedCommandOutput + >; + + /** + * @see {@link GetAccountAuthorizationDetailsCommand} + */ + readonly getAccountAuthorizationDetails: ( + args: GetAccountAuthorizationDetailsCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | ServiceFailureError, + GetAccountAuthorizationDetailsCommandOutput + >; + + /** + * @see {@link GetAccountPasswordPolicyCommand} + */ + readonly getAccountPasswordPolicy: ( + args: GetAccountPasswordPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + GetAccountPasswordPolicyCommandOutput + >; + + /** + * @see {@link GetAccountSummaryCommand} + */ + readonly getAccountSummary: ( + args: GetAccountSummaryCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | ServiceFailureError, + GetAccountSummaryCommandOutput + >; + + /** + * @see {@link GetContextKeysForCustomPolicyCommand} + */ + readonly getContextKeysForCustomPolicy: ( + args: GetContextKeysForCustomPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | InvalidInputError, + GetContextKeysForCustomPolicyCommandOutput + >; + + /** + * @see {@link GetContextKeysForPrincipalPolicyCommand} + */ + readonly getContextKeysForPrincipalPolicy: ( + args: GetContextKeysForPrincipalPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | InvalidInputError | NoSuchEntityError, + GetContextKeysForPrincipalPolicyCommandOutput + >; + + /** + * @see {@link GetCredentialReportCommand} + */ + readonly getCredentialReport: ( + args: GetCredentialReportCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | CredentialReportExpiredError + | CredentialReportNotPresentError + | CredentialReportNotReadyError + | ServiceFailureError, + GetCredentialReportCommandOutput + >; + + /** + * @see {@link GetGroupCommand} + */ + readonly getGroup: ( + args: GetGroupCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + GetGroupCommandOutput + >; + + /** + * @see {@link GetGroupPolicyCommand} + */ + readonly getGroupPolicy: ( + args: GetGroupPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + GetGroupPolicyCommandOutput + >; + + /** + * @see {@link GetInstanceProfileCommand} + */ + readonly getInstanceProfile: ( + args: GetInstanceProfileCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + GetInstanceProfileCommandOutput + >; + + /** + * @see {@link GetLoginProfileCommand} + */ + readonly getLoginProfile: ( + args: GetLoginProfileCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + GetLoginProfileCommandOutput + >; + + /** + * @see {@link GetMFADeviceCommand} + */ + readonly getMFADevice: ( + args: GetMFADeviceCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + GetMFADeviceCommandOutput + >; + + /** + * @see {@link GetOpenIDConnectProviderCommand} + */ + readonly getOpenIDConnectProvider: ( + args: GetOpenIDConnectProviderCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + GetOpenIDConnectProviderCommandOutput + >; + + /** + * @see {@link GetOrganizationsAccessReportCommand} + */ + readonly getOrganizationsAccessReport: ( + args: GetOrganizationsAccessReportCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError, + GetOrganizationsAccessReportCommandOutput + >; + + /** + * @see {@link GetPolicyCommand} + */ + readonly getPolicy: ( + args: GetPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + GetPolicyCommandOutput + >; + + /** + * @see {@link GetPolicyVersionCommand} + */ + readonly getPolicyVersion: ( + args: GetPolicyVersionCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + GetPolicyVersionCommandOutput + >; + + /** + * @see {@link GetRoleCommand} + */ + readonly getRole: ( + args: GetRoleCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + GetRoleCommandOutput + >; + + /** + * @see {@link GetRolePolicyCommand} + */ + readonly getRolePolicy: ( + args: GetRolePolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + GetRolePolicyCommandOutput + >; + + /** + * @see {@link GetSAMLProviderCommand} + */ + readonly getSAMLProvider: ( + args: GetSAMLProviderCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + GetSAMLProviderCommandOutput + >; + + /** + * @see {@link GetServerCertificateCommand} + */ + readonly getServerCertificate: ( + args: GetServerCertificateCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + GetServerCertificateCommandOutput + >; + + /** + * @see {@link GetServiceLastAccessedDetailsCommand} + */ + readonly getServiceLastAccessedDetails: ( + args: GetServiceLastAccessedDetailsCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | InvalidInputError | NoSuchEntityError, + GetServiceLastAccessedDetailsCommandOutput + >; + + /** + * @see {@link GetServiceLastAccessedDetailsWithEntitiesCommand} + */ + readonly getServiceLastAccessedDetailsWithEntities: ( + args: GetServiceLastAccessedDetailsWithEntitiesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | InvalidInputError | NoSuchEntityError, + GetServiceLastAccessedDetailsWithEntitiesCommandOutput + >; + + /** + * @see {@link GetServiceLinkedRoleDeletionStatusCommand} + */ + readonly getServiceLinkedRoleDeletionStatus: ( + args: GetServiceLinkedRoleDeletionStatusCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + GetServiceLinkedRoleDeletionStatusCommandOutput + >; + + /** + * @see {@link GetSSHPublicKeyCommand} + */ + readonly getSSHPublicKey: ( + args: GetSSHPublicKeyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | NoSuchEntityError + | UnrecognizedPublicKeyEncodingError, + GetSSHPublicKeyCommandOutput + >; + + /** + * @see {@link GetUserCommand} + */ + readonly getUser: ( + args: GetUserCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + GetUserCommandOutput + >; + + /** + * @see {@link GetUserPolicyCommand} + */ + readonly getUserPolicy: ( + args: GetUserPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + GetUserPolicyCommandOutput + >; + + /** + * @see {@link ListAccessKeysCommand} + */ + readonly listAccessKeys: ( + args: ListAccessKeysCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + ListAccessKeysCommandOutput + >; + + /** + * @see {@link ListAccountAliasesCommand} + */ + readonly listAccountAliases: ( + args: ListAccountAliasesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | ServiceFailureError, + ListAccountAliasesCommandOutput + >; + + /** + * @see {@link ListAttachedGroupPoliciesCommand} + */ + readonly listAttachedGroupPolicies: ( + args: ListAttachedGroupPoliciesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + ListAttachedGroupPoliciesCommandOutput + >; + + /** + * @see {@link ListAttachedRolePoliciesCommand} + */ + readonly listAttachedRolePolicies: ( + args: ListAttachedRolePoliciesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + ListAttachedRolePoliciesCommandOutput + >; + + /** + * @see {@link ListAttachedUserPoliciesCommand} + */ + readonly listAttachedUserPolicies: ( + args: ListAttachedUserPoliciesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + ListAttachedUserPoliciesCommandOutput + >; + + /** + * @see {@link ListEntitiesForPolicyCommand} + */ + readonly listEntitiesForPolicy: ( + args: ListEntitiesForPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + ListEntitiesForPolicyCommandOutput + >; + + /** + * @see {@link ListGroupPoliciesCommand} + */ + readonly listGroupPolicies: ( + args: ListGroupPoliciesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + ListGroupPoliciesCommandOutput + >; + + /** + * @see {@link ListGroupsCommand} + */ + readonly listGroups: ( + args: ListGroupsCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | ServiceFailureError, + ListGroupsCommandOutput + >; + + /** + * @see {@link ListGroupsForUserCommand} + */ + readonly listGroupsForUser: ( + args: ListGroupsForUserCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + ListGroupsForUserCommandOutput + >; + + /** + * @see {@link ListInstanceProfilesCommand} + */ + readonly listInstanceProfiles: ( + args: ListInstanceProfilesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | ServiceFailureError, + ListInstanceProfilesCommandOutput + >; + + /** + * @see {@link ListInstanceProfilesForRoleCommand} + */ + readonly listInstanceProfilesForRole: ( + args: ListInstanceProfilesForRoleCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + ListInstanceProfilesForRoleCommandOutput + >; + + /** + * @see {@link ListInstanceProfileTagsCommand} + */ + readonly listInstanceProfileTags: ( + args: ListInstanceProfileTagsCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + ListInstanceProfileTagsCommandOutput + >; + + /** + * @see {@link ListMFADevicesCommand} + */ + readonly listMFADevices: ( + args: ListMFADevicesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + ListMFADevicesCommandOutput + >; + + /** + * @see {@link ListMFADeviceTagsCommand} + */ + readonly listMFADeviceTags: ( + args: ListMFADeviceTagsCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + ListMFADeviceTagsCommandOutput + >; + + /** + * @see {@link ListOpenIDConnectProvidersCommand} + */ + readonly listOpenIDConnectProviders: ( + args: ListOpenIDConnectProvidersCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | ServiceFailureError, + ListOpenIDConnectProvidersCommandOutput + >; + + /** + * @see {@link ListOpenIDConnectProviderTagsCommand} + */ + readonly listOpenIDConnectProviderTags: ( + args: ListOpenIDConnectProviderTagsCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + ListOpenIDConnectProviderTagsCommandOutput + >; + + /** + * @see {@link ListPoliciesCommand} + */ + readonly listPolicies: ( + args: ListPoliciesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | ServiceFailureError, + ListPoliciesCommandOutput + >; + + /** + * @see {@link ListPoliciesGrantingServiceAccessCommand} + */ + readonly listPoliciesGrantingServiceAccess: ( + args: ListPoliciesGrantingServiceAccessCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | InvalidInputError | NoSuchEntityError, + ListPoliciesGrantingServiceAccessCommandOutput + >; + + /** + * @see {@link ListPolicyTagsCommand} + */ + readonly listPolicyTags: ( + args: ListPolicyTagsCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + ListPolicyTagsCommandOutput + >; + + /** + * @see {@link ListPolicyVersionsCommand} + */ + readonly listPolicyVersions: ( + args: ListPolicyVersionsCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + ListPolicyVersionsCommandOutput + >; + + /** + * @see {@link ListRolePoliciesCommand} + */ + readonly listRolePolicies: ( + args: ListRolePoliciesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + ListRolePoliciesCommandOutput + >; + + /** + * @see {@link ListRolesCommand} + */ + readonly listRoles: ( + args: ListRolesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | ServiceFailureError, + ListRolesCommandOutput + >; + + /** + * @see {@link ListRoleTagsCommand} + */ + readonly listRoleTags: ( + args: ListRoleTagsCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + ListRoleTagsCommandOutput + >; + + /** + * @see {@link ListSAMLProvidersCommand} + */ + readonly listSAMLProviders: ( + args: ListSAMLProvidersCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | ServiceFailureError, + ListSAMLProvidersCommandOutput + >; + + /** + * @see {@link ListSAMLProviderTagsCommand} + */ + readonly listSAMLProviderTags: ( + args: ListSAMLProviderTagsCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + ListSAMLProviderTagsCommandOutput + >; + + /** + * @see {@link ListServerCertificatesCommand} + */ + readonly listServerCertificates: ( + args: ListServerCertificatesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | ServiceFailureError, + ListServerCertificatesCommandOutput + >; + + /** + * @see {@link ListServerCertificateTagsCommand} + */ + readonly listServerCertificateTags: ( + args: ListServerCertificateTagsCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + ListServerCertificateTagsCommandOutput + >; + + /** + * @see {@link ListServiceSpecificCredentialsCommand} + */ + readonly listServiceSpecificCredentials: ( + args: ListServiceSpecificCredentialsCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceNotSupportedError, + ListServiceSpecificCredentialsCommandOutput + >; + + /** + * @see {@link ListSigningCertificatesCommand} + */ + readonly listSigningCertificates: ( + args: ListSigningCertificatesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + ListSigningCertificatesCommandOutput + >; + + /** + * @see {@link ListSSHPublicKeysCommand} + */ + readonly listSSHPublicKeys: ( + args: ListSSHPublicKeysCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError, + ListSSHPublicKeysCommandOutput + >; + + /** + * @see {@link ListUserPoliciesCommand} + */ + readonly listUserPolicies: ( + args: ListUserPoliciesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + ListUserPoliciesCommandOutput + >; + + /** + * @see {@link ListUsersCommand} + */ + readonly listUsers: ( + args: ListUsersCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | ServiceFailureError, + ListUsersCommandOutput + >; + + /** + * @see {@link ListUserTagsCommand} + */ + readonly listUserTags: ( + args: ListUserTagsCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError | ServiceFailureError, + ListUserTagsCommandOutput + >; + + /** + * @see {@link ListVirtualMFADevicesCommand} + */ + readonly listVirtualMFADevices: ( + args: ListVirtualMFADevicesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError, + ListVirtualMFADevicesCommandOutput + >; + + /** + * @see {@link PutGroupPolicyCommand} + */ + readonly putGroupPolicy: ( + args: PutGroupPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | MalformedPolicyDocumentError + | NoSuchEntityError + | ServiceFailureError, + PutGroupPolicyCommandOutput + >; + + /** + * @see {@link PutRolePermissionsBoundaryCommand} + */ + readonly putRolePermissionsBoundary: ( + args: PutRolePermissionsBoundaryCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | PolicyNotAttachableError + | ServiceFailureError + | UnmodifiableEntityError, + PutRolePermissionsBoundaryCommandOutput + >; + + /** + * @see {@link PutRolePolicyCommand} + */ + readonly putRolePolicy: ( + args: PutRolePolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | MalformedPolicyDocumentError + | NoSuchEntityError + | ServiceFailureError + | UnmodifiableEntityError, + PutRolePolicyCommandOutput + >; + + /** + * @see {@link PutUserPermissionsBoundaryCommand} + */ + readonly putUserPermissionsBoundary: ( + args: PutUserPermissionsBoundaryCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | PolicyNotAttachableError + | ServiceFailureError, + PutUserPermissionsBoundaryCommandOutput + >; + + /** + * @see {@link PutUserPolicyCommand} + */ + readonly putUserPolicy: ( + args: PutUserPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | MalformedPolicyDocumentError + | NoSuchEntityError + | ServiceFailureError, + PutUserPolicyCommandOutput + >; + + /** + * @see {@link RemoveClientIDFromOpenIDConnectProviderCommand} + */ + readonly removeClientIDFromOpenIDConnectProvider: ( + args: RemoveClientIDFromOpenIDConnectProviderCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + RemoveClientIDFromOpenIDConnectProviderCommandOutput + >; + + /** + * @see {@link RemoveRoleFromInstanceProfileCommand} + */ + readonly removeRoleFromInstanceProfile: ( + args: RemoveRoleFromInstanceProfileCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError + | UnmodifiableEntityError, + RemoveRoleFromInstanceProfileCommandOutput + >; + + /** + * @see {@link RemoveUserFromGroupCommand} + */ + readonly removeUserFromGroup: ( + args: RemoveUserFromGroupCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + RemoveUserFromGroupCommandOutput + >; + + /** + * @see {@link ResetServiceSpecificCredentialCommand} + */ + readonly resetServiceSpecificCredential: ( + args: ResetServiceSpecificCredentialCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError, + ResetServiceSpecificCredentialCommandOutput + >; + + /** + * @see {@link ResyncMFADeviceCommand} + */ + readonly resyncMFADevice: ( + args: ResyncMFADeviceCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidAuthenticationCodeError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + ResyncMFADeviceCommandOutput + >; + + /** + * @see {@link SetDefaultPolicyVersionCommand} + */ + readonly setDefaultPolicyVersion: ( + args: SetDefaultPolicyVersionCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + SetDefaultPolicyVersionCommandOutput + >; + + /** + * @see {@link SetSecurityTokenServicePreferencesCommand} + */ + readonly setSecurityTokenServicePreferences: ( + args: SetSecurityTokenServicePreferencesCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | ServiceFailureError, + SetSecurityTokenServicePreferencesCommandOutput + >; + + /** + * @see {@link SimulateCustomPolicyCommand} + */ + readonly simulateCustomPolicy: ( + args: SimulateCustomPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | InvalidInputError | PolicyEvaluationError, + SimulateCustomPolicyCommandOutput + >; + + /** + * @see {@link SimulatePrincipalPolicyCommand} + */ + readonly simulatePrincipalPolicy: ( + args: SimulatePrincipalPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | PolicyEvaluationError, + SimulatePrincipalPolicyCommandOutput + >; + + /** + * @see {@link TagInstanceProfileCommand} + */ + readonly tagInstanceProfile: ( + args: TagInstanceProfileCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + TagInstanceProfileCommandOutput + >; + + /** + * @see {@link TagMFADeviceCommand} + */ + readonly tagMFADevice: ( + args: TagMFADeviceCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + TagMFADeviceCommandOutput + >; + + /** + * @see {@link TagOpenIDConnectProviderCommand} + */ + readonly tagOpenIDConnectProvider: ( + args: TagOpenIDConnectProviderCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + TagOpenIDConnectProviderCommandOutput + >; + + /** + * @see {@link TagPolicyCommand} + */ + readonly tagPolicy: ( + args: TagPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + TagPolicyCommandOutput + >; + + /** + * @see {@link TagRoleCommand} + */ + readonly tagRole: ( + args: TagRoleCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + TagRoleCommandOutput + >; + + /** + * @see {@link TagSAMLProviderCommand} + */ + readonly tagSAMLProvider: ( + args: TagSAMLProviderCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + TagSAMLProviderCommandOutput + >; + + /** + * @see {@link TagServerCertificateCommand} + */ + readonly tagServerCertificate: ( + args: TagServerCertificateCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + TagServerCertificateCommandOutput + >; + + /** + * @see {@link TagUserCommand} + */ + readonly tagUser: ( + args: TagUserCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + TagUserCommandOutput + >; + + /** + * @see {@link UntagInstanceProfileCommand} + */ + readonly untagInstanceProfile: ( + args: UntagInstanceProfileCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + UntagInstanceProfileCommandOutput + >; + + /** + * @see {@link UntagMFADeviceCommand} + */ + readonly untagMFADevice: ( + args: UntagMFADeviceCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + UntagMFADeviceCommandOutput + >; + + /** + * @see {@link UntagOpenIDConnectProviderCommand} + */ + readonly untagOpenIDConnectProvider: ( + args: UntagOpenIDConnectProviderCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + UntagOpenIDConnectProviderCommandOutput + >; + + /** + * @see {@link UntagPolicyCommand} + */ + readonly untagPolicy: ( + args: UntagPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + UntagPolicyCommandOutput + >; + + /** + * @see {@link UntagRoleCommand} + */ + readonly untagRole: ( + args: UntagRoleCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | NoSuchEntityError + | ServiceFailureError, + UntagRoleCommandOutput + >; + + /** + * @see {@link UntagSAMLProviderCommand} + */ + readonly untagSAMLProvider: ( + args: UntagSAMLProviderCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + UntagSAMLProviderCommandOutput + >; + + /** + * @see {@link UntagServerCertificateCommand} + */ + readonly untagServerCertificate: ( + args: UntagServerCertificateCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + UntagServerCertificateCommandOutput + >; + + /** + * @see {@link UntagUserCommand} + */ + readonly untagUser: ( + args: UntagUserCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | NoSuchEntityError + | ServiceFailureError, + UntagUserCommandOutput + >; + + /** + * @see {@link UpdateAccessKeyCommand} + */ + readonly updateAccessKey: ( + args: UpdateAccessKeyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + UpdateAccessKeyCommandOutput + >; + + /** + * @see {@link UpdateAccountPasswordPolicyCommand} + */ + readonly updateAccountPasswordPolicy: ( + args: UpdateAccountPasswordPolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | MalformedPolicyDocumentError + | NoSuchEntityError + | ServiceFailureError, + UpdateAccountPasswordPolicyCommandOutput + >; + + /** + * @see {@link UpdateAssumeRolePolicyCommand} + */ + readonly updateAssumeRolePolicy: ( + args: UpdateAssumeRolePolicyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | MalformedPolicyDocumentError + | NoSuchEntityError + | ServiceFailureError + | UnmodifiableEntityError, + UpdateAssumeRolePolicyCommandOutput + >; + + /** + * @see {@link UpdateGroupCommand} + */ + readonly updateGroup: ( + args: UpdateGroupCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | EntityAlreadyExistsError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + UpdateGroupCommandOutput + >; + + /** + * @see {@link UpdateLoginProfileCommand} + */ + readonly updateLoginProfile: ( + args: UpdateLoginProfileCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | EntityTemporarilyUnmodifiableError + | LimitExceededError + | NoSuchEntityError + | PasswordPolicyViolationError + | ServiceFailureError, + UpdateLoginProfileCommandOutput + >; + + /** + * @see {@link UpdateOpenIDConnectProviderThumbprintCommand} + */ + readonly updateOpenIDConnectProviderThumbprint: ( + args: UpdateOpenIDConnectProviderThumbprintCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | NoSuchEntityError + | ServiceFailureError, + UpdateOpenIDConnectProviderThumbprintCommandOutput + >; + + /** + * @see {@link UpdateRoleCommand} + */ + readonly updateRole: ( + args: UpdateRoleCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | NoSuchEntityError + | ServiceFailureError + | UnmodifiableEntityError, + UpdateRoleCommandOutput + >; + + /** + * @see {@link UpdateRoleDescriptionCommand} + */ + readonly updateRoleDescription: ( + args: UpdateRoleDescriptionCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | NoSuchEntityError + | ServiceFailureError + | UnmodifiableEntityError, + UpdateRoleDescriptionCommandOutput + >; + + /** + * @see {@link UpdateSAMLProviderCommand} + */ + readonly updateSAMLProvider: ( + args: UpdateSAMLProviderCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | InvalidInputError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + UpdateSAMLProviderCommandOutput + >; + + /** + * @see {@link UpdateServerCertificateCommand} + */ + readonly updateServerCertificate: ( + args: UpdateServerCertificateCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | EntityAlreadyExistsError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + UpdateServerCertificateCommandOutput + >; + + /** + * @see {@link UpdateServiceSpecificCredentialCommand} + */ + readonly updateServiceSpecificCredential: ( + args: UpdateServiceSpecificCredentialCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError, + UpdateServiceSpecificCredentialCommandOutput + >; + + /** + * @see {@link UpdateSigningCertificateCommand} + */ + readonly updateSigningCertificate: ( + args: UpdateSigningCertificateCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + UpdateSigningCertificateCommandOutput + >; + + /** + * @see {@link UpdateSSHPublicKeyCommand} + */ + readonly updateSSHPublicKey: ( + args: UpdateSSHPublicKeyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + SdkError | IAMServiceError | NoSuchEntityError, + UpdateSSHPublicKeyCommandOutput + >; + + /** + * @see {@link UpdateUserCommand} + */ + readonly updateUser: ( + args: UpdateUserCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | EntityAlreadyExistsError + | EntityTemporarilyUnmodifiableError + | LimitExceededError + | NoSuchEntityError + | ServiceFailureError, + UpdateUserCommandOutput + >; + + /** + * @see {@link UploadServerCertificateCommand} + */ + readonly uploadServerCertificate: ( + args: UploadServerCertificateCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | EntityAlreadyExistsError + | InvalidInputError + | KeyPairMismatchError + | LimitExceededError + | MalformedCertificateError + | ServiceFailureError, + UploadServerCertificateCommandOutput + >; + + /** + * @see {@link UploadSigningCertificateCommand} + */ + readonly uploadSigningCertificate: ( + args: UploadSigningCertificateCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | ConcurrentModificationError + | DuplicateCertificateError + | EntityAlreadyExistsError + | InvalidCertificateError + | LimitExceededError + | MalformedCertificateError + | NoSuchEntityError + | ServiceFailureError, + UploadSigningCertificateCommandOutput + >; + + /** + * @see {@link UploadSSHPublicKeyCommand} + */ + readonly uploadSSHPublicKey: ( + args: UploadSSHPublicKeyCommandInput, + options?: __HttpHandlerOptions, + ) => Effect.Effect< + never, + | SdkError + | IAMServiceError + | DuplicateSSHPublicKeyError + | InvalidPublicKeyError + | LimitExceededError + | NoSuchEntityError + | UnrecognizedPublicKeyEncodingError, + UploadSSHPublicKeyCommandOutput + >; +}; + +/** + * @since 1.0.0 + * @category tags + */ +export const IAMService = Context.Tag( + Symbol.for("@effect-aws/client-iam/IAMService"), +); + +/** + * @since 1.0.0 + * @category constructors + */ +export const makeIAMService = Effect.gen(function* (_) { + const client = yield* _(IAMClientInstance); + + return ReadonlyRecord.toEntries(commands).reduce((acc, [command]) => { + const CommandCtor = commands[command] as any; + const methodImpl = (args: any, options: any) => + Effect.tryPromise({ + try: () => client.send(new CommandCtor(args), options ?? {}), + catch: (e) => { + if (e instanceof IAMServiceException) { + const ServiceException = Data.tagged< + TaggedException + >(e.name); + + return ServiceException({ + ...e, + message: e.message, + stack: e.stack, + }); + } + if (e instanceof Error) { + return SdkError({ + ...e, + name: "SdkError", + message: e.message, + stack: e.stack, + }); + } + throw e; + }, + }); + const methodName = (command[0].toLowerCase() + command.slice(1)).replace( + /Command$/, + "", + ); + return { ...acc, [methodName]: methodImpl }; + }, {}) as IAMService; +}); + +/** + * @since 1.0.0 + * @category layers + */ +export const BaseIAMServiceLayer = Layer.effect(IAMService, makeIAMService); + +/** + * @since 1.0.0 + * @category layers + */ +export const IAMServiceLayer = BaseIAMServiceLayer.pipe( + Layer.provide(IAMClientInstanceLayer), +); + +/** + * @since 1.0.0 + * @category layers + */ +export const DefaultIAMServiceLayer = IAMServiceLayer.pipe( + Layer.provide(DefaultIAMClientConfigLayer), +); diff --git a/packages/client-iam/src/index.ts b/packages/client-iam/src/index.ts new file mode 100644 index 0000000..3721a83 --- /dev/null +++ b/packages/client-iam/src/index.ts @@ -0,0 +1,4 @@ +export * from "./Errors"; +export * from "./IAMClientInstance"; +export * from "./IAMClientInstanceConfig"; +export * from "./IAMService"; diff --git a/packages/client-iam/test/IAM.test.ts b/packages/client-iam/test/IAM.test.ts new file mode 100644 index 0000000..b8b1b25 --- /dev/null +++ b/packages/client-iam/test/IAM.test.ts @@ -0,0 +1,218 @@ +import { + CreateRoleCommand, + IAMClient, + CreateRoleCommandInput, +} from "@aws-sdk/client-iam"; +import { mockClient } from "aws-sdk-client-mock"; +import * as Effect from "effect/Effect"; +import * as Exit from "effect/Exit"; +import { pipe } from "effect/Function"; +import * as Layer from "effect/Layer"; +import { + BaseIAMServiceLayer, + DefaultIAMClientConfigLayer, + DefaultIAMServiceLayer, + IAMClientInstance, + IAMClientInstanceConfig, + IAMService, + IAMServiceLayer, + SdkError, +} from "../src"; + +import "aws-sdk-client-mock-jest"; + +const iamMock = mockClient(IAMClient); +const { createRole } = Effect.serviceFunctions(IAMService); + +describe("IAMClientImpl", () => { + it("default", async () => { + iamMock.reset().on(CreateRoleCommand).resolves({}); + + const args: CreateRoleCommandInput = { + RoleName: "test", + AssumeRolePolicyDocument: JSON.stringify({ + Version: "2012-10-17", + Statement: [ + { + Sid: "Statement1", + Effect: "Allow", + Principal: {}, + Action: "sts:AssumeRole", + }, + ], + }), + }; + + const program = createRole(args); + + const result = await pipe( + program, + Effect.provide(DefaultIAMServiceLayer), + Effect.runPromiseExit, + ); + + expect(result).toEqual(Exit.succeed({})); + expect(iamMock).toHaveReceivedCommandTimes(CreateRoleCommand, 1); + expect(iamMock).toHaveReceivedCommandWith(CreateRoleCommand, args); + }); + + it("configurable", async () => { + iamMock.reset().on(CreateRoleCommand).resolves({}); + + const args: CreateRoleCommandInput = { + RoleName: "test", + AssumeRolePolicyDocument: JSON.stringify({ + Version: "2012-10-17", + Statement: [ + { + Sid: "Statement1", + Effect: "Allow", + Principal: {}, + Action: "sts:AssumeRole", + }, + ], + }), + }; + + const program = createRole(args); + + const IAMClientConfigLayer = Layer.succeed(IAMClientInstanceConfig, { + region: "eu-central-1", + }); + const CustomIAMServiceLayer = IAMServiceLayer.pipe( + Layer.provide(IAMClientConfigLayer), + ); + + const result = await pipe( + program, + Effect.provide(CustomIAMServiceLayer), + Effect.runPromiseExit, + ); + + expect(result).toEqual(Exit.succeed({})); + expect(iamMock).toHaveReceivedCommandTimes(CreateRoleCommand, 1); + expect(iamMock).toHaveReceivedCommandWith(CreateRoleCommand, args); + }); + + it("base", async () => { + iamMock.reset().on(CreateRoleCommand).resolves({}); + + const args: CreateRoleCommandInput = { + RoleName: "test", + AssumeRolePolicyDocument: JSON.stringify({ + Version: "2012-10-17", + Statement: [ + { + Sid: "Statement1", + Effect: "Allow", + Principal: {}, + Action: "sts:AssumeRole", + }, + ], + }), + }; + + const program = createRole(args); + + const IAMClientInstanceLayer = Layer.succeed( + IAMClientInstance, + new IAMClient({ region: "eu-central-1" }), + ); + const CustomIAMServiceLayer = BaseIAMServiceLayer.pipe( + Layer.provide(IAMClientInstanceLayer), + ); + + const result = await pipe( + program, + Effect.provide(CustomIAMServiceLayer), + Effect.runPromiseExit, + ); + + expect(result).toEqual(Exit.succeed({})); + expect(iamMock).toHaveReceivedCommandTimes(CreateRoleCommand, 1); + expect(iamMock).toHaveReceivedCommandWith(CreateRoleCommand, args); + }); + + it("extended", async () => { + iamMock.reset().on(CreateRoleCommand).resolves({}); + + const args: CreateRoleCommandInput = { + RoleName: "test", + AssumeRolePolicyDocument: JSON.stringify({ + Version: "2012-10-17", + Statement: [ + { + Sid: "Statement1", + Effect: "Allow", + Principal: {}, + Action: "sts:AssumeRole", + }, + ], + }), + }; + + const program = createRole(args); + + const IAMClientInstanceLayer = Layer.effect( + IAMClientInstance, + Effect.map( + IAMClientInstanceConfig, + (config) => new IAMClient({ ...config, region: "eu-central-1" }), + ), + ); + const CustomIAMServiceLayer = BaseIAMServiceLayer.pipe( + Layer.provide(IAMClientInstanceLayer), + Layer.provide(DefaultIAMClientConfigLayer), + ); + + const result = await pipe( + program, + Effect.provide(CustomIAMServiceLayer), + Effect.runPromiseExit, + ); + + expect(result).toEqual(Exit.succeed({})); + expect(iamMock).toHaveReceivedCommandTimes(CreateRoleCommand, 1); + expect(iamMock).toHaveReceivedCommandWith(CreateRoleCommand, args); + }); + + it("fail", async () => { + iamMock.reset().on(CreateRoleCommand).rejects(new Error("test")); + + const args: CreateRoleCommandInput = { + RoleName: "test", + AssumeRolePolicyDocument: JSON.stringify({ + Version: "2012-10-17", + Statement: [ + { + Sid: "Statement1", + Effect: "Allow", + Principal: {}, + Action: "sts:AssumeRole", + }, + ], + }), + }; + + const program = createRole(args, { requestTimeout: 1000 }); + + const result = await pipe( + program, + Effect.provide(DefaultIAMServiceLayer), + Effect.runPromiseExit, + ); + + expect(result).toEqual( + Exit.fail( + SdkError({ + ...new Error("test"), + name: "SdkError", + message: "test", + stack: expect.any(String), + }), + ), + ); + expect(iamMock).toHaveReceivedCommandTimes(CreateRoleCommand, 1); + expect(iamMock).toHaveReceivedCommandWith(CreateRoleCommand, args); + }); +}); diff --git a/packages/client-iam/tsconfig.dev.json b/packages/client-iam/tsconfig.dev.json new file mode 100644 index 0000000..e14ae5a --- /dev/null +++ b/packages/client-iam/tsconfig.dev.json @@ -0,0 +1,38 @@ +// ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". +{ + "compilerOptions": { + "alwaysStrict": true, + "declaration": true, + "esModuleInterop": true, + "experimentalDecorators": true, + "inlineSourceMap": true, + "inlineSources": true, + "lib": [ + "es2019", + "dom" + ], + "module": "CommonJS", + "noEmitOnError": false, + "noFallthroughCasesInSwitch": true, + "noImplicitAny": true, + "noImplicitReturns": true, + "noImplicitThis": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "resolveJsonModule": true, + "strict": true, + "strictNullChecks": true, + "strictPropertyInitialization": true, + "stripInternal": true, + "target": "ES2019", + "moduleResolution": "node" + }, + "include": [ + ".projenrc.js", + "src/**/*.ts", + "test/**/*.ts" + ], + "exclude": [ + "node_modules" + ] +} diff --git a/packages/client-iam/tsconfig.esm.json b/packages/client-iam/tsconfig.esm.json new file mode 100644 index 0000000..1b04668 --- /dev/null +++ b/packages/client-iam/tsconfig.esm.json @@ -0,0 +1,10 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "outDir": "./lib/esm", + "module": "es6", + "resolveJsonModule": false, + "declaration": false + }, + "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\"." +} diff --git a/packages/client-iam/tsconfig.json b/packages/client-iam/tsconfig.json new file mode 100644 index 0000000..576047c --- /dev/null +++ b/packages/client-iam/tsconfig.json @@ -0,0 +1,36 @@ +// ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen". +{ + "compilerOptions": { + "rootDir": "src", + "outDir": "lib", + "alwaysStrict": true, + "declaration": true, + "esModuleInterop": true, + "experimentalDecorators": true, + "inlineSourceMap": true, + "inlineSources": true, + "lib": [ + "es2019", + "dom" + ], + "module": "CommonJS", + "noEmitOnError": false, + "noFallthroughCasesInSwitch": true, + "noImplicitAny": true, + "noImplicitReturns": true, + "noImplicitThis": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "resolveJsonModule": true, + "strict": true, + "strictNullChecks": true, + "strictPropertyInitialization": true, + "stripInternal": true, + "target": "ES2019", + "moduleResolution": "node" + }, + "include": [ + "src/**/*.ts" + ], + "exclude": [] +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 80d94d4..23ac47a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -276,6 +276,70 @@ importers: specifier: ^5.2.2 version: 5.2.2 + packages/client-iam: + dependencies: + '@aws-sdk/client-iam': + specifier: ^3 + version: 3.474.0 + '@aws-sdk/types': + specifier: ^3 + version: 3.468.0 + devDependencies: + '@types/jest': + specifier: ^29.5.5 + version: 29.5.5 + '@types/node': + specifier: ^16 + version: 16.18.52 + '@typescript-eslint/eslint-plugin': + specifier: ^6 + version: 6.7.0(@typescript-eslint/parser@6.7.0)(eslint@8.49.0)(typescript@5.2.2) + '@typescript-eslint/parser': + specifier: ^6 + version: 6.7.0(eslint@8.49.0)(typescript@5.2.2) + aws-sdk-client-mock: + specifier: ^3.0.0 + version: 3.0.0 + aws-sdk-client-mock-jest: + specifier: ^3.0.0 + version: 3.0.0(aws-sdk-client-mock@3.0.0) + effect: + specifier: 2.0.1 + version: 2.0.1 + eslint: + specifier: ^8 + version: 8.49.0 + eslint-config-prettier: + specifier: ^9.0.0 + version: 9.0.0(eslint@8.49.0) + eslint-import-resolver-node: + specifier: ^0.3.9 + version: 0.3.9 + eslint-import-resolver-typescript: + specifier: ^3.6.1 + version: 3.6.1(@typescript-eslint/parser@6.7.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.28.1)(eslint@8.49.0) + eslint-plugin-import: + specifier: ^2.28.1 + version: 2.28.1(@typescript-eslint/parser@6.7.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.49.0) + eslint-plugin-prettier: + specifier: ^5.0.0 + version: 5.0.0(eslint-config-prettier@9.0.0)(eslint@8.49.0)(prettier@3.0.3) + jest: + specifier: ^29.7.0 + version: 29.7.0(@types/node@16.18.52)(ts-node@10.9.1) + prettier: + specifier: ^3.0.3 + version: 3.0.3 + projen: + specifier: ^0.73.34 + version: 0.73.34 + ts-jest: + specifier: ^29.1.1 + version: 29.1.1(@babel/core@7.22.20)(jest@29.7.0)(typescript@5.2.2) + typescript: + specifier: ^5.2.2 + version: 5.2.2 + packages/client-lambda: dependencies: '@aws-sdk/client-lambda': @@ -850,29 +914,29 @@ packages: '@aws-sdk/util-endpoints': 3.470.0 '@aws-sdk/util-user-agent-browser': 3.468.0 '@aws-sdk/util-user-agent-node': 3.470.0 - '@smithy/config-resolver': 2.0.21 - '@smithy/fetch-http-handler': 2.3.1 - '@smithy/hash-node': 2.0.17 - '@smithy/invalid-dependency': 2.0.15 - '@smithy/middleware-content-length': 2.0.17 - '@smithy/middleware-endpoint': 2.2.3 - '@smithy/middleware-retry': 2.0.24 - '@smithy/middleware-serde': 2.0.15 - '@smithy/middleware-stack': 2.0.9 - '@smithy/node-config-provider': 2.1.8 - '@smithy/node-http-handler': 2.2.1 - '@smithy/protocol-http': 3.0.11 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 - '@smithy/url-parser': 2.0.15 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.22 - '@smithy/util-defaults-mode-node': 2.0.29 - '@smithy/util-endpoints': 1.0.7 - '@smithy/util-retry': 2.0.8 - '@smithy/util-utf8': 2.0.2 + '@smithy/config-resolver': 2.1.1 + '@smithy/fetch-http-handler': 2.4.1 + '@smithy/hash-node': 2.1.1 + '@smithy/invalid-dependency': 2.1.1 + '@smithy/middleware-content-length': 2.1.1 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/middleware-retry': 2.1.1 + '@smithy/middleware-serde': 2.1.1 + '@smithy/middleware-stack': 2.1.1 + '@smithy/node-config-provider': 2.2.1 + '@smithy/node-http-handler': 2.3.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/url-parser': 2.1.1 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.1 + '@smithy/util-defaults-mode-node': 2.1.1 + '@smithy/util-endpoints': 1.1.1 + '@smithy/util-retry': 2.1.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 transitivePeerDependencies: - aws-crt @@ -898,30 +962,30 @@ packages: '@aws-sdk/util-endpoints': 3.470.0 '@aws-sdk/util-user-agent-browser': 3.468.0 '@aws-sdk/util-user-agent-node': 3.470.0 - '@smithy/config-resolver': 2.0.21 - '@smithy/fetch-http-handler': 2.3.1 - '@smithy/hash-node': 2.0.17 - '@smithy/invalid-dependency': 2.0.15 - '@smithy/middleware-content-length': 2.0.17 - '@smithy/middleware-endpoint': 2.2.3 - '@smithy/middleware-retry': 2.0.24 - '@smithy/middleware-serde': 2.0.15 - '@smithy/middleware-stack': 2.0.9 - '@smithy/node-config-provider': 2.1.8 - '@smithy/node-http-handler': 2.2.1 - '@smithy/protocol-http': 3.0.11 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 - '@smithy/url-parser': 2.0.15 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.22 - '@smithy/util-defaults-mode-node': 2.0.29 - '@smithy/util-endpoints': 1.0.7 - '@smithy/util-retry': 2.0.8 - '@smithy/util-utf8': 2.0.2 - '@smithy/util-waiter': 2.0.15 + '@smithy/config-resolver': 2.1.1 + '@smithy/fetch-http-handler': 2.4.1 + '@smithy/hash-node': 2.1.1 + '@smithy/invalid-dependency': 2.1.1 + '@smithy/middleware-content-length': 2.1.1 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/middleware-retry': 2.1.1 + '@smithy/middleware-serde': 2.1.1 + '@smithy/middleware-stack': 2.1.1 + '@smithy/node-config-provider': 2.2.1 + '@smithy/node-http-handler': 2.3.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/url-parser': 2.1.1 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.1 + '@smithy/util-defaults-mode-node': 2.1.1 + '@smithy/util-endpoints': 1.1.1 + '@smithy/util-retry': 2.1.1 + '@smithy/util-utf8': 2.1.1 + '@smithy/util-waiter': 2.1.1 tslib: 2.6.2 uuid: 8.3.2 transitivePeerDependencies: @@ -948,29 +1012,78 @@ packages: '@aws-sdk/util-endpoints': 3.470.0 '@aws-sdk/util-user-agent-browser': 3.468.0 '@aws-sdk/util-user-agent-node': 3.470.0 - '@smithy/config-resolver': 2.0.21 - '@smithy/fetch-http-handler': 2.3.1 - '@smithy/hash-node': 2.0.17 - '@smithy/invalid-dependency': 2.0.15 - '@smithy/middleware-content-length': 2.0.17 - '@smithy/middleware-endpoint': 2.2.3 - '@smithy/middleware-retry': 2.0.24 - '@smithy/middleware-serde': 2.0.15 - '@smithy/middleware-stack': 2.0.9 - '@smithy/node-config-provider': 2.1.8 - '@smithy/node-http-handler': 2.2.1 - '@smithy/protocol-http': 3.0.11 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 - '@smithy/url-parser': 2.0.15 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.22 - '@smithy/util-defaults-mode-node': 2.0.29 - '@smithy/util-endpoints': 1.0.7 - '@smithy/util-retry': 2.0.8 - '@smithy/util-utf8': 2.0.2 + '@smithy/config-resolver': 2.1.1 + '@smithy/fetch-http-handler': 2.4.1 + '@smithy/hash-node': 2.1.1 + '@smithy/invalid-dependency': 2.1.1 + '@smithy/middleware-content-length': 2.1.1 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/middleware-retry': 2.1.1 + '@smithy/middleware-serde': 2.1.1 + '@smithy/middleware-stack': 2.1.1 + '@smithy/node-config-provider': 2.2.1 + '@smithy/node-http-handler': 2.3.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/url-parser': 2.1.1 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.1 + '@smithy/util-defaults-mode-node': 2.1.1 + '@smithy/util-endpoints': 1.1.1 + '@smithy/util-retry': 2.1.1 + '@smithy/util-utf8': 2.1.1 + tslib: 2.6.2 + transitivePeerDependencies: + - aws-crt + dev: false + + /@aws-sdk/client-iam@3.474.0: + resolution: {integrity: sha512-lSI7x5E89nCrgmYO2l8qygox/+G+yxF2740cSLLxfim2PnQNG0kpzMidFmepjlhXfY5JcqqLo55ldLzWq7NY5w==} + engines: {node: '>=14.0.0'} + dependencies: + '@aws-crypto/sha256-browser': 3.0.0 + '@aws-crypto/sha256-js': 3.0.0 + '@aws-sdk/client-sts': 3.474.0 + '@aws-sdk/core': 3.474.0 + '@aws-sdk/credential-provider-node': 3.474.0 + '@aws-sdk/middleware-host-header': 3.468.0 + '@aws-sdk/middleware-logger': 3.468.0 + '@aws-sdk/middleware-recursion-detection': 3.468.0 + '@aws-sdk/middleware-signing': 3.468.0 + '@aws-sdk/middleware-user-agent': 3.470.0 + '@aws-sdk/region-config-resolver': 3.470.0 + '@aws-sdk/types': 3.468.0 + '@aws-sdk/util-endpoints': 3.470.0 + '@aws-sdk/util-user-agent-browser': 3.468.0 + '@aws-sdk/util-user-agent-node': 3.470.0 + '@smithy/config-resolver': 2.1.1 + '@smithy/fetch-http-handler': 2.4.1 + '@smithy/hash-node': 2.1.1 + '@smithy/invalid-dependency': 2.1.1 + '@smithy/middleware-content-length': 2.1.1 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/middleware-retry': 2.1.1 + '@smithy/middleware-serde': 2.1.1 + '@smithy/middleware-stack': 2.1.1 + '@smithy/node-config-provider': 2.2.1 + '@smithy/node-http-handler': 2.3.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/url-parser': 2.1.1 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.1 + '@smithy/util-defaults-mode-node': 2.1.1 + '@smithy/util-endpoints': 1.1.1 + '@smithy/util-retry': 2.1.1 + '@smithy/util-utf8': 2.1.1 + '@smithy/util-waiter': 2.1.1 + fast-xml-parser: 4.2.5 tslib: 2.6.2 transitivePeerDependencies: - aws-crt @@ -995,34 +1108,34 @@ packages: '@aws-sdk/util-endpoints': 3.470.0 '@aws-sdk/util-user-agent-browser': 3.468.0 '@aws-sdk/util-user-agent-node': 3.470.0 - '@smithy/config-resolver': 2.0.21 + '@smithy/config-resolver': 2.1.1 '@smithy/eventstream-serde-browser': 2.0.15 '@smithy/eventstream-serde-config-resolver': 2.0.15 '@smithy/eventstream-serde-node': 2.0.15 - '@smithy/fetch-http-handler': 2.3.1 - '@smithy/hash-node': 2.0.17 - '@smithy/invalid-dependency': 2.0.15 - '@smithy/middleware-content-length': 2.0.17 - '@smithy/middleware-endpoint': 2.2.3 - '@smithy/middleware-retry': 2.0.24 - '@smithy/middleware-serde': 2.0.15 - '@smithy/middleware-stack': 2.0.9 - '@smithy/node-config-provider': 2.1.8 - '@smithy/node-http-handler': 2.2.1 - '@smithy/protocol-http': 3.0.11 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 - '@smithy/url-parser': 2.0.15 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.22 - '@smithy/util-defaults-mode-node': 2.0.29 - '@smithy/util-endpoints': 1.0.7 - '@smithy/util-retry': 2.0.8 - '@smithy/util-stream': 2.0.23 - '@smithy/util-utf8': 2.0.2 - '@smithy/util-waiter': 2.0.15 + '@smithy/fetch-http-handler': 2.4.1 + '@smithy/hash-node': 2.1.1 + '@smithy/invalid-dependency': 2.1.1 + '@smithy/middleware-content-length': 2.1.1 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/middleware-retry': 2.1.1 + '@smithy/middleware-serde': 2.1.1 + '@smithy/middleware-stack': 2.1.1 + '@smithy/node-config-provider': 2.2.1 + '@smithy/node-http-handler': 2.3.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/url-parser': 2.1.1 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.1 + '@smithy/util-defaults-mode-node': 2.1.1 + '@smithy/util-endpoints': 1.1.1 + '@smithy/util-retry': 2.1.1 + '@smithy/util-stream': 2.1.1 + '@smithy/util-utf8': 2.1.1 + '@smithy/util-waiter': 2.1.1 tslib: 2.6.2 transitivePeerDependencies: - aws-crt @@ -1056,37 +1169,37 @@ packages: '@aws-sdk/util-user-agent-browser': 3.468.0 '@aws-sdk/util-user-agent-node': 3.470.0 '@aws-sdk/xml-builder': 3.472.0 - '@smithy/config-resolver': 2.0.21 + '@smithy/config-resolver': 2.1.1 '@smithy/eventstream-serde-browser': 2.0.15 '@smithy/eventstream-serde-config-resolver': 2.0.15 '@smithy/eventstream-serde-node': 2.0.15 - '@smithy/fetch-http-handler': 2.3.1 + '@smithy/fetch-http-handler': 2.4.1 '@smithy/hash-blob-browser': 2.0.16 - '@smithy/hash-node': 2.0.17 + '@smithy/hash-node': 2.1.1 '@smithy/hash-stream-node': 2.0.17 - '@smithy/invalid-dependency': 2.0.15 + '@smithy/invalid-dependency': 2.1.1 '@smithy/md5-js': 2.0.17 - '@smithy/middleware-content-length': 2.0.17 - '@smithy/middleware-endpoint': 2.2.3 - '@smithy/middleware-retry': 2.0.24 - '@smithy/middleware-serde': 2.0.15 - '@smithy/middleware-stack': 2.0.9 - '@smithy/node-config-provider': 2.1.8 - '@smithy/node-http-handler': 2.2.1 - '@smithy/protocol-http': 3.0.11 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 - '@smithy/url-parser': 2.0.15 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.22 - '@smithy/util-defaults-mode-node': 2.0.29 - '@smithy/util-endpoints': 1.0.7 - '@smithy/util-retry': 2.0.8 - '@smithy/util-stream': 2.0.23 - '@smithy/util-utf8': 2.0.2 - '@smithy/util-waiter': 2.0.15 + '@smithy/middleware-content-length': 2.1.1 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/middleware-retry': 2.1.1 + '@smithy/middleware-serde': 2.1.1 + '@smithy/middleware-stack': 2.1.1 + '@smithy/node-config-provider': 2.2.1 + '@smithy/node-http-handler': 2.3.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/url-parser': 2.1.1 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.1 + '@smithy/util-defaults-mode-node': 2.1.1 + '@smithy/util-endpoints': 1.1.1 + '@smithy/util-retry': 2.1.1 + '@smithy/util-stream': 2.1.1 + '@smithy/util-utf8': 2.1.1 + '@smithy/util-waiter': 2.1.1 fast-xml-parser: 4.2.5 tslib: 2.6.2 transitivePeerDependencies: @@ -1112,29 +1225,29 @@ packages: '@aws-sdk/util-endpoints': 3.470.0 '@aws-sdk/util-user-agent-browser': 3.468.0 '@aws-sdk/util-user-agent-node': 3.470.0 - '@smithy/config-resolver': 2.0.21 - '@smithy/fetch-http-handler': 2.3.1 - '@smithy/hash-node': 2.0.17 - '@smithy/invalid-dependency': 2.0.15 - '@smithy/middleware-content-length': 2.0.17 - '@smithy/middleware-endpoint': 2.2.3 - '@smithy/middleware-retry': 2.0.24 - '@smithy/middleware-serde': 2.0.15 - '@smithy/middleware-stack': 2.0.9 - '@smithy/node-config-provider': 2.1.8 - '@smithy/node-http-handler': 2.2.1 - '@smithy/protocol-http': 3.0.11 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 - '@smithy/url-parser': 2.0.15 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.22 - '@smithy/util-defaults-mode-node': 2.0.29 - '@smithy/util-endpoints': 1.0.7 - '@smithy/util-retry': 2.0.8 - '@smithy/util-utf8': 2.0.2 + '@smithy/config-resolver': 2.1.1 + '@smithy/fetch-http-handler': 2.4.1 + '@smithy/hash-node': 2.1.1 + '@smithy/invalid-dependency': 2.1.1 + '@smithy/middleware-content-length': 2.1.1 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/middleware-retry': 2.1.1 + '@smithy/middleware-serde': 2.1.1 + '@smithy/middleware-stack': 2.1.1 + '@smithy/node-config-provider': 2.2.1 + '@smithy/node-http-handler': 2.3.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/url-parser': 2.1.1 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.1 + '@smithy/util-defaults-mode-node': 2.1.1 + '@smithy/util-endpoints': 1.1.1 + '@smithy/util-retry': 2.1.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 uuid: 8.3.2 transitivePeerDependencies: @@ -1160,29 +1273,29 @@ packages: '@aws-sdk/util-endpoints': 3.470.0 '@aws-sdk/util-user-agent-browser': 3.468.0 '@aws-sdk/util-user-agent-node': 3.470.0 - '@smithy/config-resolver': 2.0.21 - '@smithy/fetch-http-handler': 2.3.1 - '@smithy/hash-node': 2.0.17 - '@smithy/invalid-dependency': 2.0.15 - '@smithy/middleware-content-length': 2.0.17 - '@smithy/middleware-endpoint': 2.2.3 - '@smithy/middleware-retry': 2.0.24 - '@smithy/middleware-serde': 2.0.15 - '@smithy/middleware-stack': 2.0.9 - '@smithy/node-config-provider': 2.1.8 - '@smithy/node-http-handler': 2.2.1 - '@smithy/protocol-http': 3.0.11 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 - '@smithy/url-parser': 2.0.15 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.22 - '@smithy/util-defaults-mode-node': 2.0.29 - '@smithy/util-endpoints': 1.0.7 - '@smithy/util-retry': 2.0.8 - '@smithy/util-utf8': 2.0.2 + '@smithy/config-resolver': 2.1.1 + '@smithy/fetch-http-handler': 2.4.1 + '@smithy/hash-node': 2.1.1 + '@smithy/invalid-dependency': 2.1.1 + '@smithy/middleware-content-length': 2.1.1 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/middleware-retry': 2.1.1 + '@smithy/middleware-serde': 2.1.1 + '@smithy/middleware-stack': 2.1.1 + '@smithy/node-config-provider': 2.2.1 + '@smithy/node-http-handler': 2.3.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/url-parser': 2.1.1 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.1 + '@smithy/util-defaults-mode-node': 2.1.1 + '@smithy/util-endpoints': 1.1.1 + '@smithy/util-retry': 2.1.1 + '@smithy/util-utf8': 2.1.1 fast-xml-parser: 4.2.5 tslib: 2.6.2 transitivePeerDependencies: @@ -1209,30 +1322,30 @@ packages: '@aws-sdk/util-endpoints': 3.470.0 '@aws-sdk/util-user-agent-browser': 3.468.0 '@aws-sdk/util-user-agent-node': 3.470.0 - '@smithy/config-resolver': 2.0.21 - '@smithy/fetch-http-handler': 2.3.1 - '@smithy/hash-node': 2.0.17 - '@smithy/invalid-dependency': 2.0.15 + '@smithy/config-resolver': 2.1.1 + '@smithy/fetch-http-handler': 2.4.1 + '@smithy/hash-node': 2.1.1 + '@smithy/invalid-dependency': 2.1.1 '@smithy/md5-js': 2.0.17 - '@smithy/middleware-content-length': 2.0.17 - '@smithy/middleware-endpoint': 2.2.3 - '@smithy/middleware-retry': 2.0.24 - '@smithy/middleware-serde': 2.0.15 - '@smithy/middleware-stack': 2.0.9 - '@smithy/node-config-provider': 2.1.8 - '@smithy/node-http-handler': 2.2.1 - '@smithy/protocol-http': 3.0.11 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 - '@smithy/url-parser': 2.0.15 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.22 - '@smithy/util-defaults-mode-node': 2.0.29 - '@smithy/util-endpoints': 1.0.7 - '@smithy/util-retry': 2.0.8 - '@smithy/util-utf8': 2.0.2 + '@smithy/middleware-content-length': 2.1.1 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/middleware-retry': 2.1.1 + '@smithy/middleware-serde': 2.1.1 + '@smithy/middleware-stack': 2.1.1 + '@smithy/node-config-provider': 2.2.1 + '@smithy/node-http-handler': 2.3.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/url-parser': 2.1.1 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.1 + '@smithy/util-defaults-mode-node': 2.1.1 + '@smithy/util-endpoints': 1.1.1 + '@smithy/util-retry': 2.1.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 transitivePeerDependencies: - aws-crt @@ -1254,29 +1367,29 @@ packages: '@aws-sdk/util-endpoints': 3.470.0 '@aws-sdk/util-user-agent-browser': 3.468.0 '@aws-sdk/util-user-agent-node': 3.470.0 - '@smithy/config-resolver': 2.0.21 - '@smithy/fetch-http-handler': 2.3.1 - '@smithy/hash-node': 2.0.17 - '@smithy/invalid-dependency': 2.0.15 - '@smithy/middleware-content-length': 2.0.17 - '@smithy/middleware-endpoint': 2.2.3 - '@smithy/middleware-retry': 2.0.24 - '@smithy/middleware-serde': 2.0.15 - '@smithy/middleware-stack': 2.0.9 - '@smithy/node-config-provider': 2.1.8 - '@smithy/node-http-handler': 2.2.1 - '@smithy/protocol-http': 3.0.11 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 - '@smithy/url-parser': 2.0.15 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.22 - '@smithy/util-defaults-mode-node': 2.0.29 - '@smithy/util-endpoints': 1.0.7 - '@smithy/util-retry': 2.0.8 - '@smithy/util-utf8': 2.0.2 + '@smithy/config-resolver': 2.1.1 + '@smithy/fetch-http-handler': 2.4.1 + '@smithy/hash-node': 2.1.1 + '@smithy/invalid-dependency': 2.1.1 + '@smithy/middleware-content-length': 2.1.1 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/middleware-retry': 2.1.1 + '@smithy/middleware-serde': 2.1.1 + '@smithy/middleware-stack': 2.1.1 + '@smithy/node-config-provider': 2.2.1 + '@smithy/node-http-handler': 2.3.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/url-parser': 2.1.1 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.1 + '@smithy/util-defaults-mode-node': 2.1.1 + '@smithy/util-endpoints': 1.1.1 + '@smithy/util-retry': 2.1.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 transitivePeerDependencies: - aws-crt @@ -1299,31 +1412,31 @@ packages: '@aws-sdk/util-endpoints': 3.470.0 '@aws-sdk/util-user-agent-browser': 3.468.0 '@aws-sdk/util-user-agent-node': 3.470.0 - '@smithy/config-resolver': 2.0.21 + '@smithy/config-resolver': 2.1.1 '@smithy/core': 1.1.0 - '@smithy/fetch-http-handler': 2.3.1 - '@smithy/hash-node': 2.0.17 - '@smithy/invalid-dependency': 2.0.15 - '@smithy/middleware-content-length': 2.0.17 - '@smithy/middleware-endpoint': 2.2.3 - '@smithy/middleware-retry': 2.0.24 - '@smithy/middleware-serde': 2.0.15 - '@smithy/middleware-stack': 2.0.9 - '@smithy/node-config-provider': 2.1.8 - '@smithy/node-http-handler': 2.2.1 - '@smithy/protocol-http': 3.0.11 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 - '@smithy/url-parser': 2.0.15 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.22 - '@smithy/util-defaults-mode-node': 2.0.29 - '@smithy/util-endpoints': 1.0.7 - '@smithy/util-middleware': 2.0.8 - '@smithy/util-retry': 2.0.8 - '@smithy/util-utf8': 2.0.2 + '@smithy/fetch-http-handler': 2.4.1 + '@smithy/hash-node': 2.1.1 + '@smithy/invalid-dependency': 2.1.1 + '@smithy/middleware-content-length': 2.1.1 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/middleware-retry': 2.1.1 + '@smithy/middleware-serde': 2.1.1 + '@smithy/middleware-stack': 2.1.1 + '@smithy/node-config-provider': 2.2.1 + '@smithy/node-http-handler': 2.3.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/url-parser': 2.1.1 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.1 + '@smithy/util-defaults-mode-node': 2.1.1 + '@smithy/util-endpoints': 1.1.1 + '@smithy/util-middleware': 2.1.1 + '@smithy/util-retry': 2.1.1 + '@smithy/util-utf8': 2.1.1 fast-xml-parser: 4.2.5 tslib: 2.6.2 transitivePeerDependencies: @@ -1335,10 +1448,10 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@smithy/core': 1.1.0 - '@smithy/protocol-http': 3.0.11 - '@smithy/signature-v4': 2.0.18 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 + '@smithy/protocol-http': 3.1.1 + '@smithy/signature-v4': 2.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1347,8 +1460,8 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/property-provider': 2.0.16 - '@smithy/types': 2.7.0 + '@smithy/property-provider': 2.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1361,10 +1474,10 @@ packages: '@aws-sdk/credential-provider-sso': 3.474.0 '@aws-sdk/credential-provider-web-identity': 3.468.0 '@aws-sdk/types': 3.468.0 - '@smithy/credential-provider-imds': 2.1.4 - '@smithy/property-provider': 2.0.16 - '@smithy/shared-ini-file-loader': 2.2.7 - '@smithy/types': 2.7.0 + '@smithy/credential-provider-imds': 2.2.1 + '@smithy/property-provider': 2.1.1 + '@smithy/shared-ini-file-loader': 2.3.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 transitivePeerDependencies: - aws-crt @@ -1380,10 +1493,10 @@ packages: '@aws-sdk/credential-provider-sso': 3.474.0 '@aws-sdk/credential-provider-web-identity': 3.468.0 '@aws-sdk/types': 3.468.0 - '@smithy/credential-provider-imds': 2.1.4 - '@smithy/property-provider': 2.0.16 - '@smithy/shared-ini-file-loader': 2.2.7 - '@smithy/types': 2.7.0 + '@smithy/credential-provider-imds': 2.2.1 + '@smithy/property-provider': 2.1.1 + '@smithy/shared-ini-file-loader': 2.3.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 transitivePeerDependencies: - aws-crt @@ -1394,9 +1507,9 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/property-provider': 2.0.16 - '@smithy/shared-ini-file-loader': 2.2.7 - '@smithy/types': 2.7.0 + '@smithy/property-provider': 2.1.1 + '@smithy/shared-ini-file-loader': 2.3.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1407,9 +1520,9 @@ packages: '@aws-sdk/client-sso': 3.474.0 '@aws-sdk/token-providers': 3.470.0 '@aws-sdk/types': 3.468.0 - '@smithy/property-provider': 2.0.16 - '@smithy/shared-ini-file-loader': 2.2.7 - '@smithy/types': 2.7.0 + '@smithy/property-provider': 2.1.1 + '@smithy/shared-ini-file-loader': 2.3.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 transitivePeerDependencies: - aws-crt @@ -1420,8 +1533,8 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/property-provider': 2.0.16 - '@smithy/types': 2.7.0 + '@smithy/property-provider': 2.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1439,10 +1552,10 @@ packages: dependencies: '@aws-sdk/types': 3.468.0 '@aws-sdk/util-arn-parser': 3.465.0 - '@smithy/node-config-provider': 2.1.8 - '@smithy/protocol-http': 3.0.11 - '@smithy/types': 2.7.0 - '@smithy/util-config-provider': 2.0.0 + '@smithy/node-config-provider': 2.2.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/types': 2.9.1 + '@smithy/util-config-provider': 2.2.1 tslib: 2.6.2 dev: false @@ -1452,9 +1565,9 @@ packages: dependencies: '@aws-sdk/endpoint-cache': 3.465.0 '@aws-sdk/types': 3.468.0 - '@smithy/node-config-provider': 2.1.8 - '@smithy/protocol-http': 3.0.11 - '@smithy/types': 2.7.0 + '@smithy/node-config-provider': 2.2.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1463,8 +1576,8 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/protocol-http': 3.0.11 - '@smithy/types': 2.7.0 + '@smithy/protocol-http': 3.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1475,10 +1588,10 @@ packages: '@aws-crypto/crc32': 3.0.0 '@aws-crypto/crc32c': 3.0.0 '@aws-sdk/types': 3.468.0 - '@smithy/is-array-buffer': 2.0.0 - '@smithy/protocol-http': 3.0.11 - '@smithy/types': 2.7.0 - '@smithy/util-utf8': 2.0.2 + '@smithy/is-array-buffer': 2.1.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/types': 2.9.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 dev: false @@ -1487,8 +1600,8 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/protocol-http': 3.0.11 - '@smithy/types': 2.7.0 + '@smithy/protocol-http': 3.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1497,7 +1610,7 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1506,7 +1619,7 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1515,8 +1628,8 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/protocol-http': 3.0.11 - '@smithy/types': 2.7.0 + '@smithy/protocol-http': 3.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1526,12 +1639,12 @@ packages: dependencies: '@aws-sdk/types': 3.468.0 '@aws-sdk/util-arn-parser': 3.465.0 - '@smithy/node-config-provider': 2.1.8 - '@smithy/protocol-http': 3.0.11 - '@smithy/signature-v4': 2.0.18 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 - '@smithy/util-config-provider': 2.0.0 + '@smithy/node-config-provider': 2.2.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/signature-v4': 2.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/util-config-provider': 2.2.1 tslib: 2.6.2 dev: false @@ -1540,9 +1653,9 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/types': 2.7.0 - '@smithy/util-hex-encoding': 2.0.0 - '@smithy/util-utf8': 2.0.2 + '@smithy/types': 2.9.1 + '@smithy/util-hex-encoding': 2.1.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 dev: false @@ -1551,11 +1664,11 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/property-provider': 2.0.16 - '@smithy/protocol-http': 3.0.11 - '@smithy/signature-v4': 2.0.18 - '@smithy/types': 2.7.0 - '@smithy/util-middleware': 2.0.8 + '@smithy/property-provider': 2.1.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/signature-v4': 2.1.1 + '@smithy/types': 2.9.1 + '@smithy/util-middleware': 2.1.1 tslib: 2.6.2 dev: false @@ -1564,7 +1677,7 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1574,8 +1687,8 @@ packages: dependencies: '@aws-sdk/types': 3.468.0 '@aws-sdk/util-endpoints': 3.470.0 - '@smithy/protocol-http': 3.0.11 - '@smithy/types': 2.7.0 + '@smithy/protocol-http': 3.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1583,10 +1696,10 @@ packages: resolution: {integrity: sha512-C1o1J06iIw8cyAAOvHqT4Bbqf+PgQ/RDlSyjt2gFfP2OovDpc2o2S90dE8f8iZdSGpg70N5MikT1DBhW9NbhtQ==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/node-config-provider': 2.1.8 - '@smithy/types': 2.7.0 - '@smithy/util-config-provider': 2.0.0 - '@smithy/util-middleware': 2.0.8 + '@smithy/node-config-provider': 2.2.1 + '@smithy/types': 2.9.1 + '@smithy/util-config-provider': 2.2.1 + '@smithy/util-middleware': 2.1.1 tslib: 2.6.2 dev: false @@ -1597,10 +1710,10 @@ packages: '@aws-sdk/signature-v4-multi-region': 3.474.0 '@aws-sdk/types': 3.468.0 '@aws-sdk/util-format-url': 3.468.0 - '@smithy/middleware-endpoint': 2.2.3 - '@smithy/protocol-http': 3.0.11 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1610,9 +1723,9 @@ packages: dependencies: '@aws-sdk/middleware-sdk-s3': 3.474.0 '@aws-sdk/types': 3.468.0 - '@smithy/protocol-http': 3.0.11 - '@smithy/signature-v4': 2.0.18 - '@smithy/types': 2.7.0 + '@smithy/protocol-http': 3.1.1 + '@smithy/signature-v4': 2.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1631,31 +1744,31 @@ packages: '@aws-sdk/util-endpoints': 3.470.0 '@aws-sdk/util-user-agent-browser': 3.468.0 '@aws-sdk/util-user-agent-node': 3.470.0 - '@smithy/config-resolver': 2.0.21 - '@smithy/fetch-http-handler': 2.3.1 - '@smithy/hash-node': 2.0.17 - '@smithy/invalid-dependency': 2.0.15 - '@smithy/middleware-content-length': 2.0.17 - '@smithy/middleware-endpoint': 2.2.3 - '@smithy/middleware-retry': 2.0.24 - '@smithy/middleware-serde': 2.0.15 - '@smithy/middleware-stack': 2.0.9 - '@smithy/node-config-provider': 2.1.8 - '@smithy/node-http-handler': 2.2.1 - '@smithy/property-provider': 2.0.16 - '@smithy/protocol-http': 3.0.11 - '@smithy/shared-ini-file-loader': 2.2.7 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 - '@smithy/url-parser': 2.0.15 - '@smithy/util-base64': 2.0.1 - '@smithy/util-body-length-browser': 2.0.1 - '@smithy/util-body-length-node': 2.1.0 - '@smithy/util-defaults-mode-browser': 2.0.22 - '@smithy/util-defaults-mode-node': 2.0.29 - '@smithy/util-endpoints': 1.0.7 - '@smithy/util-retry': 2.0.8 - '@smithy/util-utf8': 2.0.2 + '@smithy/config-resolver': 2.1.1 + '@smithy/fetch-http-handler': 2.4.1 + '@smithy/hash-node': 2.1.1 + '@smithy/invalid-dependency': 2.1.1 + '@smithy/middleware-content-length': 2.1.1 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/middleware-retry': 2.1.1 + '@smithy/middleware-serde': 2.1.1 + '@smithy/middleware-stack': 2.1.1 + '@smithy/node-config-provider': 2.2.1 + '@smithy/node-http-handler': 2.3.1 + '@smithy/property-provider': 2.1.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/shared-ini-file-loader': 2.3.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/url-parser': 2.1.1 + '@smithy/util-base64': 2.1.1 + '@smithy/util-body-length-browser': 2.1.1 + '@smithy/util-body-length-node': 2.2.1 + '@smithy/util-defaults-mode-browser': 2.1.1 + '@smithy/util-defaults-mode-node': 2.1.1 + '@smithy/util-endpoints': 1.1.1 + '@smithy/util-retry': 2.1.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 transitivePeerDependencies: - aws-crt @@ -1665,7 +1778,7 @@ packages: resolution: {integrity: sha512-rx/9uHI4inRbp2tw3Y4Ih4PNZkVj32h7WneSg3MVgVjAoVD5Zti9KhS5hkvsBxfgmQmg0AQbE+b1sy5WGAgntA==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1681,7 +1794,7 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/util-endpoints': 1.0.7 + '@smithy/util-endpoints': 1.1.1 tslib: 2.6.2 dev: false @@ -1690,8 +1803,8 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/querystring-builder': 2.0.15 - '@smithy/types': 2.7.0 + '@smithy/querystring-builder': 2.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1706,7 +1819,7 @@ packages: resolution: {integrity: sha512-OJyhWWsDEizR3L+dCgMXSUmaCywkiZ7HSbnQytbeKGwokIhD69HTiJcibF/sgcM5gk4k3Mq3puUhGnEZ46GIig==} dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 bowser: 2.11.0 tslib: 2.6.2 dev: false @@ -1721,8 +1834,8 @@ packages: optional: true dependencies: '@aws-sdk/types': 3.468.0 - '@smithy/node-config-provider': 2.1.8 - '@smithy/types': 2.7.0 + '@smithy/node-config-provider': 2.2.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -1736,7 +1849,7 @@ packages: resolution: {integrity: sha512-PwjVxz1hr9up8QkddabuScPZ/d5aDHgvHYgK4acHYzltXL4wngfvimi5ZqXTzVWF2QANxHmWnHUr45QJX71oJQ==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -2121,9 +2234,6 @@ packages: to-fast-properties: 2.0.0 dev: true - /@balena/dockerignore@1.0.2: - resolution: {integrity: sha512-wMue2Sy4GAVTk6Ic4tJVcnfdau+gx2EnG7S+uAEe+TWJFqE4YoWN4/H8MSLj4eYJKxGg26lZwboEniNiNwZQ6Q==} - /@bcoe/v8-coverage@0.2.3: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} dev: true @@ -2435,10 +2545,6 @@ packages: resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} dev: true - /@iarna/toml@2.2.5: - resolution: {integrity: sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==} - dev: true - /@isaacs/cliui@8.0.2: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} @@ -2934,35 +3040,6 @@ packages: dev: true optional: true - /@oozcitak/dom@1.15.10: - resolution: {integrity: sha512-0JT29/LaxVgRcGKvHmSrUTEvZ8BXvZhGl2LASRUgHqDTC1M5g1pLmVv56IYNyt3bG2CUjDkc67wnyZC14pbQrQ==} - engines: {node: '>=8.0'} - dependencies: - '@oozcitak/infra': 1.0.8 - '@oozcitak/url': 1.0.4 - '@oozcitak/util': 8.3.8 - dev: true - - /@oozcitak/infra@1.0.8: - resolution: {integrity: sha512-JRAUc9VR6IGHOL7OGF+yrvs0LO8SlqGnPAMqyzOuFZPSZSXI7Xf2O9+awQPSMXgIWGtgUf/dA6Hs6X6ySEaWTg==} - engines: {node: '>=6.0'} - dependencies: - '@oozcitak/util': 8.3.8 - dev: true - - /@oozcitak/url@1.0.4: - resolution: {integrity: sha512-kDcD8y+y3FCSOvnBI6HJgl00viO/nGbQoCINmQ0h98OhnGITrWR3bOGfwYCthgcrV8AnTJz8MzslTQbC3SOAmw==} - engines: {node: '>=8.0'} - dependencies: - '@oozcitak/infra': 1.0.8 - '@oozcitak/util': 8.3.8 - dev: true - - /@oozcitak/util@8.3.8: - resolution: {integrity: sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ==} - engines: {node: '>=8.0'} - dev: true - /@parcel/watcher@2.0.4: resolution: {integrity: sha512-cTDi+FUDBIUOBKEtj+nhiJ71AZVlkAsQFuGQTun5tV9mwQBQgZvhCzG+URPQc8myeN32yRVZEfVAPCs1RW+Jvg==} engines: {node: '>= 10.0.0'} @@ -3100,18 +3177,18 @@ packages: resolution: {integrity: sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==} dev: true - /@smithy/abort-controller@2.0.15: - resolution: {integrity: sha512-JkS36PIS3/UCbq/MaozzV7jECeL+BTt4R75bwY8i+4RASys4xOyUS1HsRyUNSqUXFP4QyCz5aNnh3ltuaxv+pw==} + /@smithy/abort-controller@2.1.1: + resolution: {integrity: sha512-1+qdrUqLhaALYL0iOcN43EP6yAXXQ2wWZ6taf4S2pNGowmOc5gx+iMQv+E42JizNJjB0+gEadOXeV1Bf7JWL1Q==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false /@smithy/chunked-blob-reader-native@2.0.1: resolution: {integrity: sha512-N2oCZRglhWKm7iMBu7S6wDzXirjAofi7tAd26cxmgibRYOBS4D3hGfmkwCpHdASZzwZDD8rluh0Rcqw1JeZDRw==} dependencies: - '@smithy/util-base64': 2.0.1 + '@smithy/util-base64': 2.1.1 tslib: 2.6.2 dev: false @@ -3121,14 +3198,14 @@ packages: tslib: 2.6.2 dev: false - /@smithy/config-resolver@2.0.21: - resolution: {integrity: sha512-rlLIGT+BeqjnA6C2FWumPRJS1UW07iU5ZxDHtFuyam4W65gIaOFMjkB90ofKCIh+0mLVQrQFrl/VLtQT/6FWTA==} + /@smithy/config-resolver@2.1.1: + resolution: {integrity: sha512-lxfLDpZm+AWAHPFZps5JfDoO9Ux1764fOgvRUBpHIO8HWHcSN1dkgsago1qLRVgm1BZ8RCm8cgv99QvtaOWIhw==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/node-config-provider': 2.1.8 - '@smithy/types': 2.7.0 - '@smithy/util-config-provider': 2.0.0 - '@smithy/util-middleware': 2.0.8 + '@smithy/node-config-provider': 2.2.1 + '@smithy/types': 2.9.1 + '@smithy/util-config-provider': 2.2.1 + '@smithy/util-middleware': 2.1.1 tslib: 2.6.2 dev: false @@ -3136,32 +3213,32 @@ packages: resolution: {integrity: sha512-k1zaT5S4K0bG67Q5TmPZ6PdWNQBTMQErChuDvTi+NTx21kKDt+/4YRidsK6nDbHizN6fn1bafUxrougZdKrpxA==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/middleware-endpoint': 2.2.3 - '@smithy/middleware-retry': 2.0.24 - '@smithy/middleware-serde': 2.0.15 - '@smithy/protocol-http': 3.0.11 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/middleware-retry': 2.1.1 + '@smithy/middleware-serde': 2.1.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/credential-provider-imds@2.1.4: - resolution: {integrity: sha512-cwPJN1fa1YOQzhBlTXRavABEYRRchci1X79QRwzaNLySnIMJfztyv1Zkst0iZPLMnpn8+CnHu3wOHS11J5Dr3A==} + /@smithy/credential-provider-imds@2.2.1: + resolution: {integrity: sha512-7XHjZUxmZYnONheVQL7j5zvZXga+EWNgwEAP6OPZTi7l8J4JTeNh9aIOfE5fKHZ/ee2IeNOh54ZrSna+Vc6TFA==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/node-config-provider': 2.1.8 - '@smithy/property-provider': 2.0.16 - '@smithy/types': 2.7.0 - '@smithy/url-parser': 2.0.15 + '@smithy/node-config-provider': 2.2.1 + '@smithy/property-provider': 2.1.1 + '@smithy/types': 2.9.1 + '@smithy/url-parser': 2.1.1 tslib: 2.6.2 dev: false - /@smithy/eventstream-codec@2.0.15: - resolution: {integrity: sha512-crjvz3j1gGPwA0us6cwS7+5gAn35CTmqu/oIxVbYJo2Qm/sGAye6zGJnMDk3BKhWZw5kcU1G4MxciTkuBpOZPg==} + /@smithy/eventstream-codec@2.1.1: + resolution: {integrity: sha512-E8KYBxBIuU4c+zrpR22VsVrOPoEDzk35bQR3E+xm4k6Pa6JqzkDOdMyf9Atac5GPNKHJBdVaQ4JtjdWX2rl/nw==} dependencies: '@aws-crypto/crc32': 3.0.0 - '@smithy/types': 2.7.0 - '@smithy/util-hex-encoding': 2.0.0 + '@smithy/types': 2.9.1 + '@smithy/util-hex-encoding': 2.1.1 tslib: 2.6.2 dev: false @@ -3170,7 +3247,7 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@smithy/eventstream-serde-universal': 2.0.15 - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -3178,7 +3255,7 @@ packages: resolution: {integrity: sha512-o65d2LRjgCbWYH+VVNlWXtmsI231SO99ZTOL4UuIPa6WTjbSHWtlXvUcJG9libhEKWmEV9DIUiH2IqyPWi7ubA==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -3187,7 +3264,7 @@ packages: engines: {node: '>=14.0.0'} dependencies: '@smithy/eventstream-serde-universal': 2.0.15 - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -3195,18 +3272,18 @@ packages: resolution: {integrity: sha512-dP8AQp/pXlWBjvL0TaPBJC3rM0GoYv7O0Uim8d/7UKZ2Wo13bFI3/BhQfY/1DeiP1m23iCHFNFtOQxfQNBB8rQ==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/eventstream-codec': 2.0.15 - '@smithy/types': 2.7.0 + '@smithy/eventstream-codec': 2.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/fetch-http-handler@2.3.1: - resolution: {integrity: sha512-6MNk16fqb8EwcYY8O8WxB3ArFkLZ2XppsSNo1h7SQcFdDDwIumiJeO6wRzm7iB68xvsOQzsdQKbdtTieS3hfSQ==} + /@smithy/fetch-http-handler@2.4.1: + resolution: {integrity: sha512-VYGLinPsFqH68lxfRhjQaSkjXM7JysUOJDTNjHBuN/ykyRb2f1gyavN9+VhhPTWCy32L4yZ2fdhpCs/nStEicg==} dependencies: - '@smithy/protocol-http': 3.0.11 - '@smithy/querystring-builder': 2.0.15 - '@smithy/types': 2.7.0 - '@smithy/util-base64': 2.0.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/querystring-builder': 2.1.1 + '@smithy/types': 2.9.1 + '@smithy/util-base64': 2.1.1 tslib: 2.6.2 dev: false @@ -3215,17 +3292,17 @@ packages: dependencies: '@smithy/chunked-blob-reader': 2.0.0 '@smithy/chunked-blob-reader-native': 2.0.1 - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/hash-node@2.0.17: - resolution: {integrity: sha512-Il6WuBcI1nD+e2DM7tTADMf01wEPGK8PAhz4D+YmDUVaoBqlA+CaH2uDJhiySifmuKBZj748IfygXty81znKhw==} + /@smithy/hash-node@2.1.1: + resolution: {integrity: sha512-Qhoq0N8f2OtCnvUpCf+g1vSyhYQrZjhSwvJ9qvR8BUGOtTXiyv2x1OD2e6jVGmlpC4E4ax1USHoyGfV9JFsACg==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 - '@smithy/util-buffer-from': 2.0.0 - '@smithy/util-utf8': 2.0.2 + '@smithy/types': 2.9.1 + '@smithy/util-buffer-from': 2.1.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 dev: false @@ -3233,20 +3310,20 @@ packages: resolution: {integrity: sha512-ey8DtnATzp1mOXgS7rqMwSmAki6iJA+jgNucKcxRkhMB1rrICfHg+rhmIF50iLPDHUhTcS5pBMOrLzzpZftvNQ==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 - '@smithy/util-utf8': 2.0.2 + '@smithy/types': 2.9.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 dev: false - /@smithy/invalid-dependency@2.0.15: - resolution: {integrity: sha512-dlEKBFFwVfzA5QroHlBS94NpgYjXhwN/bFfun+7w3rgxNvVy79SK0w05iGc7UAeC5t+D7gBxrzdnD6hreZnDVQ==} + /@smithy/invalid-dependency@2.1.1: + resolution: {integrity: sha512-7WTgnKw+VPg8fxu2v9AlNOQ5yaz6RA54zOVB4f6vQuR0xFKd+RzlCpt0WidYTsye7F+FYDIaS/RnJW4pxjNInw==} dependencies: - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/is-array-buffer@2.0.0: - resolution: {integrity: sha512-z3PjFjMyZNI98JFRJi/U0nGoLWMSJlDjAW4QUX2WNZLas5C0CmVV6LJ01JI0k90l7FvpmixjWxPFmENSClQ7ug==} + /@smithy/is-array-buffer@2.1.1: + resolution: {integrity: sha512-xozSQrcUinPpNPNPds4S7z/FakDTh1MZWtRP/2vQtYB/u3HYrX2UXuZs+VhaKBd6Vc7g2XPr2ZtwGBNDN6fNKQ==} engines: {node: '>=14.0.0'} dependencies: tslib: 2.6.2 @@ -3255,300 +3332,302 @@ packages: /@smithy/md5-js@2.0.17: resolution: {integrity: sha512-jmISTCnEkOnm2oCNx/rMkvBT/eQh3aA6nktevkzbmn/VYqYEuc5Z2n5sTTqsciMSO01Lvf56wG1A4twDqovYeQ==} dependencies: - '@smithy/types': 2.7.0 - '@smithy/util-utf8': 2.0.2 + '@smithy/types': 2.9.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 dev: false - /@smithy/middleware-content-length@2.0.17: - resolution: {integrity: sha512-OyadvMcKC7lFXTNBa8/foEv7jOaqshQZkjWS9coEXPRZnNnihU/Ls+8ZuJwGNCOrN2WxXZFmDWhegbnM4vak8w==} + /@smithy/middleware-content-length@2.1.1: + resolution: {integrity: sha512-rSr9ezUl9qMgiJR0UVtVOGEZElMdGFyl8FzWEF5iEKTlcWxGr2wTqGfDwtH3LAB7h+FPkxqv4ZU4cpuCN9Kf/g==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/protocol-http': 3.0.11 - '@smithy/types': 2.7.0 + '@smithy/protocol-http': 3.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/middleware-endpoint@2.2.3: - resolution: {integrity: sha512-nYfxuq0S/xoAjdLbyn1ixeVB6cyH9wYCMtbbOCpcCRYR5u2mMtqUtVjjPAZ/DIdlK3qe0tpB0Q76szFGNuz+kQ==} + /@smithy/middleware-endpoint@2.4.1: + resolution: {integrity: sha512-XPZTb1E2Oav60Ven3n2PFx+rX9EDsU/jSTA8VDamt7FXks67ekjPY/XrmmPDQaFJOTUHJNKjd8+kZxVO5Ael4Q==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/middleware-serde': 2.0.15 - '@smithy/node-config-provider': 2.1.8 - '@smithy/shared-ini-file-loader': 2.2.7 - '@smithy/types': 2.7.0 - '@smithy/url-parser': 2.0.15 - '@smithy/util-middleware': 2.0.8 + '@smithy/middleware-serde': 2.1.1 + '@smithy/node-config-provider': 2.2.1 + '@smithy/shared-ini-file-loader': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/url-parser': 2.1.1 + '@smithy/util-middleware': 2.1.1 tslib: 2.6.2 dev: false - /@smithy/middleware-retry@2.0.24: - resolution: {integrity: sha512-q2SvHTYu96N7lYrn3VSuX3vRpxXHR/Cig6MJpGWxd0BWodUQUWlKvXpWQZA+lTaFJU7tUvpKhRd4p4MU3PbeJg==} + /@smithy/middleware-retry@2.1.1: + resolution: {integrity: sha512-eMIHOBTXro6JZ+WWzZWd/8fS8ht5nS5KDQjzhNMHNRcG5FkNTqcKpYhw7TETMYzbLfhO5FYghHy1vqDWM4FLDA==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/node-config-provider': 2.1.8 - '@smithy/protocol-http': 3.0.11 - '@smithy/service-error-classification': 2.0.8 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 - '@smithy/util-middleware': 2.0.8 - '@smithy/util-retry': 2.0.8 + '@smithy/node-config-provider': 2.2.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/service-error-classification': 2.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/util-middleware': 2.1.1 + '@smithy/util-retry': 2.1.1 tslib: 2.6.2 uuid: 8.3.2 dev: false - /@smithy/middleware-serde@2.0.15: - resolution: {integrity: sha512-FOZRFk/zN4AT4wzGuBY+39XWe+ZnCFd0gZtyw3f9Okn2CJPixl9GyWe98TIaljeZdqWkgrzGyPre20AcW2UMHQ==} + /@smithy/middleware-serde@2.1.1: + resolution: {integrity: sha512-D8Gq0aQBeE1pxf3cjWVkRr2W54t+cdM2zx78tNrVhqrDykRA7asq8yVJij1u5NDtKzKqzBSPYh7iW0svUKg76g==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/middleware-stack@2.0.9: - resolution: {integrity: sha512-bCB5dUtGQ5wh7QNL2ELxmDc6g7ih7jWU3Kx6MYH1h4mZbv9xL3WyhKHojRltThCB1arLPyTUFDi+x6fB/oabtA==} + /@smithy/middleware-stack@2.1.1: + resolution: {integrity: sha512-KPJhRlhsl8CjgGXK/DoDcrFGfAqoqvuwlbxy+uOO4g2Azn1dhH+GVfC3RAp+6PoL5PWPb+vt6Z23FP+Mr6qeCw==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/node-config-provider@2.1.8: - resolution: {integrity: sha512-+w26OKakaBUGp+UG+dxYZtFb5fs3tgHg3/QrRrmUZj+rl3cIuw840vFUXX35cVPTUCQIiTqmz7CpVF7+hdINdQ==} + /@smithy/node-config-provider@2.2.1: + resolution: {integrity: sha512-epzK3x1xNxA9oJgHQ5nz+2j6DsJKdHfieb+YgJ7ATWxzNcB7Hc+Uya2TUck5MicOPhDV8HZImND7ZOecVr+OWg==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/property-provider': 2.0.16 - '@smithy/shared-ini-file-loader': 2.2.7 - '@smithy/types': 2.7.0 + '@smithy/property-provider': 2.1.1 + '@smithy/shared-ini-file-loader': 2.3.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/node-http-handler@2.2.1: - resolution: {integrity: sha512-8iAKQrC8+VFHPAT8pg4/j6hlsTQh+NKOWlctJBrYtQa4ExcxX7aSg3vdQ2XLoYwJotFUurg/NLqFCmZaPRrogw==} + /@smithy/node-http-handler@2.3.1: + resolution: {integrity: sha512-gLA8qK2nL9J0Rk/WEZSvgin4AppvuCYRYg61dcUo/uKxvMZsMInL5I5ZdJTogOvdfVug3N2dgI5ffcUfS4S9PA==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/abort-controller': 2.0.15 - '@smithy/protocol-http': 3.0.11 - '@smithy/querystring-builder': 2.0.15 - '@smithy/types': 2.7.0 + '@smithy/abort-controller': 2.1.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/querystring-builder': 2.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/property-provider@2.0.16: - resolution: {integrity: sha512-28Ky0LlOqtEjwg5CdHmwwaDRHcTWfPRzkT6HrhwOSRS2RryAvuDfJrZpM+BMcrdeCyEg1mbcgIMoqTla+rdL8Q==} + /@smithy/property-provider@2.1.1: + resolution: {integrity: sha512-FX7JhhD/o5HwSwg6GLK9zxrMUrGnb3PzNBrcthqHKBc3dH0UfgEAU24xnJ8F0uow5mj17UeBEOI6o3CF2k7Mhw==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/protocol-http@3.0.11: - resolution: {integrity: sha512-3ziB8fHuXIRamV/akp/sqiWmNPR6X+9SB8Xxnozzj+Nq7hSpyKdFHd1FLpBkgfGFUTzzcBJQlDZPSyxzmdcx5A==} + /@smithy/protocol-http@3.1.1: + resolution: {integrity: sha512-6ZRTSsaXuSL9++qEwH851hJjUA0OgXdQFCs+VDw4tGH256jQ3TjYY/i34N4vd24RV3nrjNsgd1yhb57uMoKbzQ==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/querystring-builder@2.0.15: - resolution: {integrity: sha512-e1q85aT6HutvouOdN+dMsN0jcdshp50PSCvxDvo6aIM57LqeXimjfONUEgfqQ4IFpYWAtVixptyIRE5frMp/2A==} + /@smithy/querystring-builder@2.1.1: + resolution: {integrity: sha512-C/ko/CeEa8jdYE4gt6nHO5XDrlSJ3vdCG0ZAc6nD5ZIE7LBp0jCx4qoqp7eoutBu7VrGMXERSRoPqwi1WjCPbg==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 - '@smithy/util-uri-escape': 2.0.0 + '@smithy/types': 2.9.1 + '@smithy/util-uri-escape': 2.1.1 tslib: 2.6.2 dev: false - /@smithy/querystring-parser@2.0.15: - resolution: {integrity: sha512-jbBvoK3cc81Cj1c1TH1qMYxNQKHrYQ2DoTntN9FBbtUWcGhc+T4FP6kCKYwRLXyU4AajwGIZstvNAmIEgUUNTQ==} + /@smithy/querystring-parser@2.1.1: + resolution: {integrity: sha512-H4+6jKGVhG1W4CIxfBaSsbm98lOO88tpDWmZLgkJpt8Zkk/+uG0FmmqMuCAc3HNM2ZDV+JbErxr0l5BcuIf/XQ==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/service-error-classification@2.0.8: - resolution: {integrity: sha512-jCw9+005im8tsfYvwwSc4TTvd29kXRFkH9peQBg5R/4DD03ieGm6v6Hpv9nIAh98GwgYg1KrztcINC1s4o7/hg==} + /@smithy/service-error-classification@2.1.1: + resolution: {integrity: sha512-txEdZxPUgM1PwGvDvHzqhXisrc5LlRWYCf2yyHfvITWioAKat7srQvpjMAvgzf0t6t7j8yHrryXU9xt7RZqFpw==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 dev: false - /@smithy/shared-ini-file-loader@2.2.7: - resolution: {integrity: sha512-0Qt5CuiogIuvQIfK+be7oVHcPsayLgfLJGkPlbgdbl0lD28nUKu4p11L+UG3SAEsqc9UsazO+nErPXw7+IgDpQ==} + /@smithy/shared-ini-file-loader@2.3.1: + resolution: {integrity: sha512-2E2kh24igmIznHLB6H05Na4OgIEilRu0oQpYXo3LCNRrawHAcfDKq9004zJs+sAMt2X5AbY87CUCJ7IpqpSgdw==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/signature-v4@2.0.18: - resolution: {integrity: sha512-SJRAj9jT/l9ocm8D0GojMbnA1sp7I4JeStOQ4lEXI8A5eHE73vbjlzlqIFB7cLvIgau0oUl4cGVpF9IGCrvjlw==} + /@smithy/signature-v4@2.1.1: + resolution: {integrity: sha512-Hb7xub0NHuvvQD3YwDSdanBmYukoEkhqBjqoxo+bSdC0ryV9cTfgmNjuAQhTPYB6yeU7hTR+sPRiFMlxqv6kmg==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/eventstream-codec': 2.0.15 - '@smithy/is-array-buffer': 2.0.0 - '@smithy/types': 2.7.0 - '@smithy/util-hex-encoding': 2.0.0 - '@smithy/util-middleware': 2.0.8 - '@smithy/util-uri-escape': 2.0.0 - '@smithy/util-utf8': 2.0.2 + '@smithy/eventstream-codec': 2.1.1 + '@smithy/is-array-buffer': 2.1.1 + '@smithy/types': 2.9.1 + '@smithy/util-hex-encoding': 2.1.1 + '@smithy/util-middleware': 2.1.1 + '@smithy/util-uri-escape': 2.1.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 dev: false - /@smithy/smithy-client@2.1.18: - resolution: {integrity: sha512-7FqdbaJiVaHJDD9IfDhmzhSDbpjyx+ZsfdYuOpDJF09rl8qlIAIlZNoSaflKrQ3cEXZN2YxGPaNWGhbYimyIRQ==} + /@smithy/smithy-client@2.3.1: + resolution: {integrity: sha512-YsTdU8xVD64r2pLEwmltrNvZV6XIAC50LN6ivDopdt+YiF/jGH6PY9zUOu0CXD/d8GMB8gbhnpPsdrjAXHS9QA==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/middleware-stack': 2.0.9 - '@smithy/types': 2.7.0 - '@smithy/util-stream': 2.0.23 + '@smithy/middleware-endpoint': 2.4.1 + '@smithy/middleware-stack': 2.1.1 + '@smithy/protocol-http': 3.1.1 + '@smithy/types': 2.9.1 + '@smithy/util-stream': 2.1.1 tslib: 2.6.2 dev: false - /@smithy/types@2.7.0: - resolution: {integrity: sha512-1OIFyhK+vOkMbu4aN2HZz/MomREkrAC/HqY5mlJMUJfGrPRwijJDTeiN8Rnj9zUaB8ogXAfIOtZrrgqZ4w7Wnw==} + /@smithy/types@2.9.1: + resolution: {integrity: sha512-vjXlKNXyprDYDuJ7UW5iobdmyDm6g8dDG+BFUncAg/3XJaN45Gy5RWWWUVgrzIK7S4R1KWgIX5LeJcfvSI24bw==} engines: {node: '>=14.0.0'} dependencies: tslib: 2.6.2 dev: false - /@smithy/url-parser@2.0.15: - resolution: {integrity: sha512-sADUncUj9rNbOTrdDGm4EXlUs0eQ9dyEo+V74PJoULY4jSQxS+9gwEgsPYyiu8PUOv16JC/MpHonOgqP/IEDZA==} + /@smithy/url-parser@2.1.1: + resolution: {integrity: sha512-qC9Bv8f/vvFIEkHsiNrUKYNl8uKQnn4BdhXl7VzQRP774AwIjiSMMwkbT+L7Fk8W8rzYVifzJNYxv1HwvfBo3Q==} dependencies: - '@smithy/querystring-parser': 2.0.15 - '@smithy/types': 2.7.0 + '@smithy/querystring-parser': 2.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/util-base64@2.0.1: - resolution: {integrity: sha512-DlI6XFYDMsIVN+GH9JtcRp3j02JEVuWIn/QOZisVzpIAprdsxGveFed0bjbMRCqmIFe8uetn5rxzNrBtIGrPIQ==} + /@smithy/util-base64@2.1.1: + resolution: {integrity: sha512-UfHVpY7qfF/MrgndI5PexSKVTxSZIdz9InghTFa49QOvuu9I52zLPLUHXvHpNuMb1iD2vmc6R+zbv/bdMipR/g==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/util-buffer-from': 2.0.0 + '@smithy/util-buffer-from': 2.1.1 tslib: 2.6.2 dev: false - /@smithy/util-body-length-browser@2.0.1: - resolution: {integrity: sha512-NXYp3ttgUlwkaug4bjBzJ5+yIbUbUx8VsSLuHZROQpoik+gRkIBeEG9MPVYfvPNpuXb/puqodeeUXcKFe7BLOQ==} + /@smithy/util-body-length-browser@2.1.1: + resolution: {integrity: sha512-ekOGBLvs1VS2d1zM2ER4JEeBWAvIOUKeaFch29UjjJsxmZ/f0L3K3x0dEETgh3Q9bkZNHgT+rkdl/J/VUqSRag==} dependencies: tslib: 2.6.2 dev: false - /@smithy/util-body-length-node@2.1.0: - resolution: {integrity: sha512-/li0/kj/y3fQ3vyzn36NTLGmUwAICb7Jbe/CsWCktW363gh1MOcpEcSO3mJ344Gv2dqz8YJCLQpb6hju/0qOWw==} + /@smithy/util-body-length-node@2.2.1: + resolution: {integrity: sha512-/ggJG+ta3IDtpNVq4ktmEUtOkH1LW64RHB5B0hcr5ZaWBmo96UX2cIOVbjCqqDickTXqBWZ4ZO0APuaPrD7Abg==} engines: {node: '>=14.0.0'} dependencies: tslib: 2.6.2 dev: false - /@smithy/util-buffer-from@2.0.0: - resolution: {integrity: sha512-/YNnLoHsR+4W4Vf2wL5lGv0ksg8Bmk3GEGxn2vEQt52AQaPSCuaO5PM5VM7lP1K9qHRKHwrPGktqVoAHKWHxzw==} + /@smithy/util-buffer-from@2.1.1: + resolution: {integrity: sha512-clhNjbyfqIv9Md2Mg6FffGVrJxw7bgK7s3Iax36xnfVj6cg0fUG7I4RH0XgXJF8bxi+saY5HR21g2UPKSxVCXg==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/is-array-buffer': 2.0.0 + '@smithy/is-array-buffer': 2.1.1 tslib: 2.6.2 dev: false - /@smithy/util-config-provider@2.0.0: - resolution: {integrity: sha512-xCQ6UapcIWKxXHEU4Mcs2s7LcFQRiU3XEluM2WcCjjBtQkUN71Tb+ydGmJFPxMUrW/GWMgQEEGipLym4XG0jZg==} + /@smithy/util-config-provider@2.2.1: + resolution: {integrity: sha512-50VL/tx9oYYcjJn/qKqNy7sCtpD0+s8XEBamIFo4mFFTclKMNp+rsnymD796uybjiIquB7VCB/DeafduL0y2kw==} engines: {node: '>=14.0.0'} dependencies: tslib: 2.6.2 dev: false - /@smithy/util-defaults-mode-browser@2.0.22: - resolution: {integrity: sha512-qcF20IHHH96FlktvBRICDXDhLPtpVmtksHmqNGtotb9B0DYWXsC6jWXrkhrrwF7tH26nj+npVTqh9isiFV1gdA==} + /@smithy/util-defaults-mode-browser@2.1.1: + resolution: {integrity: sha512-lqLz/9aWRO6mosnXkArtRuQqqZBhNpgI65YDpww4rVQBuUT7qzKbDLG5AmnQTCiU4rOquaZO/Kt0J7q9Uic7MA==} engines: {node: '>= 10.0.0'} dependencies: - '@smithy/property-provider': 2.0.16 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 + '@smithy/property-provider': 2.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 bowser: 2.11.0 tslib: 2.6.2 dev: false - /@smithy/util-defaults-mode-node@2.0.29: - resolution: {integrity: sha512-+uG/15VoUh6JV2fdY9CM++vnSuMQ1VKZ6BdnkUM7R++C/vLjnlg+ToiSR1FqKZbMmKBXmsr8c/TsDWMAYvxbxQ==} + /@smithy/util-defaults-mode-node@2.1.1: + resolution: {integrity: sha512-tYVrc+w+jSBfBd267KDnvSGOh4NMz+wVH7v4CClDbkdPfnjvImBZsOURncT5jsFwR9KCuDyPoSZq4Pa6+eCUrA==} engines: {node: '>= 10.0.0'} dependencies: - '@smithy/config-resolver': 2.0.21 - '@smithy/credential-provider-imds': 2.1.4 - '@smithy/node-config-provider': 2.1.8 - '@smithy/property-provider': 2.0.16 - '@smithy/smithy-client': 2.1.18 - '@smithy/types': 2.7.0 + '@smithy/config-resolver': 2.1.1 + '@smithy/credential-provider-imds': 2.2.1 + '@smithy/node-config-provider': 2.2.1 + '@smithy/property-provider': 2.1.1 + '@smithy/smithy-client': 2.3.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/util-endpoints@1.0.7: - resolution: {integrity: sha512-Q2gEind3jxoLk6hdKWyESMU7LnXz8aamVwM+VeVjOYzYT1PalGlY/ETa48hv2YpV4+YV604y93YngyzzzQ4IIA==} + /@smithy/util-endpoints@1.1.1: + resolution: {integrity: sha512-sI4d9rjoaekSGEtq3xSb2nMjHMx8QXcz2cexnVyRWsy4yQ9z3kbDpX+7fN0jnbdOp0b3KSTZJZ2Yb92JWSanLw==} engines: {node: '>= 14.0.0'} dependencies: - '@smithy/node-config-provider': 2.1.8 - '@smithy/types': 2.7.0 + '@smithy/node-config-provider': 2.2.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/util-hex-encoding@2.0.0: - resolution: {integrity: sha512-c5xY+NUnFqG6d7HFh1IFfrm3mGl29lC+vF+geHv4ToiuJCBmIfzx6IeHLg+OgRdPFKDXIw6pvi+p3CsscaMcMA==} + /@smithy/util-hex-encoding@2.1.1: + resolution: {integrity: sha512-3UNdP2pkYUUBGEXzQI9ODTDK+Tcu1BlCyDBaRHwyxhA+8xLP8agEKQq4MGmpjqb4VQAjq9TwlCQX0kP6XDKYLg==} engines: {node: '>=14.0.0'} dependencies: tslib: 2.6.2 dev: false - /@smithy/util-middleware@2.0.8: - resolution: {integrity: sha512-qkvqQjM8fRGGA8P2ydWylMhenCDP8VlkPn8kiNuFEaFz9xnUKC2irfqsBSJrfrOB9Qt6pQsI58r3zvvumhFMkw==} + /@smithy/util-middleware@2.1.1: + resolution: {integrity: sha512-mKNrk8oz5zqkNcbcgAAepeJbmfUW6ogrT2Z2gDbIUzVzNAHKJQTYmH9jcy0jbWb+m7ubrvXKb6uMjkSgAqqsFA==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/types': 2.7.0 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/util-retry@2.0.8: - resolution: {integrity: sha512-cQTPnVaVFMjjS6cb44WV2yXtHVyXDC5icKyIbejMarJEApYeJWpBU3LINTxHqp/tyLI+MZOUdosr2mZ3sdziNg==} + /@smithy/util-retry@2.1.1: + resolution: {integrity: sha512-Mg+xxWPTeSPrthpC5WAamJ6PW4Kbo01Fm7lWM1jmGRvmrRdsd3192Gz2fBXAMURyXpaNxyZf6Hr/nQ4q70oVEA==} engines: {node: '>= 14.0.0'} dependencies: - '@smithy/service-error-classification': 2.0.8 - '@smithy/types': 2.7.0 + '@smithy/service-error-classification': 2.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false - /@smithy/util-stream@2.0.23: - resolution: {integrity: sha512-OJMWq99LAZJUzUwTk+00plyxX3ESktBaGPhqNIEVab+53gLULiWN9B/8bRABLg0K6R6Xg4t80uRdhk3B/LZqMQ==} + /@smithy/util-stream@2.1.1: + resolution: {integrity: sha512-J7SMIpUYvU4DQN55KmBtvaMc7NM3CZ2iWICdcgaovtLzseVhAqFRYqloT3mh0esrFw+3VEK6nQFteFsTqZSECQ==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/fetch-http-handler': 2.3.1 - '@smithy/node-http-handler': 2.2.1 - '@smithy/types': 2.7.0 - '@smithy/util-base64': 2.0.1 - '@smithy/util-buffer-from': 2.0.0 - '@smithy/util-hex-encoding': 2.0.0 - '@smithy/util-utf8': 2.0.2 + '@smithy/fetch-http-handler': 2.4.1 + '@smithy/node-http-handler': 2.3.1 + '@smithy/types': 2.9.1 + '@smithy/util-base64': 2.1.1 + '@smithy/util-buffer-from': 2.1.1 + '@smithy/util-hex-encoding': 2.1.1 + '@smithy/util-utf8': 2.1.1 tslib: 2.6.2 dev: false - /@smithy/util-uri-escape@2.0.0: - resolution: {integrity: sha512-ebkxsqinSdEooQduuk9CbKcI+wheijxEb3utGXkCoYQkJnwTnLbH1JXGimJtUkQwNQbsbuYwG2+aFVyZf5TLaw==} + /@smithy/util-uri-escape@2.1.1: + resolution: {integrity: sha512-saVzI1h6iRBUVSqtnlOnc9ssU09ypo7n+shdQ8hBTZno/9rZ3AuRYvoHInV57VF7Qn7B+pFJG7qTzFiHxWlWBw==} engines: {node: '>=14.0.0'} dependencies: tslib: 2.6.2 dev: false - /@smithy/util-utf8@2.0.2: - resolution: {integrity: sha512-qOiVORSPm6Ce4/Yu6hbSgNHABLP2VMv8QOC3tTDNHHlWY19pPyc++fBTbZPtx6egPXi4HQxKDnMxVxpbtX2GoA==} + /@smithy/util-utf8@2.1.1: + resolution: {integrity: sha512-BqTpzYEcUMDwAKr7/mVRUtHDhs6ZoXDi9NypMvMfOr/+u1NW7JgqodPDECiiLboEm6bobcPcECxzjtQh865e9A==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/util-buffer-from': 2.0.0 + '@smithy/util-buffer-from': 2.1.1 tslib: 2.6.2 dev: false - /@smithy/util-waiter@2.0.15: - resolution: {integrity: sha512-9Y+btzzB7MhLADW7xgD6SjvmoYaRkrb/9SCbNGmNdfO47v38rxb90IGXyDtAK0Shl9bMthTmLgjlfYc+vtz2Qw==} + /@smithy/util-waiter@2.1.1: + resolution: {integrity: sha512-kYy6BLJJNif+uqNENtJqWdXcpqo1LS+nj1AfXcDhOpqpSHJSAkVySLyZV9fkmuVO21lzGoxjvd1imGGJHph/IA==} engines: {node: '>=14.0.0'} dependencies: - '@smithy/abort-controller': 2.0.15 - '@smithy/types': 2.7.0 + '@smithy/abort-controller': 2.1.1 + '@smithy/types': 2.9.1 tslib: 2.6.2 dev: false @@ -3923,14 +4002,6 @@ packages: uri-js: 4.4.1 dev: true - /ajv@8.12.0: - resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} - dependencies: - fast-deep-equal: 3.1.3 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - uri-js: 4.4.1 - /ansi-align@3.0.1: resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} dependencies: @@ -3952,6 +4023,7 @@ packages: /ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} + dev: true /ansi-regex@6.0.1: resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} @@ -3970,6 +4042,7 @@ packages: engines: {node: '>=8'} dependencies: color-convert: 2.0.1 + dev: true /ansi-styles@5.2.0: resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} @@ -4028,10 +4101,6 @@ packages: is-string: 1.0.7 dev: true - /array-timsort@1.0.3: - resolution: {integrity: sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ==} - dev: true - /array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} @@ -4086,10 +4155,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /astral-regex@2.0.0: - resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} - engines: {node: '>=8'} - /asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} dev: true @@ -4108,17 +4173,7 @@ packages: '@aws-cdk/asset-awscli-v1': 2.2.200 '@aws-cdk/asset-kubectl-v20': 2.1.2 '@aws-cdk/asset-node-proxy-agent-v6': 2.0.1 - '@balena/dockerignore': 1.0.2 - case: 1.6.3 constructs: 10.2.70 - fs-extra: 11.1.1 - ignore: 5.2.4 - jsonschema: 1.4.1 - minimatch: 3.1.2 - punycode: 2.3.0 - semver: 7.5.4 - table: 6.8.1 - yaml: 1.10.2 bundledDependencies: - '@balena/dockerignore' - case @@ -4233,6 +4288,7 @@ packages: /balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + dev: true /base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -4288,6 +4344,7 @@ packages: dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 + dev: true /brace-expansion@2.0.1: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} @@ -4432,10 +4489,6 @@ packages: resolution: {integrity: sha512-48jLyUkiWFfhm/afF7cQPqPjaUmSraEhK4j+FCTJpgnGGEZHqyLe3hmWH7lIooZdSzXL0ReMvHz0vKDoTBsrwg==} dev: true - /case@1.6.3: - resolution: {integrity: sha512-mzDSXIPaFwVDvZAHqZ9VlbyF4yyXRuX6IvB06WvPYkqJVO24kX1PPhv9bfpKNFZyxYFmmgo03HUiD8iklmJYRQ==} - engines: {node: '>= 0.8.0'} - /cdk-nag@2.27.143(aws-cdk-lib@2.98.0)(constructs@10.2.70): resolution: {integrity: sha512-hIkh/9Hi3hyAlxmv0A8r4xTrT90DoEJ0ip5WLVAoaWUVLMpQfkGht6YR3yMQpA+JIKdOZxeK/WHENAx7REV09g==} peerDependencies: @@ -4571,6 +4624,7 @@ packages: engines: {node: '>=7.0.0'} dependencies: color-name: 1.1.4 + dev: true /color-name@1.1.3: resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} @@ -4578,6 +4632,7 @@ packages: /color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + dev: true /color-support@1.1.3: resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} @@ -4601,19 +4656,9 @@ packages: engines: {node: '>=16'} dev: true - /comment-json@4.2.2: - resolution: {integrity: sha512-H8T+kl3nZesZu41zO2oNXIJWojNeK3mHxCLrsBNu6feksBXsgb+PtYz5daP5P86A0F3sz3840KVYehr04enISQ==} - engines: {node: '>= 6'} - dependencies: - array-timsort: 1.0.3 - core-util-is: 1.0.3 - esprima: 4.0.1 - has-own-prop: 2.0.0 - repeat-string: 1.6.1 - dev: true - /concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + dev: true /config-chain@1.1.13: resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} @@ -4641,10 +4686,6 @@ packages: resolution: {integrity: sha512-z6zr1E8K/9tzJbCQzY0UGX0/oVKPFKu9C/mzEnghCG6TAJINnvlq0CMKm63XqqeMleadZYm5T3sZGJKcxJS/Pg==} engines: {node: '>= 16.14.0'} - /conventional-changelog-config-spec@2.1.0: - resolution: {integrity: sha512-IpVePh16EbbB02V+UA+HQnnPIohgXvJRxHcS5+Uwk4AT5LjzCZJm5sp/yqs5C6KZJ1jMsV4paEV13BN1pvDuxQ==} - dev: true - /convert-source-map@1.9.0: resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} dev: true @@ -4653,10 +4694,6 @@ packages: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} dev: true - /core-util-is@1.0.3: - resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} - dev: true - /cosmiconfig@8.2.0: resolution: {integrity: sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==} engines: {node: '>=14'} @@ -4963,6 +5000,7 @@ packages: /emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + dev: true /emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} @@ -5423,6 +5461,7 @@ packages: /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + dev: true /fast-diff@1.3.0: resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==} @@ -5450,10 +5489,6 @@ packages: micromatch: 4.0.5 dev: true - /fast-json-patch@3.1.1: - resolution: {integrity: sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ==} - dev: true - /fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} dev: true @@ -5601,6 +5636,7 @@ packages: graceful-fs: 4.2.11 jsonfile: 6.1.0 universalify: 2.0.0 + dev: true /fs-extra@7.0.1: resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} @@ -5774,17 +5810,6 @@ packages: path-is-absolute: 1.0.1 dev: true - /glob@8.1.0: - resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} - engines: {node: '>=12'} - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 5.1.6 - once: 1.4.0 - dev: true - /global-dirs@3.0.1: resolution: {integrity: sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==} engines: {node: '>=10'} @@ -5852,6 +5877,7 @@ packages: /graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + dev: true /grapheme-splitter@1.0.4: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} @@ -5880,11 +5906,6 @@ packages: engines: {node: '>=8'} dev: true - /has-own-prop@2.0.0: - resolution: {integrity: sha512-Pq0h+hvsVm6dDEa8x82GnLSYHOzNDt7f0ddFa3FqcQlgzEiptPqL+XrOJNavjOzSYiYWIrgeVYYgGlLmnxwilQ==} - engines: {node: '>=8'} - dev: true - /has-property-descriptors@1.0.0: resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} dependencies: @@ -6029,6 +6050,7 @@ packages: /ignore@5.2.4: resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} engines: {node: '>= 4'} + dev: true /import-fresh@3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} @@ -6096,11 +6118,6 @@ packages: side-channel: 1.0.4 dev: true - /interpret@1.4.0: - resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} - engines: {node: '>= 0.10'} - dev: true - /ip@2.0.0: resolution: {integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==} dev: true @@ -6176,6 +6193,7 @@ packages: /is-fullwidth-code-point@3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} + dev: true /is-generator-fn@2.1.0: resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==} @@ -6930,9 +6948,6 @@ packages: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} dev: true - /json-schema-traverse@1.0.0: - resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} - /json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} dev: true @@ -6966,6 +6981,7 @@ packages: universalify: 2.0.0 optionalDependencies: graceful-fs: 4.2.11 + dev: true /jsonlines@0.1.1: resolution: {integrity: sha512-ekDrAGso79Cvf+dtm+mL8OBI2bmAOt3gssYs833De/C9NmIpWDWyUO4zPgB5x2/OhY366dkhgfPMYfwZF7yOZA==} @@ -6976,9 +6992,6 @@ packages: engines: {'0': node >= 0.2.0} dev: true - /jsonschema@1.4.1: - resolution: {integrity: sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==} - /just-extend@4.2.1: resolution: {integrity: sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==} dev: true @@ -7072,9 +7085,6 @@ packages: resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} dev: true - /lodash.truncate@4.4.2: - resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==} - /lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} dev: true @@ -7115,6 +7125,7 @@ packages: engines: {node: '>=10'} dependencies: yallist: 4.0.0 + dev: true /lru-cache@7.18.3: resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} @@ -7252,12 +7263,6 @@ packages: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: brace-expansion: 1.1.11 - - /minimatch@5.1.6: - resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} - engines: {node: '>=10'} - dependencies: - brace-expansion: 2.0.1 dev: true /minimatch@9.0.3: @@ -8048,20 +8053,6 @@ packages: resolution: {integrity: sha512-s7CE/QchFgX2IsCSBXF7xLrRCwG53UgtWfinCG2o8nOhEIbrYV7vZU1JPf0xughzYr+6cp3JL+Z35o30VTBOMw==} engines: {node: '>= 14.0.0'} hasBin: true - dependencies: - '@iarna/toml': 2.2.5 - case: 1.6.3 - chalk: 4.1.2 - comment-json: 4.2.2 - conventional-changelog-config-spec: 2.1.0 - fast-json-patch: 3.1.1 - glob: 8.1.0 - ini: 2.0.0 - semver: 7.5.4 - shx: 0.3.4 - xmlbuilder2: 3.1.1 - yaml: 2.3.2 - yargs: 17.7.2 dev: true bundledDependencies: - '@iarna/toml' @@ -8126,6 +8117,7 @@ packages: /punycode@2.3.0: resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} engines: {node: '>=6'} + dev: true /pupa@3.1.0: resolution: {integrity: sha512-FLpr4flz5xZTSJxSeaheeMKN/EDzMdK7b8PTOC6a5PYFKTucWbdqjgqaEyH0shFiSJrVB1+Qqi4Tk19ccU6Aug==} @@ -8241,13 +8233,6 @@ packages: util-deprecate: 1.0.2 dev: true - /rechoir@0.6.2: - resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} - engines: {node: '>= 0.10'} - dependencies: - resolve: 1.22.6 - dev: true - /redent@3.0.0: resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} engines: {node: '>=8'} @@ -8288,11 +8273,6 @@ packages: engines: {node: '>=8'} dev: true - /repeat-string@1.6.1: - resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==} - engines: {node: '>=0.10'} - dev: true - /require-directory@2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} @@ -8301,6 +8281,7 @@ packages: /require-from-string@2.0.2: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} + dev: true /require-main-filename@2.0.0: resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==} @@ -8459,6 +8440,7 @@ packages: hasBin: true dependencies: lru-cache: 6.0.0 + dev: true /set-blocking@2.0.0: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} @@ -8497,25 +8479,6 @@ packages: engines: {node: '>=8'} dev: true - /shelljs@0.8.5: - resolution: {integrity: sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==} - engines: {node: '>=4'} - hasBin: true - dependencies: - glob: 7.2.3 - interpret: 1.4.0 - rechoir: 0.6.2 - dev: true - - /shx@0.3.4: - resolution: {integrity: sha512-N6A9MLVqjxZYcVn8hLmtneQWIJtp8IKzMP4eMnx+nqkvXoqinUPCbUFLp2UcWTEIUONhlk0ewxr/jaVGlc+J+g==} - engines: {node: '>=6'} - hasBin: true - dependencies: - minimist: 1.2.8 - shelljs: 0.8.5 - dev: true - /side-channel@1.0.4: resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} dependencies: @@ -8568,14 +8531,6 @@ packages: engines: {node: '>=8'} dev: true - /slice-ansi@4.0.0: - resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - astral-regex: 2.0.0 - is-fullwidth-code-point: 3.0.0 - /smart-buffer@4.2.0: resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} @@ -8707,6 +8662,7 @@ packages: emoji-regex: 8.0.0 is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 + dev: true /string-width@5.1.2: resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} @@ -8753,6 +8709,7 @@ packages: engines: {node: '>=8'} dependencies: ansi-regex: 5.0.1 + dev: true /strip-ansi@7.1.0: resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} @@ -8875,16 +8832,6 @@ packages: ts-toolbelt: 9.6.0 dev: true - /table@6.8.1: - resolution: {integrity: sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==} - engines: {node: '>=10.0.0'} - dependencies: - ajv: 8.12.0 - lodash.truncate: 4.4.2 - slice-ansi: 4.0.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - /tapable@2.2.1: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} @@ -9247,6 +9194,7 @@ packages: /universalify@2.0.0: resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} engines: {node: '>= 10.0.0'} + dev: true /untildify@4.0.0: resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==} @@ -9288,6 +9236,7 @@ packages: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: punycode: 2.3.0 + dev: true /util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} @@ -9456,16 +9405,6 @@ packages: engines: {node: '>=12'} dev: true - /xmlbuilder2@3.1.1: - resolution: {integrity: sha512-WCSfbfZnQDdLQLiMdGUQpMxxckeQ4oZNMNhLVkcekTu7xhD4tuUDyAPoY8CwXvBYE6LwBHd6QW2WZXlOWr1vCw==} - engines: {node: '>=12.0'} - dependencies: - '@oozcitak/dom': 1.15.10 - '@oozcitak/infra': 1.0.8 - '@oozcitak/util': 8.3.8 - js-yaml: 3.14.1 - dev: true - /y18n@4.0.3: resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} dev: true @@ -9485,14 +9424,6 @@ packages: /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - - /yaml@1.10.2: - resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} - engines: {node: '>= 6'} - - /yaml@2.3.2: - resolution: {integrity: sha512-N/lyzTPaJasoDmfV7YTrYCI0G/3ivm/9wdG0aHuheKowWQwGTsK0Eoiw6utmzAnI6pkJa0DUVygvp3spqqEKXg==} - engines: {node: '>= 14'} dev: true /yargs-parser@18.1.3: diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 547576a..2c250ab 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -4,6 +4,7 @@ packages: - packages/client-api-gateway-management-api - packages/client-dynamodb - packages/client-eventbridge + - packages/client-iam - packages/client-lambda - packages/client-s3 - packages/client-sfn