import { EventEmitter } from '../../stencil-public-runtime';
import { TabVariant } from '../../types/TabVariants';
import { TabNavigationDetail } from '../telia-tab-header/TabNavigationDetail';
export declare type TabChangeDetail = {
  value: string;
};
export declare class TeliaTab {
  /** State scroll used for toggling horizontal scroll shadow */
  scrollClasses: Partial<Record<`telia-tab__wrapper${'--scroll-start' | '--scroll-end'}`, boolean>>;
  /** Array of slotted children */
  children: any[];
  /** Defining host element */
  host: HTMLTeliaTabElement;
  /** sets background on content */
  background: boolean;
  /** variant */
  variant: TabVariant;
  /** Controls wether the tabs should fill the entire available width */
  fullWidth: boolean;
  /**
   * Emitted when tab has changed. Value is id of active telia-tab-content
   */
  vocaTabChange: EventEmitter<TabChangeDetail>;
  /** Tracking id is used to identify and count Component usage */
  private dataTrackingId;
  private componentClass;
  private observer;
  private tabItems;
  private activeIndex;
  private tabList?;
  private isKeyPress;
  private sideScrollAdjustmentSize;
  handleInternalUpdate(e: Event): void;
  handleTabNavigation(e: CustomEvent<TabNavigationDetail>): void;
  handleResize(): void;
  componentWillLoad(): void;
  componentDidLoad(): void;
  disconnectedCallback(): void;
  private readonly onIntersection;
  /**
   * Check if there is a pre-selected tab,
   * else set first tab as pre-selected
   * @private
   */
  private findPreSelectedTab;
  /**
   * Will scroll tab list to keyboard focused tab header
   * @param target
   * @private
   */
  private scrollToTarget;
  /**
   * Create child array
   * @private
   */
  private createChildren;
  private getActiveTabListItem;
  private handleScrollButtonClick;
  private renderScrollButton;
  render(): any;
}
