/**
 * The `pn-segmented-control` and `pn-segmented` is built with native `input[type="radio"]` in the background.
 * This means you can use native events to listen to the changes.
 *
 * @nativeChange Use the `change` event to listen when the segment state is being changed.
 */
export declare class PnSegmentedControl {
    mo: MutationObserver;
    segmentContainer: HTMLDivElement;
    segments: HTMLPnSegmentElement[];
    activeBg: HTMLDivElement;
    hoverBg: HTMLDivElement;
    scrollRegistered: boolean;
    hostElement: HTMLElement;
    showScrollArrows: boolean;
    showLeftArrow: boolean;
    showRightArrow: boolean;
    /** This is the name of the radio buttons inside the controller. @deprecated Set the name in the nested `pn-segment` components. */
    name: string;
    /** Currently active segment value. */
    value: string;
    valueHandler(): void;
    changeHandler(event: InputEvent): void;
    handleResize(): void;
    handleHover(event: CustomEvent): void;
    componentDidLoad(): void;
    setSegments(): void;
    setActiveSegment(): void;
    rerender(): void;
    calcHighlight(element?: HTMLElement, hover?: boolean): void;
    scrollArrowRender(): void;
    scroll(val: number): void;
    scrollArrowClasses(): string;
    render(): any;
}
