import React from 'react';
export interface AriaAttributeProps {
    'aria-label'?: string;
    'aria-labelledby'?: string;
}
export declare const getAriaLabelFromProps: (props: Record<string, any>) => string | undefined;
export type CoreSpacing = 0 | 1 | 2 | 3 | 4 | 5;
export type Spacing = CoreSpacing | 'auto';
export interface SpacingProps {
    margin?: Spacing;
    marginBottom?: Spacing;
    marginLeft?: Spacing;
    marginRight?: Spacing;
    marginTop?: Spacing;
    marginX?: Spacing;
    marginY?: Spacing;
    padding?: Spacing;
    paddingBottom?: Spacing;
    paddingLeft?: Spacing;
    paddingRight?: Spacing;
    paddingTop?: Spacing;
    paddingX?: Spacing;
    paddingY?: Spacing;
    wrap?: boolean;
}
export interface FlexContainerProps {
    alignItems?: 'center' | 'start' | 'end' | 'baseline';
    direction?: 'row' | 'column';
    flex?: boolean | number;
    justifyContent?: 'center' | 'start' | 'end' | 'flex-start' | 'flex-end' | 'left' | 'right' | 'normal' | 'between' | 'space-around' | 'space-evenly';
    wrap?: boolean;
}
export interface FlexItemProps {
    alignSelf?: 'auto' | 'flex-start' | 'flex-end' | 'center' | 'baseline' | 'stretch';
    flexGrow?: 0 | 1;
    flexShrink?: 0 | 1;
}
export interface OverflowProps {
    overflow?: 'auto' | 'hidden' | 'scroll';
    overflowX?: 'auto' | 'hidden';
    overflowY?: 'auto' | 'hidden';
}
export declare const mapSpacingPropToBootstrapClass: (propName: string, value?: number) => string | undefined;
export declare const spacingProps: string[];
export declare const convertSpacingPropsToClassNames: (props: Record<string, any>) => string;
export declare const mapFlexContainerPropToBootstrapClass: (propName: string, value: string | boolean | number) => string | undefined;
export declare const mapFlexItemPropToBootstrapClass: (propName: string, value: string | boolean | number) => string | undefined;
export declare const convertFlexContainerPropsToClassNames: (props: Record<string, any>) => string;
export declare const convertFlexItemPropsToClassNames: (props: Record<string, any>) => string;
export declare const mapOverflowPropToBootstrapClass: (propName: string, value?: number) => string | undefined;
export declare const overflowProps: string[];
export declare const convertOverflowPropsToClassNames: (props: Record<string, any>) => string;
export type DesignSystemColor = 'blue' | 'blue-dark' | 'blue-light' | 'blue-lightest' | 'green' | 'green-dark' | 'green-light' | 'green-lightest' | 'orange' | 'orange-dark' | 'orange-light' | 'orange-lightest' | 'pink' | 'pink-dark' | 'pink-light' | 'pink-lightest' | 'purple' | 'purple-dark' | 'purple-light' | 'purple-lightest' | 'red' | 'red-dark' | 'red-light' | 'red-lightest' | 'yellow' | 'yellow-dark' | 'yellow-light' | 'yellow-lightest' | 'black' | 'gray-darker' | 'gray-dark' | 'gray' | 'gray-light' | 'gray-lighter' | 'white';
export type SystemBackgroundColor = DesignSystemColor;
export type BootstrapColor = 'primary' | 'white' | 'light' | 'gray-light' | 'secondary' | 'success' | 'warning' | 'info' | 'dark' | 'danger';
export type BorderWidth = 0 | 1;
export type BorderRadius = 0 | 1 | 2;
export interface BorderProps {
    border?: BorderWidth;
    borderBottom?: BorderWidth;
    borderColor?: BootstrapColor;
    borderLeft?: BorderWidth;
    borderRadius?: BorderRadius;
    borderRight?: BorderWidth;
    borderTop?: BorderWidth;
    borderX?: BorderWidth;
    borderY?: BorderWidth;
}
export declare const convertBorderPropsToClassNames: (props: Record<string, any>) => string;
export type TextSize = 1 | 2 | 3;
export type TextColor = 'danger' | 'warning' | 'success' | 'primary' | DesignSystemColor;
export interface TextStyleProps {
    align?: 'left' | 'center' | 'right';
    legacyColor?: TextColor;
    light?: boolean;
    lineClamp?: 1 | 2 | 3;
    size?: TextSize;
}
export declare const getColorClassFromColorProp: (color?: string) => string | undefined;
export declare const mapTextSizePropToClass: (value?: number) => "display-1" | "display-2" | "display-3" | undefined;
export type BootstrapSize = 'sm' | 'md' | 'lg';
export declare const mapBootstrapSizeToTextSize: (value: BootstrapSize) => TextSize;
export declare const mapTextPropToClass: (propName: string, value?: number | string) => string | undefined;
export declare const convertTextStylePropsToClassNames: (props: Record<string, any>) => string;
export interface ClickableProps {
    disabled?: boolean;
    external?: boolean;
    href?: string;
    onClick?: React.MouseEventHandler;
}
export declare enum LabelPlacement {
    Left = "Left",
    Right = "Right"
}
