type Callback = (...args: any[]) => void; type Defer = { wait: () => Promise; cancel: () => void; }; export declare function defer(callback: TCallback): TCallback & Defer; export {};