@yandex/ui
Version:
Yandex UI components
67 lines (66 loc) • 2.22 kB
TypeScript
import { FC, MouseEventHandler, ReactNode, ReactType, RefObject } from 'react';
import './Link.css';
export declare type ContainerElement = HTMLSpanElement | HTMLAnchorElement;
export interface ILinkProps {
/**
* Адрес ссылки. Если указано, то компонент будет оформлен тегом `a`, в противном случае — `span`.
*
* Значение игнорируется при использовании модификатора `pseudo`
*/
href?: string;
/**
* Выключение интерактивности ссылки.
* Состояние, при котором ссылка отображается, но недоступна для действий пользователя
*/
disabled?: boolean;
/**
* Ссылка на корневой DOM-элемент компонента
*/
innerRef?: RefObject<ContainerElement>;
/**
* Ссылка на DOM-элемент нативного контрола
*/
controlRef?: RefObject<ContainerElement>;
/**
* Указание для отрисовки компонента
*/
as?: ReactType;
/**
* Дополнительный класс
*/
className?: string;
/**
* Содержимое ссылки
*/
children?: ReactNode;
/**
* HTML-атрибут `title`
*/
title?: string;
/**
* HTML-атрибут `target`
*/
target?: string;
/**
* HTML-атрибут `rel`
*/
rel?: string;
/**
* HTML-атрибут `tabIndex`. Определяет последовательность перехода между ссылками при нажатии на кнопку Tab
*/
tabIndex?: number;
/**
* Обработчик события клика.
*/
onClick?: MouseEventHandler<ContainerElement>;
/**
* HTML-атрибут `role`
*/
role?: string;
}
export declare const cnLink: import("@bem-react/classname").ClassNameFormatter;
/**
* Компонент для создания ссылок.
* @param {ILinkProps} props
*/
export declare const Link: FC<ILinkProps>;