import { IconicNames } from '@clubmed/trident-icons';
import { Colors } from '../types/Colors';
import { PropsWithChildren } from 'react';
export interface ButtonProps extends PropsWithChildren {
    color?: Colors;
    icon?: IconicNames;
    iconWidth?: string;
    size?: 'small' | 'medium' | 'large' | 'primary' | 'secondary' | 'tertiary';
    theme?: 'outline' | 'solid';
    variant?: 'circle' | 'pill';
}
type Params = {
    color: ButtonProps['color'];
    size: ButtonProps['size'];
    theme: ButtonProps['theme'];
    variant: ButtonProps['variant'];
};
export declare const BUTTON_COLORS: {
    readonly black: "button-black";
    readonly green: "button-green";
    readonly lavender: "button-lavender";
    readonly lightSand: "button-lightSand";
    readonly marygold: "button-marygold";
    readonly pearl: "button-pearl";
    readonly orange: "button-orange";
    readonly red: "button-red";
    readonly saffron: "button-saffron";
    readonly sand: "button-sand";
    readonly sienna: "button-sienna";
    readonly ultramarine: "button-ultramarine";
    readonly verdigris: "button-verdigris";
    readonly wave: "button-wave";
    readonly white: "button-white";
};
export declare const BUTTON_THEMES: {
    readonly outline: "button-outline";
    readonly solid: "button-solid";
};
export declare const BUTTON_VARIANTS: {
    readonly circle: "button-circle";
    readonly pill: "button-pill";
};
export declare const BUTTON_SIZES: {
    readonly small: "button-small";
    readonly medium: "button-medium";
    readonly large: "button-large";
    readonly primary: "button-medium";
    readonly secondary: "button-secondary";
    readonly tertiary: "button-tertiary";
};
export declare const getButtonClasses: ({ color, size, theme, variant }: Params) => string;
export {};
