import React from 'react'; interface DataTest { nextButton?: string; prevButton?: string; } export interface ItemProps { active?: boolean; children?: React.ReactNode; className?: string; count?: boolean | number | string; id?: string | undefined; icon?: React.ReactElement; index?: number; itemProps?: object; flat?: boolean; key?: number | string; newNotif?: boolean; notification?: boolean; primary?: boolean; promo?: boolean; props?: object; setRef?: React.MutableRefObject | React.Ref; text?: string; value?: string; disabled?: boolean; onClick?: (e: React.MouseEvent, props: object) => void; [otherProps: string | number | symbol]: unknown; } export interface TabContentProps { active?: boolean; children?: React.ReactNode | React.ReactNode[]; className?: string; index?: number; indexActive?: number; padding?: string; paddingHorizontal?: string; paddingVertical?: string; } export interface IndicatorProps { width: number | string; xPos: number; } export interface TabProps { active?: boolean; /** * To set TabContent inside Tab */ children?: React.ReactNode; /** * To pass custom className to create custom styles */ className?: string; /** * To apply evenly divided tab */ flat?: boolean; /** * To provide data-testid */ dataTestId?: DataTest; /** * Set unique id for Tab. Required for better accessibility purpose. */ id?: string; /** * To indicate active tab */ indexActive?: number; /** * To specify tab contents */ items?: ItemProps[]; /** * To specify custom padding on Tab */ padding?: string; /** * To specify custom padding right and left on Tab */ paddingHorizontal?: string; /** * To specify custom padding top and bottom on Tab */ paddingVertical?: string; /** * To specify scrollLeft value when clicking the navigation butto */ scrollSpeed?: number; /** * To show navigation button on Tab */ withNav?: boolean; /** * To pass callback when tab is clicked */ onItemClick?: (e: React.MouseEvent, props: object) => void; } export {};