import React from "react";
import { Link } from "react-router-dom";
import { type IconProp } from "src/shared/renderIcon";
import { Tabs as PrimitiveTabs, TabsTrigger as PrimitiveTabsTrigger } from "src/primitives/Tabs";
type LinkTo = React.ComponentProps<typeof Link>["to"];
type TabsSize = "default" | "lg";
export interface TabsProps extends React.ComponentProps<typeof PrimitiveTabs> {
    /** Size of tab triggers. Applied to all Tabs.Item children. */
    size?: TabsSize;
}
interface TabsItemProps extends React.ComponentProps<typeof PrimitiveTabsTrigger> {
    /** Icon component, element, or class-name string rendered before the label. */
    icon?: IconProp;
    /** When set, the trigger renders as a react-router-dom Link to this path. */
    to?: LinkTo;
    /** Custom data-testid attribute. Defaults to `${hyphenize(value)}-tab`. */
    dataTestid?: string;
}
declare const Tabs: React.ForwardRefExoticComponent<Omit<TabsProps, "ref"> & React.RefAttributes<HTMLDivElement>> & {
    List: React.ForwardRefExoticComponent<Omit<import("@radix-ui/react-tabs").TabsListProps & React.RefAttributes<HTMLDivElement> & import("class-variance-authority").VariantProps<(props?: ({
        variant?: "line" | "default" | null | undefined;
    } & import("class-variance-authority/types").ClassProp) | undefined) => string>, "ref"> & React.RefAttributes<HTMLDivElement>>;
    Item: React.ForwardRefExoticComponent<Omit<TabsItemProps, "ref"> & React.RefAttributes<HTMLButtonElement>>;
    Content: React.ForwardRefExoticComponent<Omit<import("@radix-ui/react-tabs").TabsContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
};
export { Tabs };
