export class ConfigRepository extends Context.Tag("Service/ConfigRepository")<
ConfigRepository,
{
createMany: (
configs: UnsavedConfig[],
) => Effect.Effect<
number,
| EntitiesAlreadyExistsError
| ValidationError
| InvalidConfigError
| DatabaseError,
TransactionContext
>;
// ...
}
>() {}
export const { createMany, /* ... */ } =
Effect.serviceFunctions(ConfigRepository);
// usage:
const createMany = () =>
flow(ConfigRepository.createMany, Transactions.wrap, Effect.either);
export class ConfigRepository extends Context.Tag("Service/ConfigRepository")<
ConfigRepository,
{
createMany: (
configs: UnsavedConfig[],
) => Effect.Effect<
number,
| EntitiesAlreadyExistsError
| ValidationError
| InvalidConfigError
| DatabaseError,
TransactionContext
>;
// ...
}
>() {}
export const { createMany, /* ... */ } =
Effect.serviceFunctions(ConfigRepository);
// usage:
const createMany = () =>
flow(ConfigRepository.createMany, Transactions.wrap, Effect.either);