import * as types from '@most/types'; import * as Alt_ from 'fp-ts/Alt'; import { Alternative1 } from 'fp-ts/Alternative'; import * as App from 'fp-ts/Applicative'; import * as Ap from 'fp-ts/Apply'; import * as CH from 'fp-ts/Chain'; import { ChainRec1 } from 'fp-ts/ChainRec'; import { Compactable1 } from 'fp-ts/Compactable'; import { Either } from 'fp-ts/Either'; import { Eq } from 'fp-ts/Eq'; import { Filterable1 } from 'fp-ts/Filterable'; import { FromIO1 } from 'fp-ts/FromIO'; import { FromTask1 } from 'fp-ts/FromTask'; import { Functor1 } from 'fp-ts/Functor'; import { Monad1 } from 'fp-ts/Monad'; import { Monoid } from 'fp-ts/Monoid'; import * as O from 'fp-ts/Option'; import { Pointed1 } from 'fp-ts/Pointed'; import { Predicate } from 'fp-ts/Predicate'; import { Separated } from 'fp-ts/Separated'; import * as FRe from './FromResume'; import { Arity1 } from './function'; import * as R from './Resume'; /** * @since 0.9.2 * @category Model */ export declare type Stream = types.Stream; /** * @since 0.9.2 * @category Type-level */ export declare type ValueOf = [A] extends [Stream] ? R : never; /** * Convert an IO into a Most.js Task * @since 0.9.2 * @category Constructor */ export declare function createCallbackTask(cb: Arity1, onError?: (error: Error) => void): types.Task; /** * @since 0.9.2 * @category URI */ export declare const URI: "@most/core/Stream"; /** * @since 0.9.2 * @category URI */ export declare type URI = typeof URI; declare module 'fp-ts/HKT' { interface URItoKind { [URI]: types.Stream; } } /** * Create a Stream monoid where concat is a parallel merge. */ /** * @since 0.9.2 * @category Typeclass Constructor */ export declare const getMonoid: () => Monoid>; /** * Filter Option's from within a Stream */ /** * @since 0.9.2 * @category Combinator */ export declare const compact: (stream: types.Stream>) => types.Stream; /** * Separate left and right values */ /** * @since 0.9.2 * @category Combinator */ export declare const separate: (stream: types.Stream>) => Separated, types.Stream>; /** * @since 0.9.2 * @category Combinator */ export declare const partitionMap: (f: (a: A) => Either) => (fa: types.Stream) => Separated, types.Stream>; /** * @since 0.9.2 * @category Combinator */ export declare const partition: (predicate: Predicate) => (fa: types.Stream) => Separated, types.Stream>; /** * @since 0.9.2 * @category Combinator */ export declare const filterMap: (f: (a: A) => O.Option) => (fa: types.Stream) => types.Stream; /** * @since 0.9.2 * @category Instance */ export declare const Functor: Functor1; /** * @since 0.9.2 * @category Instance */ export declare const Pointed: Pointed1; /** * @since 0.9.2 * @category Constructor */ export declare const of: (a: A) => types.Stream; /** * @since 0.9.2 * @category Instance */ export declare const Apply: Ap.Apply1; /** * @since 0.9.2 * @category Combinator */ export declare const apFirst: (second: types.Stream) => (first: types.Stream) => types.Stream; /** * @since 0.9.2 * @category Combinator */ export declare const apS: (name: Exclude, fb: types.Stream) => (fa: types.Stream) => types.Stream<{ readonly [K in N | keyof A]: K extends keyof A ? A[K] : B; }>; /** * @since 0.9.2 * @category Combinator */ export declare const apSecond: (second: types.Stream) => (first: types.Stream) => types.Stream; /** * @since 0.9.2 * @category Combinator */ export declare const apT: (fb: types.Stream) => (fas: types.Stream) => types.Stream; /** * @since 0.9.2 * @category Typeclass Constructor */ export declare const getApplySemigroup: (S: import("fp-ts/Semigroup").Semigroup) => import("fp-ts/Semigroup").Semigroup>; /** * @since 0.9.2 * @category Instance */ export declare const Applicative: App.Applicative1; /** * @since 0.9.2 * @category Typeclass Constructor */ export declare const getApplicativeMonoid: (M: Monoid) => Monoid>; /** * @since 0.9.2 * @category Instance */ export declare const Chain: CH.Chain1; /** * @since 0.9.2 * @category Combinator */ export declare const chainFirst: (f: (a: A) => types.Stream) => (first: types.Stream) => types.Stream; /** * @since 0.9.2 * @category Combinator */ export declare const bind: (name: Exclude, f: (a: A) => types.Stream) => (ma: types.Stream) => types.Stream<{ readonly [K in N | keyof A]: K extends keyof A ? A[K] : B; }>; /** * @since 0.9.2 * @category Instance */ export declare const Monad: Monad1; /** * @since 0.9.2 * @category Combinator */ export declare const chainRec: (f: (value: A) => types.Stream>) => (value: A) => types.Stream; /** * @since 0.9.2 * @category Instance */ export declare const ChainRec: ChainRec1; /** * @since 0.9.2 * @category Combinator */ export declare const switchRec: (f: (value: A) => types.Stream>) => (value: A) => types.Stream; /** * @since 0.9.2 * @category Instance */ export declare const SwitchRec: ChainRec1; /** * @since 0.9.2 * @category Combinator */ export declare const mergeConcurrentlyRec: (concurrency: number) => (f: (value: A) => types.Stream>) => (value: A) => types.Stream; /** * @since 0.9.2 * @category Typeclass Constructor */ export declare const getConcurrentChainRec: (concurrency: number) => ChainRec1; /** * @since 0.9.2 * @category Instance */ export declare const FromIO: FromIO1; /** * @since 0.9.2 * @category Constructor */ export declare const fromIO: import("fp-ts/NaturalTransformation").NaturalTransformation11<"IO", "@most/core/Stream">; /** * @since 0.9.2 * @category Instance */ export declare const FromTask: FromTask1; /** * @since 0.9.2 * @category Constructor */ export declare const fromTask: import("fp-ts/NaturalTransformation").NaturalTransformation11<"Task", "@most/core/Stream">; /** * @since 0.9.2 * @category Instance */ export declare const FromResume: FRe.FromResume1; /** * @since 0.9.2 * @category Constructor */ export declare const fromResume: import("fp-ts/NaturalTransformation").NaturalTransformation11<"@typed/fp/Resume", "@most/core/Stream">; /** * @since 0.9.2 * @category Combinator */ export declare const chainFirstResumeK: (f: (value: A) => R.Resume) => (hkt: types.Stream) => types.Stream; /** * @since 0.9.2 * @category Combinator */ export declare const chainResumeK: (f: (value: A) => R.Resume) => (hkt: types.Stream) => types.Stream; /** * @since 0.9.2 * @category Constructor */ export declare const fromResumeK: (f: (...args: A) => R.Resume) => (...args: A) => types.Stream; /** * @since 0.9.2 * @category Instance */ export declare const Alt: Alt_.Alt1; /** * @since 0.9.2 * @category Combinator */ export declare const race: (second: import("fp-ts/function").Lazy>) => (first: types.Stream) => types.Stream; /** * @since 0.9.2 * @category Instance */ export declare const Alternative: Alternative1; /** * @since 0.9.2 * @category Constructor */ export declare const zero: () => types.Stream; /** * @since 0.9.2 * @category Instance */ export declare const Compactable: Compactable1; /** * @since 0.9.2 * @category Instance */ export declare const Filterable: Filterable1; /** * @since 0.9.2 * @category Constructor */ export declare const Do: types.Stream<{}>; /** * @since 0.9.2 * @category Combinator */ export declare const bindTo: (name: N) => (fa: types.Stream) => types.Stream<{ [K in N]: A; }>; /** * @since 0.9.2 * @category Combinator */ export declare const tupled: (fa: types.Stream) => types.Stream; /** * @since 0.9.2 * @category Constructor */ export declare const createSink: (sink?: Partial>) => types.Sink; /** * @since 0.9.2 * @category Combinator */ export declare const collectEvents: (scheduler: types.Scheduler) => (stream: types.Stream) => Promise; /** * @since 0.9.2 * @category Combinator */ export declare const onDispose: (disposable: types.Disposable) => (stream: types.Stream) => types.Stream; /** * @since 0.9.2 * @category Combinator */ export declare const combineAll: []>(...streams: A) => types.Stream<{ readonly [K in keyof A]: ValueOf; }>; /** * @since 0.11.0 * @category Combinator */ export declare const combineStruct: (streams: { readonly [K in keyof A]: types.Stream; }) => types.Stream; /** * @since 0.9.2 * @category Combinator */ export declare const exhaustLatest: (stream: types.Stream>) => types.Stream; /** * @since 0.9.2 * @category Combinator */ export declare const exhaustMapLatest: (f: (value: A) => types.Stream) => (stream: types.Stream) => types.Stream; /** * Using the provided Eq mergeMapWhen conditionally applies a Kliesli arrow * to the values within an Array when they are added and any values removed * from the array will be disposed of immediately * @since 0.9.2 * @category Combinator */ export declare const mergeMapWhen: (Eq?: Eq) => (f: (value: V) => types.Stream) => (values: Stream) => Stream; /** * @since 0.9.2 * @category Combinator */ export declare const keyed: (Eq: Eq) => (stream: Stream) => Stream[]>; /** * @since 0.9.2 * @category Combinator */ export declare const switchFirst: (second: Stream) => (first: Stream) => Stream; /** * @since 0.9.2 * @category Combinator */ export declare function mergeFirst(a: Stream): (b: Stream) => Stream; export * from '@most/core'; export * from '@most/types'; //# sourceMappingURL=Stream.d.ts.map