import type { Ctx, MilkdownPlugin } from '@milkdown/ctx'; import type { MarkViewConstructor, NodeViewConstructor } from '@milkdown/prose/view'; import type { $Mark, $Node } from '.'; export type $View = MilkdownPlugin & { view: V; type: T; }; export type GetConstructor = T extends $Node ? NodeViewConstructor : T extends $Mark ? MarkViewConstructor : NodeViewConstructor | MarkViewConstructor; export declare function $view>(type: T, view: (ctx: Ctx) => V): $View; export declare function $viewAsync>(type: T, view: (ctx: Ctx) => Promise, timerName?: string): import("./utils").WithTimer<$View>; //# sourceMappingURL=$view.d.ts.map