import { type ComponentPropsWithoutRef, type ElementType, type FC, type MouseEvent, type ReactNode } from 'react'; import { type VariantProps } from 'tailwind-variants'; import type { ElementRefProps } from '../../types'; type ElementProps = Omit, (keyof Props & ElementRefProps) | 'color'>; type Props = VariantProps & { /** リンクをクリックした時に発火するコールバック関数 */ onClick?: (e: MouseEvent) => void; /** テキストの前に表示するアイコン */ prefix?: ReactNode; /** テキストの後ろに表示するアイコン */ suffix?: ReactNode; /** TextLinkを利用しつつnext/linkなどと併用する場合に指定する */ elementAs?: T; }; type TextLinkComponent = (props: Props & ElementProps & ElementRefProps) => ReturnType; declare const classNameGenerator: import("tailwind-variants").TVReturnType<{ size: { XS: { anchor: string; }; S: { anchor: string; }; M: { anchor: string; }; }; }, { anchor: string[]; prefixWrapper: string; suffixWrapper: string; }, undefined, import("tailwind-variants/dist/config").TVConfig<{ size: { XS: { anchor: string; }; S: { anchor: string; }; M: { anchor: string; }; }; }, { size: { XS: { anchor: string; }; S: { anchor: string; }; M: { anchor: string; }; }; }>, { size: { XS: { anchor: string; }; S: { anchor: string; }; M: { anchor: string; }; }; }, { anchor: string[]; prefixWrapper: string; suffixWrapper: string; }, import("tailwind-variants").TVReturnType<{ size: { XS: { anchor: string; }; S: { anchor: string; }; M: { anchor: string; }; }; }, { anchor: string[]; prefixWrapper: string; suffixWrapper: string; }, undefined, import("tailwind-variants/dist/config").TVConfig<{ size: { XS: { anchor: string; }; S: { anchor: string; }; M: { anchor: string; }; }; }, { size: { XS: { anchor: string; }; S: { anchor: string; }; M: { anchor: string; }; }; }>, unknown, unknown, undefined>>; declare const ActualTextLink: TextLinkComponent; export declare const TextLink: typeof ActualTextLink; export {};