/**
 * 环境检测工具集
 *
 * 集中放置 SSR / 测试 / 移动端 / 设备品牌 / 微信等运行环境判断，
 * 替代散落在 `RefinePromptButton/env.ts`、`AttachmentButton/utils.ts`、
 * `BorderBeamAnimation`、`useInputFieldGeometry` 等模块中的同义实现。
 *
 * 设计原则：
 * - 所有函数对 SSR 安全（`typeof window === 'undefined'` 时返回保守默认值）
 * - 不依赖任何业务模块，可被任意 hook / 组件复用
 * - 设备品牌识别表与具体业务（附件按钮）解耦
 */
/**
 * 是否运行在浏览器环境（同时具备 window + document）。
 * 用于 SSR 防御。
 */
export declare function isBrowser(): boolean;
/**
 * 是否运行在 Vitest / Jest 等单测环境。
 * 用于跳过 ResizeObserver 等无意义的副作用，避免污染测试输出。
 */
export declare function isTest(): boolean;
/**
 * 获取设备品牌（基于 User Agent 字符串）。
 *
 * @param ua 可选的 UA 字符串；不传则使用 `navigator.userAgent`
 * @returns 命中品牌名；未命中时尝试从 `; XXX Build` 兜底，仍取不到返回 `false`
 */
export declare function getDeviceBrand(ua?: string): string | false;
/** 是否 vivo 设备 */
export declare function isVivoDevice(ua?: string): boolean;
/** 是否 oppo 设备 */
export declare function isOppoDevice(ua?: string): boolean;
/** 是否 vivo / oppo 设备（用于 input[accept] 兼容判断） */
export declare function isVivoOrOppoDevice(ua?: string): boolean;
/**
 * 是否移动设备
 *
 * 综合 UA、触摸能力与窗口宽度三重判断；SSR 下返回 `false`。
 */
export declare function isMobileDevice(): boolean;
/** 是否运行在微信内置浏览器 */
export declare function isWeChat(ua?: string): boolean;
