/// import { IntentType } from '../../../Common/theming/types'; import { Tooltip } from '../../Display/Tooltip'; import { IconName } from '../../../Common/theming/icons'; import { WithThemeProps } from '../../../Common/theming/withTheme'; export declare type Position = 'left' | 'right' | 'none'; export interface UpButtonState { isToggled?: boolean; isProcessing?: boolean; prevProps?: UpButtonProps; } export declare const fontSizeMap: { xsmall: number; small: number; medium: number; large: number; xlarge: number; }; export declare const buttonSizeMap: { normal: string; icon: string; auto: string; full: string; }; export declare type FontSize = 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge'; export declare type ButtonWidth = 'normal' | 'icon' | 'auto' | 'full'; export declare type ButtonHeight = 'xsmall' | 'small' | 'normal' | 'large'; export declare type ActionType = IconName; export declare type IconPosition = 'none' | 'left' | 'right'; export declare type DropDownType = 'none' | 'up' | 'down' | 'element'; export interface Action { onClick: (e: React.MouseEvent) => void; iconName?: any; tooltip?: string | Tooltip; libelle: string; actionType?: ActionType; intent?: IntentType; } export interface Separator { size?: number; } export interface CommonProps extends WithThemeProps { color?: string; backgroundColor?: string; borderColor?: string; fontSize?: FontSize; disabled?: boolean; shadow?: boolean; rounded?: boolean; rotate?: boolean; actionType?: ActionType; iconName?: IconName; iconSize?: number; iconPosition?: IconPosition; intent?: IntentType; width?: ButtonWidth; height?: ButtonHeight; tooltip?: string | Tooltip; extraActions?: Array; dropDown?: DropDownType; isProcessing?: boolean; isToggled?: boolean; type?: 'button' | 'submit' | 'reset'; borderless?: boolean; additionalStyles?: { backgroundColor?: string; hoverBackgroundColor?: string; }; } export interface UpButtonProps extends CommonProps { onClick?: (e: React.MouseEvent) => void | Promise; className?: string; name?: string; } export interface UpButtonStyledProps extends UpButtonProps { className?: string; dataFor?: string; isToggled?: boolean; isProcessing?: boolean; } export interface UpButtonState { isToggled?: boolean; isProcessing?: boolean; prevProps?: UpButtonProps; isElementHover?: boolean; }