UNPKG

@atlaskit/editor-nodeview-data-provider

Version:

NodeView data provider for @atlaskit/editor-core plugins

57 lines (56 loc) 1.77 kB
export declare function useNodeViewDataProvider(): void; import type { Node as PMNode } from '@atlaskit/editor-prosemirror/model'; import type { buildCaches } from './provider-cache'; import type { NodeViewDataProvider } from './index'; export type { buildCaches as __doNotUseThisType }; /** * Access the value via {@link NodeViewDataProvider} when cached. * * It will return the value of the provider if it is already available. * * For more information on building caches, see {@link buildCaches}. * * @example * ```ts * await buildCaches({ adf, oneTickProviders: [emojiNodeViewDataProvider] }); * const value = useNodeViewDataProviderValue({ provider: emojiNodeViewDataProvider, node }); * if (value) { * return <SinglePassRenderEmoji emoji={value} />; * } * return <LegacyMultiPassRenderEmoji node={node} />; * ``` */ export declare function useNodeViewDataProviderValue<_NodeViewDataProvider extends NodeViewDataProvider<any, any>>(options: { provider: _NodeViewDataProvider; node: PMNode; }): any; /** * * * This hook is intended to simplify accessing data via the one tick providers. * * ```ts * const value = useNodeViewDataProviderGet(emojiProvider, emojiNode); * * if (value.state === 'loading') { * return <Loading />; * } * if (value.state === 'failed') { * return <Fallback />; * } * return <Emoji properties=(value.result) /> * ``` */ export declare function useNodeViewDataProviderGet<_NodeViewDataProvider extends NodeViewDataProvider<any, any>>(options: { provider: _NodeViewDataProvider; node: PMNode; }): { state: "loading"; result: undefined; } | { state: "failed"; result: undefined; } | { state: "resolved"; result: _NodeViewDataProvider["cache"][string] & ({} | null); };