import * as React from 'react';
import { FloatingHelperAppearance, FloatingHelperSkin } from '..';

export type FloatingHelperContentActionSkin =
  | 'standard'
  | 'white'
  | 'premium'
  | 'lightPrimary'
  | 'standardPrimary';
export type FloatingHelperContentActionTheme = FloatingHelperContentActionSkin;

export type FloatingHelperContentDirection = 'horizontal' | 'vertical';

export interface FloatingHelperContentProps {
  /** Adds text as the title */
  title?: string;
  /** Adds renderable node as the body */
  body: React.ReactNode;
  /** Sets the text of the action button. Needs to be a non-empty string (and onActionClick prop has to be passed) in order for the action button to appear */
  actionText?: string;
  /** Sets the skin of the action button */
  actionSkin?: FloatingHelperContentActionSkin;
  /** @deprecated use actionSkin prop instead */
  actionTheme?: FloatingHelperContentActionSkin;
  /** Custom footer node */
  footer?: React.ReactNode;
  /** When both onActionClick & actionText are provided, will make an action button appear and invoke onActionClick() upon click */
  onActionClick?: () => void;
  /** Adds an image */
  image?: React.ReactNode;
  /** Skin : `dark` or `light`. */
  skin?: FloatingHelperSkin;
  /** @deprecated Use skin prop instead */
  appearance?: FloatingHelperAppearance;
  /** Sets the direction of content and image. */
  direction?: FloatingHelperContentDirection;
}

export declare const FloatingHelperContent: React.ComponentClass<FloatingHelperContentProps>;
export default FloatingHelperContent;
