export function decodeIterable({ port }: RemoteIterable, decode: (arg0: I) => O): AsyncIterable; export function encodeIterable(iterable: AsyncIterable | Iterable, encode: (arg0: I, arg1: Set) => O, transfer: Set): RemoteIterable; export function encodeCallback(callback: Function, transfer: Set): RemoteCallback; export function decodeCallback({ port }: RemoteCallback): (arg0: T[]) => void | ((arg0: T[], arg1: Set) => void); export type RemoteIterable = { type: 'RemoteIterable'; port: MessagePort; }; export type RemoteCallback = { type: 'RemoteCallback'; port: MessagePort; }; export type RemoteYield = { done: false; value: T; error: void; }; export type RemoteDone = { done: true; value: T | void; error: void; }; export type EncodedError = import('./error').EncodedError; export type RemoteError = { done: true; value: void; error: EncodedError; }; export type RemoteNext = RemoteYield | RemoteDone | RemoteError; //# sourceMappingURL=core.d.ts.map