import { ShareButtonViewProps } from "./sqm-share-button-view";
import { DemoData } from "../../global/demo";
/**
* @uiName Share Button
* @validParents ["sqm-portal-container","div","sqm-divided-layout","sqm-brand","template","sqm-hero","sqb-program-section","sqb-conditional-section"]
* @slots [{"name":"", "title":"Button Content"}]
* @slotEditor richText
* @uiOrder ["medium", "program-id", "*", "pill", "disabled", "hideicon"]
* @exampleGroup Sharing
* @example Facebook Share Button - Share on Facebook
* @example X Share Button - Share via X
* @example Email Share Button - Share via Email
* @example Mobile Share Sheet Button - Share
* @example LinkedIn Share Button - Share on LinkedIn
* @example SMS Share Button - Text a friend
* @example Messenger Share Button - Share via Messenger
* @example WhatsApp Share Button - Share via WhatsApp
* @example LINE Share Button - Share via Line Messenger
* @example Pinterest Share Button - Share on Pinterest
* @csspart button-base - The button base, stable across all button style variants
* @csspart icon - The share button icon
*/
export declare class ShareButton {
/**
* The social medium to share on. Share messages and links
* will be pulled from your program config and tagged for analytics.
*
* @uiName Share medium
* @uiType string
* @required
* @uiEnum ["facebook", "twitter", "email", "direct", "linkedin", "sms", "fbmessenger", "whatsapp", "linemessenger", "pinterest" ]
* @uiEnumNames ["Facebook", "X", "Email", "Web Share Sheet", "Linkedin", "SMS", "Facebook Messenger", "Whatsapp", "Line Messenger", "Pinterest"]
*/
medium: "facebook" | "twitter" | "email" | "direct" | "linkedin" | "sms" | "fbmessenger" | "whatsapp" | "linemessenger" | "pinterest" | "reminder" | "unknown";
/**
* Optional programId, or uses the programId context where this button is rendered.
*
* @uiName Program ID
* @uiWidget programSelector
*/
programId?: string;
/**
* Configure border radius with pixel amount
* @uiName Border radius
* @uiGroup Style
*/
borderradius?: number;
/**
* @uiName Button background color
* @uiWidget color
* @format color
* @uiGroup Style
*/
backgroundcolor?: string;
/**
* @uiName Border
* @uiGroup Style
*/
border?: string;
/**
* @uiName Button text color
* @uiWidget color
* @format color
* @uiGroup Style
*/
textcolor?: string;
/**
* @uiName Display pill
* @uiGroup Style
*/
pill?: boolean;
/**
* @uiName Disabled
*/
disabled?: boolean;
/**
* @uiType string
* @uiName Button style
* @uiEnum ["primary", "secondary", "success", "info", "warning", "danger", "default", "text" ]
* @uiEnumNames ["Primary", "Secondary", "Success", "Info", "Warning", "Danger", "Default", "Text"]
*/
type?: "primary" | "secondary" | "success" | "info" | "warning" | "danger" | "default" | "text";
/**
* @uiName Button size
* @uiType string
* @uiEnum ["small", "medium", "large" ]
* @uiEnumNames ["Small", "Medium", "Large"]
* @uiGroup Style
*/
size?: "small" | "medium" | "large";
/**
* @uiName Icon location
* @uiType string
* @uiEnum ["prefix", "suffix" ]
* @uiEnumNames ["Prefix", "Suffix"]
*/
iconslot?: "prefix" | "suffix";
/**
* Options available at https://shoelace.style/components/icon
*
* Icon used in button. Will try to select an icon based on the share medium if left empty.
*
* @uiName Icon
*/
icon?: string;
/**
* @uiName Hide icon
* @uiGroup Style
* @default
*/
hideicon?: boolean;
/**
* @uiName Hide text
* @uiGroup Style
* @default
*/
hidetext?: boolean;
/**
* Title used for native sharing (mobile only)
* @uiName Share title
*/
sharetitle?: string;
/**
* Text used for native sharing (mobile only)
* @uiName Share text
*/
sharetext?: string;
/**
* Alert text shown if the share link is undefined
* @uiName Undefined link text
*/
undefinedLinkText?: string;
/**
* Alert text shown if the user's device does not support native sharing
* @uiName Unsupported platform text
*/
unsupportedPlatformText?: string;
/**
* @undocumented
* @uiType object
*/
demoData?: DemoData;
constructor();
disconnectedCallback(): void;
render(): any;
}