import { Effect, TakeEffectDescriptor, PutEffectDescriptor, RaceEffectDescriptor, CallEffectDescriptor, ForkEffectDescriptor, SelectEffectDescriptor, ActionChannelEffectDescriptor } from "./effects"; import {Predicate, Task} from "./types"; export const TASK: string; export function noop(): void; export const is: { undef: Predicate; notUndef: Predicate; func: Predicate; number: Predicate; array: Predicate; promise: Predicate; iterator: Predicate; task: Predicate; take: Predicate; put: Predicate; observable: Predicate; buffer: Predicate; pattern: Predicate; stringableFunc: Predicate; }; interface Deferred { resolve(result: R): void; reject(error: any): void; promise: Promise; } export function deferred(props?: T): T & Deferred; export function arrayOfDeffered(length: number): Deferred[]; interface MockTask extends Task { setRunning(running: boolean): void; setResult(result: any): void; setError(error: any): void; } export function createMockTask(): MockTask; export const asEffect: { take(effect: Effect): TakeEffectDescriptor; put(effect: Effect): PutEffectDescriptor; race(effect: Effect): RaceEffectDescriptor; call(effect: Effect): CallEffectDescriptor; cps(effect: Effect): CallEffectDescriptor; fork(effect: Effect): ForkEffectDescriptor; join(effect: Effect): Task; cancel(effect: Effect): Task; select(effect: Effect): SelectEffectDescriptor; actionChannel(effect: Effect): ActionChannelEffectDescriptor; cancelled(effect: Effect): {}; };