import { type ComponentType } from "react";
import type { WidgetManifest } from "@fluid-app/portal-core/registries";
import type { RegisteredWidget } from "@fluid-app/widget-runtime";
/**
 * Merges custom widget components from manifests into the default
 * SDK widget registry. Returns the default registry unchanged when
 * no custom widgets are provided (avoids unnecessary object creation).
 */
export type SdkWidgetRegistry = Record<string, ComponentType<any>>;
export declare function buildWidgetRegistry(manifests: readonly WidgetManifest[]): SdkWidgetRegistry;
export type RuntimeRegistryWidget = Pick<RegisteredWidget, "type" | "component">;
export type WidgetRegistryWarningSink = (message: string) => void;
export declare function mergeRegisteredWidgetsIntoRegistry(registry: SdkWidgetRegistry, registeredWidgets: readonly RuntimeRegistryWidget[], warningSink?: WidgetRegistryWarningSink): SdkWidgetRegistry;
//# sourceMappingURL=build-widget-registry.d.ts.map