import { EventEmitter, OnInit, OnChanges, SimpleChanges, ChangeDetectorRef } from '@angular/core'; import { StepGroupConfig, ConditionBranch, ExecutionStepConfig, StepStatus, TimingBreakdown, AddStepMenuOption, StepMoreMenuOption } from '../execution-step.models'; import { BaseStepComponent } from '../base-step.component'; import * as i0 from "@angular/core"; export declare class StepGroupComponent extends BaseStepComponent implements OnInit, OnChanges { private cdr; id: string; testStepResultId: string; stepNumber: string; title: string; status: StepStatus; duration: number; timingBreakdown?: TimingBreakdown; expanded?: boolean; groupName: string; steps: ExecutionStepConfig[]; hasChild?: boolean; isLoading?: boolean; stepDeleted?: boolean; isDebug?: boolean; canEditSteps?: boolean; debugPointSet?: boolean; parentSkipped?: boolean; getDebugPointSetHandler?: (step: ExecutionStepConfig) => boolean; onDebugPointChangeHandler?: (step: ExecutionStepConfig, value: boolean) => void; debugPointChange: EventEmitter; editStep: EventEmitter; addStepOptionSelect: EventEmitter; stepMoreOptionSelect: EventEmitter; addStepInsideLoop: EventEmitter; addStepMenuOptions: AddStepMenuOption[]; stepMoreMenuOptions: StepMoreMenuOption[]; onExpandHandler?: (step: ExecutionStepConfig) => void; /** When provided, passed to nested step-renderer so Edit on nested steps is forwarded with the step config. */ onEditStepHandler?: (step: ExecutionStepConfig) => void; /** When provided, passed to nested step-renderer so Add-step menu selection on nested steps is forwarded. */ onAddStepOptionSelectHandler?: (option: AddStepMenuOption, step?: ExecutionStepConfig) => void; /** When provided, passed to nested step-renderer so More options menu selection on nested steps is forwarded. */ onStepMoreOptionSelectHandler?: (option: StepMoreMenuOption, step?: ExecutionStepConfig) => void; /** When provided, used to get add-step menu options per nested step at any depth; otherwise addStepMenuOptions is used. */ getAddStepMenuOptionsForNested?: (step: ExecutionStepConfig) => AddStepMenuOption[]; /** When provided, used to get step-more menu options per nested step at any depth; otherwise stepMoreMenuOptions is used. */ getStepMoreMenuOptionsForNested?: (step: ExecutionStepConfig) => StepMoreMenuOption[]; /** When provided, passed to nested step-renderers so "Add ELSE IF" on condition steps inside this step-group works. */ onAddElseIfBranchAtHandler?: (conditionStep: any, branchIndex: number) => void; /** When provided, passed to nested step-renderers so "Add ELSE" on condition steps inside this step-group works. */ onAddElseBranchHandler?: (conditionStep: any) => void; /** When provided, passed to nested step-renderers so edit icon on IF/ELSE IF branches inside this step-group opens the condition editor. */ onEditBranchConditionHandler?: (conditionStep: any, branch: any, branchStep: any) => void; getConditionBranchesHandler?: (step: ExecutionStepConfig) => ConditionBranch[]; onConditionBranchClickHandler?: (step: any, branch: any) => void; isStepLoadingHandler?: (step: ExecutionStepConfig) => boolean; isStepExpandedHandler?: (step: ExecutionStepConfig) => boolean; convertMsToSecondsHandler?: (duration: number) => number; formatFailureDetailsHandler?: (step: ExecutionStepConfig) => any; getSelfHealAnalysisHandler?: (step: ExecutionStepConfig) => any; onMakeCurrentBaselineHandler?: (event: any) => void; onUploadBaselineHandler?: (event: any) => void; onAnalyzeHandler?: () => void; onViewFullLogsHandler?: () => void; onSelfHealActionHandler?: (event: any) => void; getSelfHealLoadingStatesHandler?: () => { isLoadingAccept: { [key: string]: boolean; }; isLoadingModifyAccept: { [key: string]: boolean; }; }; getLoopIterationsHandler?: (step: ExecutionStepConfig) => any[]; getApiAssertionsHandler?: (step: ExecutionStepConfig) => any[]; formatActionsHandler?: (step: ExecutionStepConfig) => any[]; onViewAllIterationsHandler?: (step: ExecutionStepConfig) => void; onStepClickHandler?: (step: ExecutionStepConfig, event?: Event) => void; onJsonPathCopiedHandler?: (event: { path: string; source: 'requestBody' | 'responseBody' | 'requestHeaders' | 'responseHeaders'; }) => void; onDownloadHandler?: (event: { fileName: string; filePath?: string; fileType: string; testStepResultId: string; }) => void; onFilePathCopiedHandler?: (event: { filePath: string; testStepResultId: string; }) => void; onTextCopiedHandler?: (event: { text: string; testStepResultId: string; }) => void; jumpToTimestampHandler?: (timestamp: number, testStepId?: number | string) => void; downloadingStepId: string | null; isUploadingBaseline?: any; isMakingCurrentBaseline?: any; isLive: boolean; step?: ExecutionStepConfig; get stepBadges(): ('skipped' | 'edited' | 'added' | 'removed')[]; get isSkipped(): boolean; get isStepDeleted(): boolean; onExpand: EventEmitter; config: StepGroupConfig; loadingSteps: Set; /** Show debug icon only when this step has no child steps (icon is shown on child steps instead). */ /** Show debug icon when debug mode is on (shown on parent and all child steps). */ get showDebugIcon(): boolean; /** Per-step filtered three-dot menu options (e.g. hide Duplicate/Delete for step-group children). */ get effectiveStepMoreMenuOptions(): StepMoreMenuOption[]; /** True when this step-group's own breakpoint is disabled (used to propagate parentSkipped to children). */ get selfDebugDisabled(): boolean; constructor(cdr: ChangeDetectorRef); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; private updateConfig; onDebugPointClick(event: Event): void; onEditStep(event: Event): void; onAddStepOptionSelect(option: AddStepMenuOption, event: Event): void; onStepMoreOptionSelect(option: StepMoreMenuOption, event: Event): void; toggle(event?: Event): void; isNestedStepLoading(step: ExecutionStepConfig): boolean; markStepLoaded(step: ExecutionStepConfig): void; isNestedStepGroupWithChildren(step: ExecutionStepConfig): boolean; getGroupName(step: ExecutionStepConfig): string; getSteps(step: ExecutionStepConfig): ExecutionStepConfig[]; isNestedLoopStep(step: ExecutionStepConfig): boolean; isNestedConditionStep(step: ExecutionStepConfig): boolean; getStepTitle(step: ExecutionStepConfig): string; getStepStatus(step: ExecutionStepConfig): StepStatus; getStepDuration(step: ExecutionStepConfig): number; getLoopType(step: ExecutionStepConfig): 'for' | 'while' | undefined; getLoopIterations(step: ExecutionStepConfig): any[]; getLoopNestedSteps(step: ExecutionStepConfig): ExecutionStepConfig[]; getConditionStepDuration(step: ExecutionStepConfig): number; getConditionStepExpanded(step: ExecutionStepConfig): boolean; getConditionStepText(step: ExecutionStepConfig): string; getConditionStepBranches(step: ExecutionStepConfig): ConditionBranch[]; getConditionStepLoading(step: ExecutionStepConfig): boolean; handleConditionStepExpand(step: ExecutionStepConfig): void; handleLoopStepExpand(step: ExecutionStepConfig): void; handleLoopStepIterationChange(step: ExecutionStepConfig, iterationId: string): void; getConditionStepFailureDetails(step: ExecutionStepConfig): any; getConditionStepSelfHealAnalysis(step: ExecutionStepConfig): any; getLoopSelectedIterationId(step: ExecutionStepConfig): string | undefined; getLoopDefaultIteration(step: ExecutionStepConfig): 'first' | 'last' | undefined; getLoopShowViewAllIterations(step: ExecutionStepConfig): boolean | undefined; isStepLoading(): boolean; onJumpToTimestamp(event: Event): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }