feat: add infra code (#2718)

This commit is contained in:
Himself65
2023-06-08 09:41:20 +08:00
committed by GitHub
parent 4958d096b0
commit f3fd5ff76b
22 changed files with 283 additions and 16 deletions
+30 -1
View File
@@ -1,16 +1,45 @@
/// <reference types="@blocksuite/global" />
import { assertEquals } from '@blocksuite/global/utils';
import type {
DBHandlerManager,
DebugHandlerManager,
DialogHandlerManager,
ExportHandlerManager,
HandlerManager,
PrimitiveHandlers,
UIHandlerManager,
UpdaterHandlerManager,
WorkspaceHandlerManager,
} from '@toeverything/infra';
import getConfig from 'next/config';
import { z } from 'zod';
import { UaHelper } from './ua-helper';
type UnwrapManagerHandler<
Manager extends HandlerManager<string, Record<string, PrimitiveHandlers>>
> = {
[K in keyof Manager['handlers']]: Manager['handlers'][K] extends (
...args: infer Args
) => Promise<infer R>
? (...args: Args) => Promise<R>
: never;
};
declare global {
interface Window {
appInfo: {
electron: boolean;
};
apis: any;
apis: {
db: UnwrapManagerHandler<DBHandlerManager>;
debug: UnwrapManagerHandler<DebugHandlerManager>;
dialog: UnwrapManagerHandler<DialogHandlerManager>;
export: UnwrapManagerHandler<ExportHandlerManager>;
ui: UnwrapManagerHandler<UIHandlerManager>;
updater: UnwrapManagerHandler<UpdaterHandlerManager>;
workspace: UnwrapManagerHandler<WorkspaceHandlerManager>;
};
events: any;
}
}