import { ElectronCommandClient } from '@slardar/electron'; import { BrowserCommandClient } from '@slardar/web'; export { getPathname } from './browser'; export declare function getCPUModel(): string; export declare function getSystemMemory(): string; export declare type SlardarClient = ElectronCommandClient | BrowserCommandClient; export declare const BID = "electron_12345"; export interface ICommonParams { userId?: string; username?: string; ideVersion: string; deviceId: string; osPlatform: string; osVersion: string; techType?: string; ideVersionNumber?: number; env?: string; branch?: string; buildId?: string; cliName?: string; isSandbox?: string; frameworkType?: string; workbenchMode?: string; mixType?: number; isMixed?: '0' | '1'; } export declare function commonParams2Context(commonParams: ICommonParams, globalDevAppId?: string, globalTechType?: string, globalExtAppId?: string): { user_id: string; name: string; device_id: string; ide_version: string; os_version: string; os_platform: string; dev_app_id: string; ext_app_id: string; tech_type: string; ide_version_number: string; ide_env: string; branch: string; build_id: string; buildId: string; arch: NodeJS.Architecture; ide_version_int: number; is_sandbox: string; frameworkType: string; workbench_mode: string; e2e_scene: string; cpu_model: string; system_memory: string; is_mixed: string; mix_type: number; }; export declare function getHref(): string; /** * 存放打点需要在内存中缓存的数据及操作方法 */ export interface IModuleUseInfo { count: number; triggerNum: number; startTime?: number; endTime?: number; } export interface IModuleCacheMap { click: { [key: string]: IModuleUseInfo; }; call: { [key: string]: IModuleUseInfo; }; } export interface ITimelinelog { name: string; step: number; timestamp: number; } export interface ITimeline { moduleName: string; logs: ITimelinelog[]; startTime: number; currentStep: number; endTime?: number; } export declare type PointEventType = 'click' | 'call'; export declare const moduleEventCacheMap: IModuleCacheMap; export declare const timelineMap: Map; export declare function setModuleUseCache(eventType: PointEventType, moduleName: string, value: IModuleUseInfo): void; export declare function getModuleUseCache(eventType: PointEventType, moduleName: string): IModuleUseInfo; export declare function compareCacheTriggerCount(eventType: PointEventType, moduleName: string, triggerCount: number, triggerDuration?: number, nowTime?: number): boolean; export declare const PROCESS_TYPE: { readonly main: "main"; readonly renderer: "renderer"; }; export declare type ProcessType = keyof typeof PROCESS_TYPE; export declare const startTime: number; export declare const skipReport: boolean; export declare type TechType = 'microapp' | 'microgame' | 'liveplugin' | 'microapp-minicode' | 'microgame-minicode' | 'liveplugin-minicode' | 'microapp-plugin' | 'microapp-plugin-minicode'; export interface PerfConfigSettings { disabled: boolean; fps: { below: number; belowCount: number; maxReporterCount: number; }; interval: { duration: number; blockFactor: number; reportThreshold: number; longTaskDuration: number; longTaskDurationMain: number; maxReporterCount: number; preventLongTaskReportEVDuration?: number; preventLongTaskReportEvents?: string[]; }; memory: { freePercent: number; free: number; duration: number; maxReporterCount: number; winUsePowershell: boolean; }; disabledHref: string[]; disabledMain: boolean; ideUsageCollectInterval: number; disabledJsonWorker: boolean; largeJsonLimit?: number; lowMemoryLimit?: number; lowPerformanceCpus?: string[]; } export declare const defaultPerfConfigSettings: PerfConfigSettings;