1.4.0 • Published 9 months ago

@effect-aws/client-iam v1.4.0

Weekly downloads
-
License
MIT
Repository
-
Last release
9 months ago

@effect-aws/client-iam

Installation

npm install --save @effect-aws/client-iam

Usage

With default IAMClient instance:

import { IAMService, DefaultIAMServiceLayer } from "@effect-aws/client-iam";

const program = IAMService.createRole(args);

const result = pipe(
  program,
  Effect.provide(DefaultIAMServiceLayer),
  Effect.runPromise,
);

With custom IAMClient instance:

import {
  IAMService,
  BaseIAMServiceLayer,
  IAMClientInstance,
} from "@effect-aws/client-iam";

const program = IAMService.createRole(args);

const IAMClientInstanceLayer = Layer.succeed(
  IAMClientInstance,
  new IAMClient({ region: "eu-central-1" }),
);

const result = await pipe(
  program,
  Effect.provide(BaseIAMServiceLayer),
  Effect.provide(IAMClientInstanceLayer),
  Effect.runPromise,
);

With custom IAMClient configuration:

import {
  IAMService,
  BaseIAMServiceLayer,
  DefaultIAMClientConfigLayer,
  IAMClientInstance,
  IAMClientInstanceConfig,
} from "@effect-aws/client-iam";

const program = IAMService.createRole(args);

const IAMClientInstanceLayer = Layer.provide(
  Layer.effect(
    IAMClientInstance,
    IAMClientInstanceConfig.pipe(
      Effect.map(
        (config) => new IAMClient({ ...config, region: "eu-central-1" }),
      ),
    ),
  ),
  DefaultIAMClientConfigLayer,
);

const result = await pipe(
  program,
  Effect.provide(BaseIAMServiceLayer),
  Effect.provide(IAMClientInstanceLayer),
  Effect.runPromiseExit,
);

or map over DefaultIAMClientConfigLayer layer context and update the configuration...

1.4.0

9 months ago

1.3.0

10 months ago

1.2.0

1 year ago

1.1.1

1 year ago

1.0.2

1 year ago

1.1.0

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago