1.0.0 • Published 8 months ago
@effect-aws/client-kms v1.0.0
@effect-aws/client-kms
Installation
npm install --save @effect-aws/client-kms
Usage
With default KMSClient instance:
import { KMSService, DefaultKMSServiceLayer } from "@effect-aws/client-kms";
const program = KMSService.listKeys(args);
const result = pipe(
program,
Effect.provide(DefaultKMSServiceLayer),
Effect.runPromise,
);
With custom KMSClient instance:
import {
KMSService,
BaseKMSServiceLayer,
KMSClientInstance,
} from "@effect-aws/client-kms";
const program = KMSService.listKeys(args);
const KMSClientInstanceLayer = Layer.succeed(
KMSClientInstance,
new KMSClient({ region: "eu-central-1" }),
);
const result = await pipe(
program,
Effect.provide(BaseKMSServiceLayer),
Effect.provide(KMSClientInstanceLayer),
Effect.runPromise,
);
With custom KMSClient configuration:
import {
KMSService,
BaseKMSServiceLayer,
DefaultKMSClientConfigLayer,
KMSClientInstance,
KMSClientInstanceConfig,
} from "@effect-aws/client-kms";
const program = KMSService.listKeys(args);
const KMSClientInstanceLayer = Layer.provide(
Layer.effect(
KMSClientInstance,
KMSClientInstanceConfig.pipe(
Effect.map(
(config) => new KMSClient({ ...config, region: "eu-central-1" }),
),
),
),
DefaultKMSClientConfigLayer,
);
const result = await pipe(
program,
Effect.provide(BaseKMSServiceLayer),
Effect.provide(KMSClientInstanceLayer),
Effect.runPromiseExit,
);
or map over DefaultKMSClientConfigLayer
layer context and update the configuration...
1.0.0
8 months ago