hunk.code_window: it('should enforce type on selector', () => {
     const a = of(1, 2, 3).pipe(publish((x: Observable<string>) => x)); // $ExpectError
   });
  
hunk.labels: keep keep add
hunk.after_edit: it('should support union types in selector', () => {
     const a = of(1, 2, 3).pipe(publish(() => Math.random() > 0.5 ? of(123) : of('test'))); // $ExpectType Observable<string | number>
   });
hunk.file_path: spec-dtslint/operators/publish-spec.ts
hunk.type: add
file: export * from 'rxjs-compat/operators/timeoutWith';
  