# sliceEffect

Slices an Fx with bounds produced by an Effect.

## Signatures

```ts
export declare const sliceEffect: {
    <E2, R2>(bounds: Effect.Effect<Bounds, E2, R2>): <A, E, R>(fx: Fx<A, E, R>) => Fx<A, E | E2, R | R2>;
    <A, E, R, E2, R2>(fx: Fx<A, E, R>, bounds: Effect.Effect<Bounds, E2, R2>): Fx<A, E | E2, R | R2>;
};
```

## Why

`sliceEffect` delays selection of the bounds until consumption, allowing configuration to fail or
require services before the source is subscribed.

## Ownership and lifetime

The bounds Effect runs once per consumer. If it fails or is interrupted the source never starts;
after success, ordinary `slice` owns only its per-run counters.

## Examples

```ts
import { Effect } from "effect"
import { Fx } from "@typed/fx"

const page = Fx.fromIterable([1, 2, 3]).pipe(Fx.sliceEffect(Effect.succeed({ skip: 1, take: 1 })))
```
