import React from "react";
import { BaseResponsiveProps, WithResponsiveOptions } from "./type";
declare type ResponsiveComponent
= React.ComponentType
| React.ForwardRefExoticComponent & React.RefAttributes>;
/**
* 用 `withResponsive` 包裹任意 React 组件,使其自动获得:
* - 响应式 variant 注入:默认 `variant = currentBreakpoint`,规则可覆盖;
* - 全局 / 本地覆写规则注入:按 nodeType+nodeId+when 命中后浅合并 props;
* - 编辑模式长按编辑:`editMode === true` 时自动套 `ResponsiveEditWrapper`。
*
* **运行时引用规则**:所有 React 资产(`useResponsive` / `ResponsiveOverrideContext`)
* 都通过 `app.responsive.{hooks,components}` 命名空间访问,**不直接 import @terra 实体**;
* 仅类型走 `import type` 走 @terra(编译期擦除)。
*
* 由于 `withResponsive` 是纯函数工厂,模块顶层调用 0 副作用;hook/Context 取值发生在
* 组件渲染期,那时 `app.responsive` 必已就绪(terra/bootstrap 同步注册)。
*
* @example
* interface OrderItemProps extends BaseResponsiveProps {
* title: string;
* }
* const OrderItem: React.FC = ({ title, variant, className }) => (
*
* {variant === 'phone' ? {title} : {title}}
*
* );
* OrderItem.displayName = 'OrderItem';
* export default withResponsive(OrderItem);
*/
export declare function withResponsive(Component: ResponsiveComponent
, options?: WithResponsiveOptions): React.ForwardRefExoticComponent & React.RefAttributes>;
export default withResponsive;