import { ComponentHarness, BaseHarnessFilters, HarnessPredicate } from '@angular/cdk/testing'; /** Harness filters for ComSegmentHarness. */ interface ComSegmentHarnessFilters extends BaseHarnessFilters { /** Filter by the segment's label text. */ label?: string | RegExp; /** Filter by whether the segment is selected. */ selected?: boolean; /** Filter by whether the segment is disabled. */ disabled?: boolean; } /** Harness filters for ComSegmentedControlHarness. */ interface ComSegmentedControlHarnessFilters extends BaseHarnessFilters { /** Filter by the control's aria-label. */ ariaLabel?: string | RegExp; } /** * Harness for interacting with an individual segment button in tests. */ declare class ComSegmentHarness extends ComponentHarness { static hostSelector: string; /** * Gets a HarnessPredicate for matching segments. * @param options Filter options. */ static with(options?: ComSegmentHarnessFilters): HarnessPredicate; /** Gets the segment's label text. Uses aria-label if present, otherwise text content. */ getLabel(): Promise; /** Whether the segment is currently selected. */ isSelected(): Promise; /** Whether the segment is disabled. */ isDisabled(): Promise; /** Clicks the segment to select it. Throws if disabled. */ select(): Promise; /** Focuses the segment button. */ focus(): Promise; /** Blurs the segment button. */ blur(): Promise; /** Whether the segment button is focused. */ isFocused(): Promise; } /** * Harness for interacting with a ComSegmentedControl in tests. */ declare class ComSegmentedControlHarness extends ComponentHarness { static hostSelector: string; private readonly radioGroup; /** * Gets a HarnessPredicate for matching segmented controls. * @param options Filter options. */ static with(options?: ComSegmentedControlHarnessFilters): HarnessPredicate; /** Gets all segment buttons, optionally filtered. */ getSegments(filters?: ComSegmentHarnessFilters): Promise; /** Gets the currently selected segment, or null if none is selected. */ getSelectedSegment(): Promise; /** Selects a segment matching the given filter. */ selectSegment(filter: ComSegmentHarnessFilters): Promise; /** Gets all segment label texts. */ getSegmentLabels(): Promise; /** Gets the radiogroup's aria-label. */ getAriaLabel(): Promise; } export { ComSegmentHarness, ComSegmentedControlHarness }; export type { ComSegmentHarnessFilters, ComSegmentedControlHarnessFilters };