/** * 网络状态,混合了 web 和小游戏环境。 * @since 1.0.9 * @example * ```ts * import { getNetworkType, type NetworkType } from 'minigame-std'; * * const networkType: NetworkType = await getNetworkType(); * if (networkType === 'wifi') { * console.log('当前使用 WiFi 网络'); * } * ``` */ type NetworkType = 'wifi' | 'slow-2g' | '2g' | '3g' | '4g' | '5g' | 'unknown' | 'none'; /** * 获取网络状态。 * @returns 根据浏览器支持情况不同,返回值可能为 `wifi` | `none` | `unknown` | `slow-2g` | `2g` | `3g` | `4g` * @since 1.0.9 * @example * ```ts * const networkType = await getNetworkType(); * console.log('当前网络类型:', networkType); * if (networkType === 'none') { * console.log('当前无网络连接'); * } * ``` */ declare function getNetworkType(): Promise; /** * 监听网络状态变化。 * @param listener - 网络状态变化的回调函数。 * @returns 返回一个函数,调用该函数可以移除监听器。 * @since 1.0.9 * @example * ```ts * const removeListener = addNetworkChangeListener((type) => { * console.log('网络状态变化:', type); * if (type === 'none') { * console.log('网络已断开'); * } * }); * * // 移除监听器 * removeListener(); * ``` */ declare function addNetworkChangeListener(listener: (type: NetworkType) => void): () => void; export { addNetworkChangeListener, getNetworkType }; export type { NetworkType };