import React from 'react'; import type { ComponentUI } from '@teambit/component'; import type { Harmony, SlotRegistry } from '@teambit/harmony'; import type { APINodeRenderer } from '@teambit/api-reference.models.api-node-renderer'; import type { SchemaNodeConstructor } from '@teambit/semantics.entities.semantic-schema'; import type { CodeUI } from '@teambit/code'; import type { WorkspaceUI } from '@teambit/workspace'; import type { ComponentCompareUI } from '@teambit/component-compare'; export type APINodeRendererSlot = SlotRegistry; export declare class APIReferenceUI { private host; private apiNodeRendererSlot; private code; private workspace; constructor(host: string, apiNodeRendererSlot: APINodeRendererSlot, code: CodeUI, workspace: WorkspaceUI); static dependencies: import("@teambit/harmony").Aspect[]; static runtime: import("@teambit/harmony").RuntimeDefinition; static slots: ((registerFn: () => string) => SlotRegistry)[]; getAPIPage(): React.JSX.Element; TaggedAPIPage: ({ componentId }: { componentId: string; }) => React.JSX.Element; /** * @deprecated use registerSchemaClasses instead * registerSchemaClasses is better for performance as it lazy-loads the schemas. */ registerSchemaClass(schema: SchemaNodeConstructor): void; registerSchemaClasses(getSchemas: () => SchemaNodeConstructor[]): void; registerAPINodeRenderer(apiNodeRenderers: APINodeRenderer[]): void; apiNodeRenderers: APINodeRenderer[]; static provider([componentUI, codeUI, workspaceUI, componentCompareUI]: [ComponentUI, CodeUI, WorkspaceUI, ComponentCompareUI], _: any, [apiNodeRendererSlot]: [APINodeRendererSlot], harmony: Harmony): Promise; } export default APIReferenceUI;