[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [local‑first/Shared](https://evolu.dev/docs/api-reference/common/local-first/Shared) › EvoluInput

```ts
type EvoluInput =
  | {
      changes: NonEmptyReadonlyArray<MutationChange>;
      onCompleteIds: ReadonlyArray<Id>;
      subscribedQueries: ReadonlySet<Query>;
      type: "Mutate";
    }
  | {
      actions: ReadonlyArray<{
        action: "add" | "remove";
        owner: SyncOwner;
      }>;
      type: "UseOwner";
    }
  | {
      queries: NonEmptyReadonlySet<Query>;
      type: "Query";
    }
  | {
      type: "Export";
    }
  | {
      type: "Dispose";
    };
```

Defined in: [packages/common/src/local-first/Shared.ts:96](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/local-first/Shared.ts#L96)