export declare const DEFAULT_TIMEOUT = 15000; export declare type Transformer = { input: (req: ReqO) => ReqI; output: (res: ResI) => ResO; }; export declare type Requester = (req: Req, timeout?: number) => Promise; export declare type RequesterUnit = () => Promise; export declare type Tagged = { type: string; data: T; }; /** * Take a Requester function which deals with tagged requests and responses, * and return a Requester which deals only with the inner data types, also * with the optional Transformer applied to further modify the input and output. */ export declare const requesterTransformer: (requester: Requester, Tagged>, tag: string, transform?: Transformer) => (req: ReqO, timeout?: number) => Promise; export declare const catchError: (res: any) => Promise; export declare const promiseTimeout: (promise: Promise, tag: string, ms: number) => Promise;