# Fx.append

Appends a value to the end of an Fx.

## Signatures

```ts
export declare const append: {
    <B>(value: B): <A, E, R>(fx: Fx<A, E, R>) => Fx<A | B, E, R>;
    <A, E, R, B>(fx: Fx<A, E, R>, value: B): Fx<A | B, E, R>;
};
```

## Why

`append` is the constant-value specialization of {@link continueWith}. It
emits a terminal marker after the source run returns, including after a source
failure has been delivered to the Sink.

## Ownership and lifetime

The value is emitted exactly once after every source success and any delivered
source failure. Interruption or a defect that prevents the source run from
returning suppresses it. No resource is acquired; the source error, services,
and observation lifetime are unchanged.

## Examples

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

const framed = Fx.append(Fx.fromIterable([1, 2]), "done")
Effect.runPromise(Fx.collectAll(framed)).then(console.log)
// [1, 2, "done"]
```
