# Fx.runPromiseExit

Runs an `Fx` stream to completion and returns a Promise of the Exit.

## Signatures

```ts
export declare const runPromiseExit: <A, E>(fx: Fx<A, E>, options?: RunOptions) => Promise<Exit.Exit<void, E>>;
```

## Why

Promise-based hosts can inspect success or the complete typed failure `Cause`
without Promise rejection erasing Effect's `Exit` structure.

## Ownership and lifetime

Calling `runPromiseExit` starts the source immediately on Effect's default runtime,
so all services must already be eliminated. The root fiber owns the source until it
completes; `RunOptions` can supply cancellation. Values are discarded. The Promise
always resolves with an `Exit`, including failure and interruption.

## Examples

```ts
import { Exit } from "effect"
import { fail, runPromiseExit } from "@typed/fx/Fx"

const outcome = runPromiseExit(fail("offline"))
const failed = outcome.then(Exit.isFailure)
```
