// TODO: Placement strategies for end/start
export type ConfirmationPlacement = 'top' | 'bottom' | 'right' | 'left';
// | 'top-start'
// | 'top-end'
// | 'bottom-start'
// | 'bottom-end'
// | 'right-start'
// | 'right-end'
// | 'left-start'
// | 'left-end';

export type ConfirmationMode = 'None' | 'Simple' | 'Advanced';

export interface ConfirmationConfig {
  /** Title default('Confirmation Needed') */
  title?: string;
  /** Body default('') */
  body?: string | JSX.Element;
  /** Cancel button text default('Cancel') */
  cancelButtonText?: string;
  /** Confirm button text default('Confirm') */
  confirmButtonText?: string;
  /** Emits whenever the confirmation state is toggled */
  onConfirmOpen?: (isOpen: boolean, args?: unknown) => void;
}
