export interface IFootprintsFile_V3_Test { testName: string; executionId: string; localTime: number; testId?: string; } export interface IElement { hits: number[][]; uniqueId: string; } export interface IFootprintsFile_V3_App_File { path: string; methods: IElement[]; lines?: IElement[]; branches?: IElement[]; } export interface IFootprintsFile_V3_App { appName: string; branchName: string; buildName: string; moduleName: string; files: IFootprintsFile_V3_App_File[]; } export interface IFootprintsFile_V3_Environment { agentType: string; agentVersion: string; agentId: string; environmentName?: string; testStage?: string; labId?: string; } export interface IAgentMeta { sequence: number; generated: number; agentId: string; } export interface IFootprintsFile_Common { customerId: string; environment: IFootprintsFile_V3_Environment; configurationData: Object; meta?: IAgentMeta; } export interface IFootprintsFile_V3 extends IFootprintsFile_Common { version?: '3.0'; tests: IFootprintsFile_V3_Test[]; apps: IFootprintsFile_V3_App[]; } export interface IEventsFile_V1 { customerId: string; environment: IFootprintsFile_V3_Environment; configurationData: Object; meta: IAgentMeta; appName: string; build: string; branch: string; events: IEvent[]; } export interface IEvent { type: string; executionId?: string; framework?: string; reporterVersion?: string; localTime?: number; } export interface ILogsFile_V1 { customerId: string; appName: string; environment: IFootprintsFile_V3_Environment; configurationData: Object; meta: IAgentMeta; logs: string[]; } export interface ITestRecommendationsConfig { buildSessionId: string; testStage: string; testGroupId?: string; testRecommendationSleepSeconds?: number; tiaDisabled?: boolean; }