import { Component } from 'react'; import { Width } from '../common'; import { Swipe } from './utils'; export interface TabItem { title: string; content: React.ReactNode; disabled: boolean; } export interface TabsProps { tabs: TabItem[]; selected: number; name: string; /** @default true */ changeTabOnSwipe?: boolean; className?: string; /** @default 'block' */ headerWidth?: `${Width}`; onTabSelect: (index: number) => void; } interface TabsState { start: Swipe | null; translateLineX: string | null; isSwiping: boolean; isScrolling: boolean; fullWidthTabs: boolean; } export default class Tabs extends Component { props: TabsProps & Required>; static defaultProps: { changeTabOnSwipe: true; headerWidth: Width.BLOCK; }; containerReference: import("react").RefObject; constructor(props: Tabs['props']); container: HTMLDivElement | null; containerWidth: number; tabRefs: (HTMLLIElement | null)[]; get MAX_INDEX(): number; componentDidMount(): void; componentDidUpdate(previousProps: TabsProps): void; componentWillUnmount(): void; handleResize: () => void; setContainerRefAndWidth: (node: HTMLDivElement | null) => void; setContainerWidth: (node: HTMLDivElement | null) => void; isTabDisabled: (index: number) => boolean; getAllTabsWidth: () => number; getDistanceToSelectedTab: (selectedTabIndex: number) => number; setTabWidth: () => void; getTabLineWidth: () => string; getTabToSelect: (selected: number, start: Swipe, end: Swipe) => number; swipedOverHalfOfContainer: (difference: number) => boolean; switchTab: (index: number) => void; animateLine: (index: number) => void; disableScroll: (event: Event) => void; handleTabClick: (index: number) => () => void; onKeyDown: (index: number) => (event: React.KeyboardEvent) => void; handleTouchStart: React.TouchEventHandler; handleTouchMove: React.TouchEventHandler; handleTouchEnd: React.TouchEventHandler; render(): import("react").JSX.Element; } export {}; //# sourceMappingURL=Tabs.d.ts.map