@@ -3,15 +3,13 @@ import { Operator } from '../Operator';
3
3
import { Subscriber } from '../Subscriber' ;
4
4
import { Observable } from '../Observable' ;
5
5
import { ConnectableObservable , connectableObservableDescriptor } from '../observable/ConnectableObservable' ;
6
- import { MonoTypeOperatorFunction , OperatorFunction , UnaryFunction } from '../types' ;
6
+ import { MonoTypeOperatorFunction , OperatorFunction , UnaryFunction , ObservedValueOf , ObservableInput } from '../types' ;
7
7
8
8
/* tslint:disable:max-line-length */
9
9
export function multicast < T > ( subject : Subject < T > ) : UnaryFunction < Observable < T > , ConnectableObservable < T > > ;
10
- export function multicast < T > ( subject : Subject < T > , selector ?: MonoTypeOperatorFunction < T > ) : MonoTypeOperatorFunction < T > ;
11
- export function multicast < T , R > ( subject : Subject < T > , selector ?: OperatorFunction < T , R > ) : OperatorFunction < T , R > ;
12
- export function multicast < T > ( SubjectFactory : ( this : Observable < T > ) => Subject < T > ) : UnaryFunction < Observable < T > , ConnectableObservable < T > > ;
13
- export function multicast < T > ( SubjectFactory : ( this : Observable < T > ) => Subject < T > , selector ?: MonoTypeOperatorFunction < T > ) : MonoTypeOperatorFunction < T > ;
14
- export function multicast < T , R > ( SubjectFactory : ( this : Observable < T > ) => Subject < T > , selector ?: OperatorFunction < T , R > ) : OperatorFunction < T , R > ;
10
+ export function multicast < T , O extends ObservableInput < any > > ( subject : Subject < T > , selector : ( shared : Observable < T > ) => O ) : UnaryFunction < Observable < T > , ConnectableObservable < ObservedValueOf < O > > > ;
11
+ export function multicast < T > ( subjectFactory : ( this : Observable < T > ) => Subject < T > ) : UnaryFunction < Observable < T > , ConnectableObservable < T > > ;
12
+ export function multicast < T , O extends ObservableInput < any > > ( SubjectFactory : ( this : Observable < T > ) => Subject < T > , selector : ( shared : Observable < T > ) => O ) : OperatorFunction < T , ObservedValueOf < O > > ;
15
13
/* tslint:enable:max-line-length */
16
14
17
15
/**
0 commit comments