[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [Schedule](https://evolu.dev/docs/api-reference/common/Schedule) › mapSchedule

```ts
function mapSchedule<A, B>(
  f: (a: A) => B,
): <Input>(schedule: Schedule<A, Input>) => Schedule<B, Input>;
```

Defined in: [packages/common/src/Schedule.ts:1394](https://github.com/evoluhq/evolu/blob/dd96d79f1dbe9a49fa12ce8e0aa7d3d0177795ca/packages/common/src/Schedule.ts#L1394)

Transforms the output of a schedule.

The delay (second tuple element) remains unchanged.

### Mapping schedule output

```ts
import {
  assertOk,
  exponential,
  mapSchedule,
  testCreateDeps,
  type Millis,
} from "@evolu/common";

const schedule = mapSchedule((delay: Millis) => ({
  delay,
  doubled: delay * 2,
}))(exponential("100ms"));
const step = schedule(testCreateDeps());
assertOk(step(undefined), [{ delay: 100, doubled: 200 }, 100]);
```