import BridgeFunction from './bridgeFunction'; import { checkPermission, PermissionName, PermissionStatus, } from '../permission'; import { MiniAppError, MiniAppErrorType } from '../miniAppError'; class GetDeviceInformation extends BridgeFunction { name = 'getDeviceInformation'; protected async executeFunction() { const grantStatus = await checkPermission( PermissionName.mini_app_device_info ); if (grantStatus !== PermissionStatus.granted) { throw new MiniAppError(MiniAppErrorType.insufficientScope); } return this.cbHandler?.success({ deviceId: 'simulator', isAdvertiserTrackingEnabled: true, advertisingId: 'simulatorAdvertisingId', androidId: 'simulatorAndroidId', }); } } export default GetDeviceInformation;