@swrve/web-sdk
Version:
84 lines (83 loc) • 1.84 kB
TypeScript
/** IClientInfo */
export interface IClientInfo {
user_id: string;
browser: string | null;
browser_version: string | null;
device_height: string;
device_width: string;
install_date: string;
language: string;
os: string | null;
os_version: string | null;
timezone: string;
user_agent: string | null;
[key: string]: string | null;
}
export interface IClientInfoData {
user_id: string;
browser: string | null;
browser_version: string | null;
device_height: string;
device_width: string;
install_date: string;
language: string;
last_session?: string;
os: string | null;
os_version: string | null;
timezone: string | null;
user_agent: string | null;
[key: string]: string | null;
}
/** Browser */
export interface IBrowser {
name: string | null;
version: string | null;
}
/** OS */
export interface IClientOS {
name: string | null;
version: string | null;
}
/** Screen */
export interface IScreen {
height: string;
width: string;
}
/** Interface for new device properties object */
export interface INewProps {
screen: IScreen;
language: string;
timezone: string;
}
/** Used in ClientInfoHelper */
/** Browser */
export interface IBrowsersRegex {
webkit: RegExp;
appleWebkit: RegExp;
chrome: RegExp;
chromium: RegExp;
mozilla: RegExp;
firefox: RegExp;
msIE: RegExp;
edge: RegExp;
trident: RegExp;
safari: RegExp;
seamonkey: RegExp;
opera: RegExp;
}
export interface IBrowserInfo {
chrome: boolean;
firefox: boolean;
msIE: boolean;
safari: boolean;
opera: boolean;
[key: string]: boolean;
}
/** Time Zone */
export interface ITimeZoneFormats {
GMTEDT: RegExp;
GMT: RegExp;
EDT: RegExp;
T: RegExp;
[key: string]: RegExp;
}