import type { DeclarationId, ProviderId, RegisterId, RuntimeContext, ScopeId } from '@/types';
import type { PropService } from 'utils/effect';
export type ComponentInstanceApi = {
    register: (id: RegisterId, declarationId: DeclarationId, upstreamModules: Map<ProviderId, Set<RuntimeContext<any, never, PropService>>>) => void;
    dispose: (id: RegisterId) => void;
    getDeclarationId: (id: RegisterId) => DeclarationId | null;
    getUpstreamById: (id: RegisterId) => Map<ProviderId, Set<RuntimeContext<any, never, PropService>>>;
};
export declare const useComponentInstance: (_: ScopeId) => ComponentInstanceApi;
export declare const getComponentInstance: (scopeId: ScopeId) => ComponentInstanceApi;
