import { EventEmitter, OnChanges, SimpleChanges, ChangeDetectorRef } from '@angular/core'; import * as i0 from "@angular/core"; export declare type StepItemStatus = 'passed' | 'current' | 'pending' | 'failed' | 'running' | 'skipped'; export interface JumpToStepItem { id: string; stepNumber: string | number; description: string; status: StepItemStatus; /** Step id for selection. When missing, derived from id. */ stepId?: number; /** Stable unique identifier for this step instance. Preferred over stepId for selection. */ uniqueId?: string; /** Optional flag to indicate this item represents a prerequisite step. */ isPrerequisite?: boolean; /** Optional group name (e.g. prerequisite test case name) for visual grouping. */ groupName?: string; [key: string]: any; } export interface JumpToStepStepMeta { stepId: number; /** Stable unique identifier for this step instance (e.g. TS-ROOT-…). Required when the same stepId appears in multiple groups. */ uniqueId?: string; label: string; stepNumber: string; status: StepItemStatus; isPrerequisite?: boolean; groupName?: string; } export interface CombinedTestCaseGroup { name?: string; isPrerequisite?: boolean; steps?: any[]; } export declare class JumpToStepModalComponent implements OnChanges { private readonly cdr; constructor(cdr: ChangeDetectorRef); /** Whether the modal is open */ isOpen: boolean; /** Modal title */ title: string; /** List of step items to display (legacy; used when combinedTestCases not provided) */ items: JumpToStepItem[]; /** Combined test cases for accordion layout. When provided with stepsMeta, used instead of items. */ combinedTestCases: CombinedTestCaseGroup[]; /** Pre-computed step metadata (stepNumber, status, etc.) for each step. Required when using combinedTestCases. */ stepsMeta: JumpToStepStepMeta[]; /** Search placeholder text */ searchPlaceholder: string; /** Search Empty State text */ searchEmptyStateLabel: string; /** Current search value */ searchValue: string; /** Whether search is enabled */ enableSearch: boolean; /** Whether to show prerequisite steps section. Default true. */ showPrerequisites: boolean; /** Filtered items based on search */ filteredItems: JumpToStepItem[]; /** Prerequisite groups for accordion: each prerequisite test case by name. */ prerequisiteGroups: { name: string; items: JumpToStepItem[]; }[]; /** Filtered non-prerequisite step items. */ filteredStepItems: JumpToStepItem[]; /** Expanded prerequisite group names. When empty, all groups are collapsed by default. */ private readonly expandedGroupNames; /** Emitted when modal should be closed */ onClose: EventEmitter; /** Emitted when search value changes */ onSearch: EventEmitter; /** Emitted when a step item is selected */ onSelect: EventEmitter; ngOnChanges(changes: SimpleChanges): void; private updateFilteredItems; /** Build filteredItems directly from stepsMeta — the pre-computed ordered flat list. */ private buildFromStepsMeta; private buildFromCombinedTestCases; private buildFromItems; private stripHtml; isGroupExpanded(name: string): boolean; toggleGroup(name: string): void; onSearchValueChange(value: string): void; onItemClick(item: JumpToStepItem): void; onBackdropClick(event: MouseEvent): void; handleClose(): void; getStatusBadgeClasses(status: StepItemStatus): string; get hasItems(): boolean; get itemsCount(): number; /** Convert stepNumber to string for the badge label (String() is not available in templates) */ toLabel(value: string | number): string; trackByItemId(index: number, item: JumpToStepItem): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }