import { type InitialState } from '../util/resolveHookState.js'; export type NetworkInformation = { readonly downlink: number; readonly downlinkMax: number; readonly effectiveType: 'slow-2g' | '2g' | '3g' | '4g'; readonly rtt: number; readonly saveData: boolean; readonly type: 'bluetooth' | 'cellular' | 'ethernet' | 'none' | 'wifi' | 'wimax' | 'other' | 'unknown'; } & EventTarget; export type UseNetworkState = { online: boolean | undefined; previous: boolean | undefined; since: Date | undefined; downlink: NetworkInformation['downlink'] | undefined; downlinkMax: NetworkInformation['downlinkMax'] | undefined; effectiveType: NetworkInformation['effectiveType'] | undefined; rtt: NetworkInformation['rtt'] | undefined; saveData: NetworkInformation['saveData'] | undefined; type: NetworkInformation['type'] | undefined; }; export declare function useNetworkState(initialState?: InitialState): UseNetworkState;