import { DemoData } from "../../global/demo";
import { CouponCodeViewProps } from "./sqm-coupon-code-view";
/**
 * @uiName Coupon Code
 * @validParents ["sqm-brand","sqm-portal-container","div","sqm-popup-container","sqm-hero","sqm-referral-card","sqm-titled-section", "sqb-program-section", "sqb-conditional-section"]
 * @compatibility Built for instant access
 * @exampleGroup Instant Access
 * @example Coupon Code - <sqm-coupon-code tooltip-text="Copied to Clipboard" tooltip-lifespan="1000"></sqm-coupon-code>
 */
export declare class CouponCode {
  /**
   * The ID of the program that should generate the code. Defaults to the program ID in context where this widget is loaded.
   *
   * @uiName Program ID
   * @uiWidget programSelector
   */
  programId?: string;
  /**
   * Shown inside a tooltip after someone has successfully copied the link to their clipboard.
   *
   * @uiName Tooltip text
   */
  tooltiptext: string;
  /**
   * The number of milliseconds that the tooltip appears for
   *
   * @uiName Tooltip lifespan
   */
  tooltiplifespan: number;
  /**
   * @uiName Coupon code alignment
   * @uiType string
   * @uiEnum ["left", "center", "right"]
   * @uiEnumNames ["Left", "Center", "Right"]
   * @uiGroup Style
   */
  textAlign?: "left" | "center" | "right";
  /**
   * @uiName Copy button label
   */
  copyButtonLabel: string;
  /**
   * Set the copy button style and placement.
   *
   * @uiName Style
   * @uiType string
   * @uiEnum ["icon", "button-outside", "button-below"]
   * @uiEnumNames ["Icon", "Button outside", "Button below"]
   * @uiGroup Style
   */
  buttonStyle?: "icon" | "button-outside" | "button-below";
  /**
   * @uiName Coupon code label
   */
  couponCodeLabel: string;
  /**
   * Display this message when the coupon code has been cancelled.
   *
   * @uiWidget textArea
   * @uiName Cancelled code error message
   * @uiGroup Coupon code error
   */
  cancelledErrorText: string;
  /**
   * Display this message when the coupon code has already been redeemed.
   *
   * @uiWidget textArea
   * @uiName Redeemed code error message
   * @uiGroup Coupon code error
   */
  redeemedErrorText: string;
  /**
   * Display this message when the coupon code has expired.
   *
   * @uiWidget textArea
   * @uiName Expired code error message
   * @uiGroup Coupon code error
   */
  expiredErrorText: string;
  /**
   * Display this message when the code fails to load due to a fulfillment error.
   *
   * @uiWidget textArea
   * @uiName Code fulfillment error message
   * @uiGroup Coupon code error
   */
  fullfillmentErrorText: string;
  /**
   * Display this message when the coupon code not available yet. Use the ICU message, {unpendDate}, to show the date the code will be available.
   *
   * @uiWidget textArea
   * @uiName Code pending error message
   * @uiGroup Coupon code error
   */
  pendingErrorText: string;
  /**
   * Display this message when the code fails to load before retrying.
   *
   * @uiWidget textArea
   * @uiName Code sync error retry message
   * @uiGroup Coupon code error
   */
  codeSyncErrorRetryText: string;
  /**
   * Display this message when the code fails to load after retrying.
   *
   * @uiWidget textArea
   * @uiName Code sync error message
   * @uiGroup Coupon code error
   */
  codeSyncErrorText: string;
  /**
   * Display this message when the code fails to load due to an unspecified error.
   *
   * @uiWidget textArea
   * @uiName Code retrieval error message
   * @uiGroup Coupon code error
   */
  genericErrorText: string;
  /**
   * Display this text when the coupon code can’t be retrieved.
   *
   * @uiName Coupon code placeholder
   * @uiGroup Coupon code error
   */
  couponCodePlaceholder: string;
  /**
   * Border color of share link container
   * @uiName Border color
   * @uiWidget color
   * @format color
   * @uiGroup Style
   */
  borderColor?: string;
  /**
   * Color of the text and copy icon
   * @uiName Text color
   * @uiWidget color
   * @format color
   * @uiGroup Style
   */
  textColor?: string;
  /**
   * The border radius on the share link container (in pixels)
   * @uiName Border Radius
   * @uiType number
   * @uiGroup Style
   */
  borderRadius?: string;
  /**
   * The type of the button (primary or secondary) that will be used to copy the link.
   * @uiName Button Type
   * @uiType string
   * @uiEnum ["primary", "secondary"]
   * @uiEnumNames ["Primary", "Secondary"]
   * @uiGroup Style
   */
  buttonType?: "primary" | "secondary";
  /**
   * Background color of share link container
   * @uiName Background color
   * @uiWidget color
   * @format color
   * @uiGroup Style
   */
  backgroundColor?: string;
  /**
   * @undocumented
   * @uiType object
   */
  demoData?: DemoData<CouponCodeViewProps>;
  constructor();
  disconnectedCallback(): void;
  render(): any;
}
