declare namespace SigApi {
    interface BrowserInfo {
        /**
         * Gets the name of the browser (e.g. 'Chrome', 'Firefox', 'Safari', ...)
         * 
         * @returns {string} the name of the browser or an empty string
         */
        getBrowserName(): string
        /**
         * Gets the version of the browser (e.g. '83.0.4103.106', ...)
         * 
         * @returns {string} the version of the browser or an empty string
         */
        getBrowserVersion(): string
        /**
         * Gets the name of the OS (e.g. 'Android', 'Windows', 'iOS', 'macOS', 'Linux', ...)
         * 
         * @returns {string} the name of the OS or an empty string
         */
        getOSName(): string
        /**
         * Gets the version of the OS (e.g. 'NT 5.1', 'NT 10.0', '10.11.1', ...)
         * 
         * @returns {string} the version of the OS or an empty string
         */
        getOSVersion(): string
        /**
         * Gets the versions name of the OS (e.g. 'XP', '10', 'High Sierra', 'Oreo', 'Pie', ...)
         * 
         * @returns {string} the version name of the OS or an empty string
         */
        getOSVersionsName(): string
        /**
         * Gets the name of the browser engine (e.g. 'WebKit', 'Blink', 'Gecko', 'Trident', 'Presto', 'EdgeHTML', ...)
         * 
         * @returns {string} the name of the browser engine or an empty string
         */
        getEngineName(): string
        /**
         * Gets the name of the browser engine (e.g. 'WebKit', 'Blink', 'Gecko', 'Trident', 'Presto', 'EdgeHTML', ...)
         * 
         * @returns {string} the name of the browser engine or an empty string
         */
        getEngineVersion(): string
        /**
         * Gets the type of the platform (e.g. 'desktop', 'tablet', 'mobile')
         * 
         * @returns {string} the name of the platform or an empty string
         */
        getPlatformType(): string
        /**
         * Gets the vendor of the device (e.g. 'Apple', 'Samsung', ...)
         * 
         * @returns {string} the vendor of the device or an empty string
         */
        getPlatformVendor(): string
        /**
         * Gets the device model (e.g. 'iPhone', 'iPad', 'Kindle Fire HD 7', ...)
         * 
         * @returns {string} the model of the device or an empty string
         */
        getPlatformModel(): string
    }
}
