# startLoading

Starts loading while preserving successful, failed, and optimistic history.

## Signatures

```ts
export declare const startLoading: <A, E>(data: AsyncData<A, E>, progress?: Progress) => AsyncData<A, E>;
```

## Why

Refreshes should keep usable values or causes visible, and optimistic layers must remain in their original order. Cyclic history throws `TypeError`.

## Ownership and lifetime

This pure transformation acquires no resources and returns new plain wrappers where rebuilding is needed.

## Examples

```ts
import { startLoading, success } from "@typed/async-data"
const refreshing = startLoading(success("cached"))
```
