You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							49 lines
						
					
					
						
							1.9 KiB
						
					
					
				
			
		
		
	
	
							49 lines
						
					
					
						
							1.9 KiB
						
					
					
				import { Observable } from '../Observable'; | 
						|
import { MonoTypeOperatorFunction } from '../types'; | 
						|
/** | 
						|
 * Returns an Observable that emits the single item emitted by the source Observable that matches a specified | 
						|
 * predicate, if that Observable emits one such item. If the source Observable emits more than one such item or no | 
						|
 * items, notify of an IllegalArgumentException or NoSuchElementException respectively. If the source Observable | 
						|
 * emits items but none match the specified predicate then `undefined` is emitted. | 
						|
 * | 
						|
 * <span class="informal">Like {@link first}, but emit with error notification if there is more than one value.</span> | 
						|
 *  | 
						|
 * | 
						|
 * ## Example | 
						|
 * emits 'error' | 
						|
 * ```ts | 
						|
 * import { range } from 'rxjs'; | 
						|
 * import { single } from 'rxjs/operators'; | 
						|
 * | 
						|
 * const numbers = range(1,5).pipe(single()); | 
						|
 * numbers.subscribe(x => console.log('never get called'), e => console.log('error')); | 
						|
 * // result | 
						|
 * // 'error' | 
						|
 * ``` | 
						|
 * | 
						|
 * emits 'undefined' | 
						|
 * ```ts | 
						|
 * import { range } from 'rxjs'; | 
						|
 * import { single } from 'rxjs/operators'; | 
						|
 * | 
						|
 * const numbers = range(1,5).pipe(single(x => x === 10)); | 
						|
 * numbers.subscribe(x => console.log(x)); | 
						|
 * // result | 
						|
 * // 'undefined' | 
						|
 * ``` | 
						|
 * | 
						|
 * @see {@link first} | 
						|
 * @see {@link find} | 
						|
 * @see {@link findIndex} | 
						|
 * @see {@link elementAt} | 
						|
 * | 
						|
 * @throws {EmptyError} Delivers an EmptyError to the Observer's `error` | 
						|
 * callback if the Observable completes before any `next` notification was sent. | 
						|
 * @param {Function} predicate - A predicate function to evaluate items emitted by the source Observable. | 
						|
 * @return {Observable<T>} An Observable that emits the single item emitted by the source Observable that matches | 
						|
 * the predicate or `undefined` when no items match. | 
						|
 * | 
						|
 * @method single | 
						|
 * @owner Observable | 
						|
 */ | 
						|
export declare function single<T>(predicate?: (value: T, index: number, source: Observable<T>) => boolean): MonoTypeOperatorFunction<T>;
 | 
						|
 |