select<T>(selector: (state: any, ...states: any[]) => T): Observable<T>;