/** @packageDocumentation
 * @module Widget
 */
import "./Widget.scss";
import * as React from "react";
import type { CommonProps } from "@itwin/core-react";
import { Rectangle } from "@itwin/core-react";
import type { WidgetState } from "../state/WidgetState";
import type { SizeProps } from "../../utils/SizeProps";
/** @internal */
export interface WidgetProviderProps {
    id: WidgetState["id"];
    children?: React.ReactNode;
}
/** @internal */
export declare function WidgetProvider(props: WidgetProviderProps): React.JSX.Element;
/** @internal */
export interface WidgetProps extends CommonProps {
    children?: React.ReactNode;
    onMouseEnter?: (event: React.MouseEvent<HTMLElement, MouseEvent>) => void;
    onMouseLeave?: (event: React.MouseEvent<HTMLElement, MouseEvent>) => void;
    onTransitionEnd?(): void;
    widgetId?: string;
}
/** @internal */
export declare const Widget: React.ForwardRefExoticComponent<WidgetProps & React.RefAttributes<HTMLDivElement>>;
/** @internal */
export declare const WidgetIdContext: React.Context<string | undefined>;
/** @internal */
export interface WidgetContextArgs {
    measure: () => Rectangle;
}
/** @internal */
export declare const WidgetContext: React.Context<WidgetContextArgs>;
/** @internal */
export declare function restrainInitialWidgetSize(size: SizeProps, nzSize: SizeProps): SizeProps;
/** @internal */
export declare function useActiveTabId(): string;
//# sourceMappingURL=Widget.d.ts.map