# Fx.runPromise

Runs an `Fx` stream to completion and returns a Promise.
Rejects if the stream fails.

## Signatures

```ts
export declare const runPromise: <A, E>(fx: Fx<A, E>, options?: RunOptions) => Promise<unknown>;
```

## Why

`runPromise` is the direct boundary for Promise-oriented hosts that treat stream
completion as resolution and typed failure as rejection.

## Ownership and lifetime

Calling it starts the source immediately on Effect's default runtime, so the `Fx`
cannot require services. The root fiber owns the subscription until completion;
`RunOptions` controls launch and cancellation. Values are discarded. Typed failures,
defects, and interruption reject according to Effect's `runPromise` semantics.

## Examples

```ts
import { fromIterable, runPromise } from "@typed/fx/Fx"

const completion = runPromise(fromIterable([1, 2, 3]))
const settled = completion.then(() => "done")
```
