1.0.0 • Published 8 months ago

@effect-aws/client-rds v1.0.0

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

@effect-aws/client-rds

npm version npm downloads

Installation

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

Usage

With default RDSClient instance:

import { RDSService, DefaultRDSServiceLayer } from "@effect-aws/client-rds";

const program = RDSService.describeDBClusters(args);

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

With custom RDSClient instance:

import {
  RDSService,
  BaseRDSServiceLayer,
  RDSClientInstance,
} from "@effect-aws/client-rds";

const program = RDSService.describeDBClusters(args);

const RDSClientInstanceLayer = Layer.succeed(
  RDSClientInstance,
  new RDSClient({ region: "eu-central-1" }),
);

const result = await pipe(
  program,
  Effect.provide(BaseRDSServiceLayer),
  Effect.provide(RDSClientInstanceLayer),
  Effect.runPromise,
);

With custom RDSClient configuration:

import {
  RDSService,
  BaseRDSServiceLayer,
  DefaultRDSClientConfigLayer,
  RDSClientInstance,
  RDSClientInstanceConfig,
} from "@effect-aws/client-rds";

const program = RDSService.describeDBClusters(args);

const RDSClientInstanceLayer = Layer.provide(
  Layer.effect(
    RDSClientInstance,
    RDSClientInstanceConfig.pipe(
      Effect.map(
        (config) => new RDSClient({ ...config, region: "eu-central-1" }),
      ),
    ),
  ),
  DefaultRDSClientConfigLayer,
);

const result = await pipe(
  program,
  Effect.provide(BaseRDSServiceLayer),
  Effect.provide(RDSClientInstanceLayer),
  Effect.runPromiseExit,
);

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

1.0.0

8 months ago