1.0.0 • Published 9 months ago
@effect-aws/client-cloudtrail v1.0.0
@effect-aws/client-cloudtrail
Installation
npm install --save @effect-aws/client-cloudtrail
Usage
With default CloudTrailClient instance:
import { CloudTrailService, DefaultCloudTrailServiceLayer } from "@effect-aws/client-cloudtrail";
const program = CloudTrailService.listTrails(args);
const result = pipe(
program,
Effect.provide(DefaultCloudTrailServiceLayer),
Effect.runPromise,
);
With custom CloudTrailClient instance:
import {
CloudTrailService,
BaseCloudTrailServiceLayer,
CloudTrailClientInstance,
} from "@effect-aws/client-cloudtrail";
const program = CloudTrailService.listTrails(args);
const CloudTrailClientInstanceLayer = Layer.succeed(
CloudTrailClientInstance,
new CloudTrailClient({ region: "eu-central-1" }),
);
const result = await pipe(
program,
Effect.provide(BaseCloudTrailServiceLayer),
Effect.provide(CloudTrailClientInstanceLayer),
Effect.runPromise,
);
With custom CloudTrailClient configuration:
import {
CloudTrailService,
BaseCloudTrailServiceLayer,
DefaultCloudTrailClientConfigLayer,
CloudTrailClientInstance,
CloudTrailClientInstanceConfig,
} from "@effect-aws/client-cloudtrail";
const program = CloudTrailService.listTrails(args);
const CloudTrailClientInstanceLayer = Layer.provide(
Layer.effect(
CloudTrailClientInstance,
CloudTrailClientInstanceConfig.pipe(
Effect.map(
(config) => new CloudTrailClient({ ...config, region: "eu-central-1" }),
),
),
),
DefaultCloudTrailClientConfigLayer,
);
const result = await pipe(
program,
Effect.provide(BaseCloudTrailServiceLayer),
Effect.provide(CloudTrailClientInstanceLayer),
Effect.runPromiseExit,
);
or map over DefaultCloudTrailClientConfigLayer
layer context and update the configuration...
1.0.0
9 months ago