UNPKG

@connectv/core

Version:

agent-based reactive programming library for typescript/javascript

42 lines (41 loc) 1.31 kB
import { OperatorFunction } from 'rxjs'; import { Emission } from '../shared/emission'; import { Pin } from './pin'; import { PinLike } from './pin-like'; export declare type PipeFunc = OperatorFunction<Emission, Emission>; /** * * Represents [pipe](https://connective.dev/docs/pipe) pins. * */ export declare class Pipe extends Pin { /** * * The list of pipe functions that constitute this pipe. * */ readonly pipes: PipeFunc[]; constructor(pipes: PipeFunc[]); /** * * Resolves the underling observable of the pin, by * [mergeing](https://rxjs-dev.firebaseapp.com/api/index/function/merge) * observables of inbound pins and piping them through specified * [pipeable operators](https://github.com/ReactiveX/rxjs/blob/master/doc/pipeable-operators.md). * * @param inbound * */ protected resolve(inbound: PinLike[]): import("rxjs").Observable<Emission>; } /** * * Creates a [pipe](https://connective.dev/docs/pipe) pin using given pipe functions. * You can utilize this to use RxJS's pipeable operators in CONNECTIVE flows. * [Checkout the docs](https://connective.dev/docs/pipe) for examples and further information. * * @param pipes * */ export declare function pipe(...pipes: PipeFunc[]): Pipe; export default pipe;