import React from 'react';
import { type IntlShape, type MessageDescriptor } from 'react-intl-next';
import { type Spacing } from '@atlaskit/button';
import type { Space } from '@atlaskit/primitives/compiled';
import { SmartLinkSize } from '../../../constants';
import { type MessageProps } from './types';
export declare const sizeToButtonSpacing: Record<SmartLinkSize, Spacing>;
export declare const getFormattedMessage: (message?: MessageProps) => React.JSX.Element | undefined;
export declare const getFormattedMessageAsString: (intl: IntlShape, message: MessageDescriptor, context?: string) => string;
export declare const getIconWidth: (size?: SmartLinkSize) => string;
export declare const importIcon: (importFn: () => Promise<any>) => any;
export declare const getMaxLineHeight: (size: SmartLinkSize) => 1.75 | 1.5;
export declare const getMaxLines: (value: number, defaultValue: number, max: number, min: number) => number;
/**
 * A space between element based on smart link size
 * To replace blocks/utils.tsz getGapSize() with space token for primitives
 */
export declare const getPrimitivesInlineSpaceBySize: (size: SmartLinkSize) => Space;
export declare const hasWhiteSpace: (str: string) => boolean;
