import { VegaSlimmer } from '../../../../../vega-slimmer/vega-slimmer-core';
/** The `VegaTabGroupSliderStateController` class manages the animation state of a tab group slider component. */
export declare class VegaTabGroupSliderStateController extends VegaSlimmer {
  private tabListRenderer;
  private currentPageIndex;
  private UPDATE_ANIMATION_FLAG_DELAY;
  private goToPageTaskQueue;
  /**
   * The normal flow:
   * page index change
   *   set pending flag to true
   *   end animation
   *   create remove flag setTimeout
   *
   * Quickly switch pages flow:
   * page index change
   *   set pending flag to true
   * page index change
   *   set pending flag to true
   *   end animation
   *   create remove flag setTimeout
   * page index change
   *   set pending flag to true
   *   end animation
   *   create remove flag setTimeout
   *
   *   end animation
   *   create remove flag setTimeout
   *
   * Add a num records carousel action time, validate the num if want know the state
   */
  private pendingCarouselActionCount;
  /**
   * goToPage method should be called after the carousel re-render which waiting for the carousel to render all pages,
   *    otherwise it may not jump to the current page.
   */
  componentDidRender(): Promise<void>;
  /**
   * update the page index when component call watchCurrentPageIndexChange method
   *
   *  {@link VegaTabGroup#watchCurrentPageIndexChange}
   */
  handlePageIndexChange(): Promise<void>;
  /**
   * The function isAnimationInProgress() returns a boolean value indicating whether there is a pending animation for a tab.
   *
   * @returns {boolean} A boolean value indicating whether there is a pending animation.
   */
  isAnimationInProgress(): boolean;
}
