import { Observable, operate } from '../Observable.js';
export function filter(predicate, thisArg) {
    return (source) => new Observable((destination) => {
        let index = 0;
        source.subscribe(operate({ destination, next: (value) => predicate.call(thisArg, value, index++) && destination.next(value) }));
    });
}//# sourceMappingURL=http://go/sourcemap/sourcemaps/31e8d61c448c7472e371505838a0fe34083dad50/node_modules/rxjs/dist/esm/internal/operators/filter.js.map