import { DemoData } from "../../global/demo";
import { BigStatViewProps } from "../sqm-big-stat/sqm-big-stat-view";
import { TaskCardViewProps } from "./sqm-task-card-view";
/**
 * @uiName Task Card
 * @uiOrder ["reward-amount", "reward-unit", "card-title", "description", "repeatable", "finite", "show-progress-bar", "stat-type", "progress-source", "goal", "steps", "progress-bar-unit", "show-expiry", "reward-duration", "button-text", "button-link", "open-new-tab", "ended-message", "expiry-message", "starts-on-message", "event-key", "*"]
 * @validParents ["sqm-card-feed"]
 */
export declare class TaskCard {
  ignored: boolean;
  /**
   * @uiName Reward amount
   * @uiGroup Reward
   */
  rewardAmount: string;
  /**
   * @uiName Reward unit
   * @uiGroup Reward
   */
  rewardUnit: string;
  /**
   * @uiName Title
   * @uiGroup Task
   */
  cardTitle: string;
  /**
   * @uiName Description
   * @uiGroup Task
   */
  description: string;
  /**
   * @uiName Goal repeatable
   * @uiGroup Goal
   * @default
   */
  repeatable: boolean;
  /**
   * The number of times a task can be completed when repeatable.  Use zero for no limit (the default).
   *
   * @uiName Repeat amount
   * @uiGroup Reward
   */
  finite: number;
  /**
   * @uiName Show progress bar
   * @uiGroup Goal
   * @default
   */
  showProgressBar: boolean;
  /**
   * Sets the goal for users progress to know when a task has been completed. If repeatable is checked, repeatable goals is an increment of this.
   *
   * @uiName Goal completion number
   * @uiGroup Goal
   */
  goal: number;
  /**
   * @uiName Progress bar steps
   * @uiGroup Goal
   * @default
   */
  steps: boolean;
  /**
   * The unit displayed to the right of steps and progress numbers on the progress bar. Ex: $ for dollars
   *
   * @uiName Progress bar unit
   * @uiGroup Goal
   */
  progressBarUnit: string;
  /**
   * Displayed when a user views a task card after the reward duration interval.
   *
   * @uiName Expiry date message
   * @uiGroup Task
   */
  expiryMessage: string;
  /**
   * Task cards are disabled to users outside of the duration. They are not disabled if no duration is configured.
   *
   * @uiName Reward duration
   * @uiWidget dateRange
   * @uiWidgetOptions {"allowPastDates":true, "months": 1}
   * @uiGroup Reward
   */
  rewardDuration: string;
  /**
   * Shown to users before the start of the task duration.
   *
   * @uiName Start date message
   * @uiGroup Task
   */
  startsOnMessage: string;
  /**
   * Task cards are hidden from users outside of the duration. They are always displayed if no duration is configured.
   *
   * @uiName Display duration
   * @uiWidget dateRange
   * @uiWidgetOptions {"allowPastDates":true, "months": 1}
   * @uiGroup Task
   */
  displayDuration: string;
  /**
   * Shown to users after the end of the task duration.
   *
   * @uiName Ended date message
   * @uiGroup Task
   */
  endedMessage: string;
  /**
   * Displays the amount of times that a user has completed a repeatable task.
   *
   * @uiName Completed count text
   * @uiGroup Task
   * @uiWidget textArea
   */
  completedText: string;
  /**
   * @uiName Button text
   * @uiGroup Button
   */
  buttonText: string;
  /**
   * @uiName Button link
   * @uiGroup Button
   */
  buttonLink: string;
  /**
   * Button link opens in new tab
   * @uiName Open in new tab
   * @uiGroup Button
   * @default
   */
  openNewTab: boolean;
  /**
   * Select what type of stat to display for the goal. Manual paths are also supported.
   *
   * @uiName Goal progress source
   * @required
   * @minLength 1
   * @uiWidget statTypeSelectWidget
   * @uiWidgetOptions {"version": 1.1}
   * @uiGroup Goal
   */
  statType: string;
  /**
   * Optionally send an event to SaaSquatch when a user clicks the button. Enter your event key into this field.
   *
   * @uiName Task card button event key
   * @uiGroup Button
   */
  eventKey?: string;
  /**
   * The ID of the program that is used to scope the task card. When no ID is specified, it defaults to the program context in which the component is rendered.
   *
   * @uiName Program ID override
   * @uiWidget programSelector
   * @uiGroup Goal
   */
  programId?: string;
  /**
   * @uiName Hide CTA button
   * @uiGroup Button
   */
  hideButton?: boolean;
  /**
   * @uiName Card Background color
   * @uiWidget color
   * @uiGroup Style
   */
  backgroundColor?: string;
  /**
   * @uiName Text color
   * @uiWidget color
   * @uiGroup Style
   */
  textColor?: string;
  /**
   * @uiName Border color
   * @uiWidget color
   * @uiGroup Style
   */
  borderColor?: string;
  /**
   * @uiName Border radius
   * @uiType number
   * @uiGroup Style
   */
  borderRadius?: number;
  /**
   * @uiName Button Style
   * @uiType string
   * @uiEnum ["primary", "secondary"]
   * @uiEnumNames ["Primary", "Secondary"]
   * @uiGroup Style
   */
  buttonType?: "primary" | "secondary";
  /**
   * @undocumented
   * @uiType object
   */
  demoData?: DemoData<TaskCardViewProps | BigStatViewProps>;
  constructor();
  disconnectedCallback(): void;
  render(): any;
}
