type UnPromisify = T extends Promise ? UnPromisify : T; type RegularFunction = (...args: any[]) => T; type AsyncFunction> = (...args: any[]) => T; type AnyFunction = RegularFunction | AsyncFunction; type Handled = [UnPromisify>, null] | [null, Error]; export declare function e(func: Func): Promise>; export declare function e(func: Func): Handled; export declare function func(func: Func): (...args: Parameters) => Promise>; export declare function func(func: Func): (...args: Parameters) => Handled; export {};