import type { ErrTypeOf, NotResultOf, OkTypeOf, Result } from './types'; type Job = () => Generator; type Method = { (this: This): Generator; }; type AsyncJob = () => AsyncGenerator; type AsyncMethod = { (this: This): AsyncGenerator; }; export declare function Do(job: AsyncJob): Promise | NotResultOf, E | ErrTypeOf>>; export declare function Do(method: AsyncMethod, thisArg: This): Promise | NotResultOf, E | ErrTypeOf>>; export declare function Do(job: Job): Result | NotResultOf, E | ErrTypeOf>; export declare function Do(method: Method, thisArg: This): Result | NotResultOf, E | ErrTypeOf>; export {};