UNPKG

@donverduyn/react-runtime

Version:
18 lines (17 loc) 1.26 kB
import type { ComponentInstanceApi } from '@/hooks/useComponentInstance/useComponentInstance'; import type { DryRunCandidateAncestor } from '@/hooks/useDryRun/factories/DryRunCandidate'; import { type DryRunApi } from '@/hooks/useDryRun/useDryRun'; import type { TreeMapStore } from '@/hooks/useTreeMap/useTreeMap'; import type { DeclarationId, ProviderEntry, ScopeId, RegisterId, RuntimeContext } from '@/types'; import type { PropService } from 'utils/effect'; export type ProviderTreeApi = { register: (id: DeclarationId, providers: ProviderEntry<any, any>[]) => void; getRoot: (dryRunInstance: DryRunApi) => DryRunCandidateAncestor; getRootAncestors: (dryRunInstance: DryRunApi) => Map<RegisterId, DryRunCandidateAncestor>; resolveProviderData: (id: RegisterId, dryRunInstance: DryRunApi, initialModules?: Set<RuntimeContext<any, never, PropService>>) => readonly [ Map<RegisterId, DryRunCandidateAncestor>, DryRunCandidateAncestor ]; }; export declare const useProviderTree: (scopeId: ScopeId, treeMap: TreeMapStore, componentInstanceApi: ComponentInstanceApi) => ProviderTreeApi; export declare const getProviderTree: (scopeId: ScopeId, treeMap: TreeMapStore, componentTree: ComponentInstanceApi) => ProviderTreeApi;