import { AriaRole } from 'react';
import { StringCellBindProps } from '../cell/cell-types';
import { ToolbarInitialDataLoadHandler, ToolbarLeafClickHandler, ToolbarLoadNodeHandler } from '../../components/toolbar/toolbar-types';
export interface TypographyProps extends StringCellBindProps {
    variant: TypographyVariant;
    state?: TypographyState | undefined;
    role?: AriaRole | undefined;
    /**
     * When specified, it will override the `color`
     */
    color?: string;
    /** If you want the typography to collapse overflowing text */
    ellipsis?: boolean;
    className?: string;
    toolbar?: boolean;
    justifiedContent?: JustifiedContent;
    /**
     * Handlers for toolbar interaction
     * - Leaf node click
     * - Dynamic node children loading
     * - Load the initial data with a callback
     *   without the need of the data-prop
     */
    onToolbarLeafNodeClick?: ToolbarLeafClickHandler;
    onToolbarLoadNodeData?: ToolbarLoadNodeHandler;
    onToolbarLoadInitialData?: ToolbarInitialDataLoadHandler;
    onAiIconClick?: () => void;
    /**
     * Callback used to attach a callback to the typography right click
     */
    onTypographyRightClick?: () => void;
    /**
     * Callback for then the user closes the toolbar with esc or ArrowLeft
     */
    onToolbarClose?: () => void;
}
export declare const variantToComponent: Record<TypographyVariant, React.ElementType>;
type TypographyState = "base" | "danger";
type TypographyVariant = "titleLarge" | "title" | "body" | "label" | "code" | "link";
export type JustifiedContent = "left" | "center" | "right";
export {};
//# sourceMappingURL=typography-types.d.ts.map