detect-features
Version:
Detect and report browser and hardware features
69 lines (68 loc) • 2.52 kB
TypeScript
export declare const getFeatures: () => Promise<{
browserFeatures: {
browserType: {
browserName: string;
browserVersion: string;
isAndroid: boolean | import("detect-ua").IDeviceResult;
isChrome: boolean;
isChromium: boolean;
isDesktop: boolean;
isEdge: boolean;
isFirefox: boolean;
isInternetExplorer: boolean;
isMobile: boolean;
isOpera: boolean;
isSafari: boolean;
isSamsungBrowser: boolean;
isTablet: boolean;
isUCBrowser: boolean;
isYandexBrowser: boolean;
isiOS: boolean | import("detect-ua").IDeviceResult;
};
isAnimationWorkletSupported: boolean;
isAudioWorkletSupported: boolean;
isBroadcastChannelSupported: boolean;
isCryptoSupported: boolean;
isFetchSupported: boolean;
isGamepadSupported: boolean;
isImageBitmapSupported: boolean;
isImageDecodeSupported: boolean;
isIndexedDBSupported: boolean;
isIntersectionObserverSupported: boolean;
isLayoutWorkletSupported: boolean;
isLocalStorageSupported: boolean;
isMutationObserverSupported: boolean;
isOffscreenCanvasSupported: boolean;
isPaintWorkletSupported: boolean;
isPerformanceNowSupported: boolean;
isPerformanceObserverSupported: boolean;
isRequestIdleCallbackSupported: boolean;
isServiceWorkerSupported: boolean;
isSessionStorageSupported: boolean;
isUserActivationSupported: boolean;
isWebAssemblySupported: boolean;
isWebAudioSupported: boolean;
isWebGL2Supported: boolean;
isWebGLSupported: boolean;
isWebPSupported: boolean;
isWebRTCSupported: boolean;
isWebSocketSupported: boolean;
isWebVRSupported: boolean;
isWebWorkerInlineSupported: boolean;
isWebWorkerSupported: boolean;
isWebXRSupported: boolean;
mediaFeatures: any;
webGL2Features: any;
webGLFeatures: any;
};
browserSettings: {
isCookieEnabled: boolean;
isDoNotTrackEnabled: boolean;
};
hardwareFeatures: {
GPUTier: import("detect-gpu").TierResult;
availableCPUCores: number;
devicePixelRatio: number;
endianness: "little" | "big" | "Unknown";
};
}>;