pipes: {
    diff: Pipe<DiffContext>;
    patch: Pipe<PatchContext>;
    reverse: Pipe<ReverseContext>;
  };