import Observable from 'zen-observable'; import { Backend } from './backend'; import { API } from './types'; interface MagicAPIFrontendConfig { host: string; port: number; } declare type AsyncWrap any> = ReturnType extends Promise ? T : ReturnType extends Observable ? T : (...args: Parameters) => Promise>; declare type Frontend = { [P in keyof Methods]: AsyncWrap; }; export default function frontend>(userConfig?: Partial): T extends Backend ? Frontend : never; export {}; //# sourceMappingURL=frontend.d.ts.map