import React from "react";
import { TextProps } from "../../asorted/Text";
import { BaseStyledProps } from "../../styled";
export type LinkProps = React.AnchorHTMLAttributes<HTMLAnchorElement> & BaseStyledProps & {
    /**
     * Component that takes `{size: number; color?: string}` as props
     */
    Icon?: React.ComponentType<{
        size: number;
        color?: string;
    }>;
    /**
     * Affects the colors of the text, icon & underline, can be overriden by the `color` prop
     */
    type?: "main" | "shade" | "color";
    /**
     * Affect the font variant & icon size
     */
    size?: "small" | "medium" | "large";
    /**
     * Color of the link, overrides colors defined by the `type` prop
     */
    color?: string;
    /**
     * Props passed to the rendered text
     */
    textProps?: TextProps;
    /**
     * If true text will always be underlined, else it will be underlined only on hover
     */
    alwaysUnderline?: boolean;
    /**
     * Position of the icon relative to the text
     */
    iconPosition?: "right" | "left";
    disabled?: boolean;
    children?: React.ReactNode;
};
export declare const DEFAULT_ICON_POSITION = "right";
export declare const DEFAULT_SIZE = "medium";
export declare const DEFAULT_TYPE = "main";
export declare const Base: import("styled-components").StyledComponent<"a", import("styled-components").DefaultTheme, LinkProps, never>;
declare const Link: (props: LinkProps) => React.ReactElement;
export default Link;
