import { EventFunction } from "./generator"; import { _ChannelInternal as tChannel } from "./channel"; import { IChannel } from "./IChannel"; export declare const generatorImplements: { /** * waits untill the dispatch of a specified type then resolves with the data * @param data the string type or types to wait on * @param channel */ take: (data: EventFunction, channel: IChannel) => Promise; /** * Calls `channel.send` on the current hub * @param data action type and data to send * @param channel */ put: (data: EventFunction<{ type: string; data: any; }>, channel: IChannel) => Promise; /** * Calls an async func (ManualPromise) or generator func and waits until its completion * @param data async func or generator * @param channel */ call: (data: EventFunction<{ func: (...args: A) => any; args: A; }>) => Promise; fork: (data: EventFunction<{ func: (...args: A_1) => any; args: A_1; }>, channel: tChannel) => Promise; delay: (data: EventFunction) => Promise; takeLatest: (data: EventFunction<{ type: string | string[]; func: (data: any) => void | IterableIterator; }>, channel: IChannel) => Promise; takeEvery: (data: EventFunction<{ type: string | string[]; func: (data: any) => void | IterableIterator; }>, channel: IChannel) => Promise; takeLast: (data: EventFunction<{ type: string | string[]; func: (data: any) => void | IterableIterator; }>, channel: IChannel) => Promise; };