import { IExecuteAction } from '../actions/execute.mjs';
import { IOpenUrlAction } from '../actions/open-url.mjs';
import { VerticalAlignment } from '../common/vertical-alignment.mjs';
import { Refresh } from '../common/refresh.mjs';
import { IAuth } from '../common/auth/auth.mjs';
import { HorizontalAlignment } from '../common/horizontal-alignment.mjs';
import { Spacing } from '../common/spacing.mjs';
import { TargetWidth } from '../common/target-width.mjs';
import { ChartColor } from './color.mjs';
import { Layout } from '../layouts/index.mjs';
import { IBackgroundImage } from '../medias/background-image.mjs';
import { Color } from '../common/color.mjs';
import { FontType, FontSize, FontWeight } from '../common/font.mjs';
import { IAction, Action as Action$1 } from '../actions/base.mjs';
import { ISubmitAction } from '../actions/submit/submit.mjs';
import '../actions/submit/im-back.mjs';
import '../actions/submit/invoke.mjs';
import '../actions/submit/message-back.mjs';
import '../actions/submit/sign-in.mjs';
import '../actions/submit/task-fetch.mjs';
import '../actions/submit/collab-stage.mjs';
import { IToggleVisibilityAction } from '../actions/toggle-visibility.mjs';
import '../common/associated-inputs.mjs';
import '../common/target-element.mjs';
import '../common/auth/auth-card-button.mjs';
import '../common/auth/token-exchange-resource.mjs';
import '../common/tab-info.mjs';
import '../layouts/flow.mjs';
import '../layouts/area-grid.mjs';
import '../layouts/stack.mjs';

interface IDonutChart extends IElement {
    type: 'Chart.Donut';
    /**
     * the title of the chart.
     */
    title?: string;
    /**
     * the name of the set of colors to use.
     */
    colorSet?: string;
    /**
     * the data to display in the chart.
     */
    data: IDonutChartData[];
    /**
     * the area of a `Layout.AreaGrid` layout in which an element should be displayed.
     */
    'grid.area'?: string;
}
type DonutChartOptions = Omit<IDonutChart, 'type' | 'data'>;
declare class DonutChart extends Element implements IDonutChart {
    type: 'Chart.Donut';
    /**
     * the title of the chart.
     */
    title?: string;
    /**
     * the name of the set of colors to use.
     */
    colorSet?: string;
    /**
     * the data to display in the chart.
     */
    data: IDonutChartData[];
    constructor(...data: IDonutChartData[]);
    withOptions(value: DonutChartOptions): this;
    withTitle(value: string): this;
    withColorSet(value: string): this;
    addData(...data: IDonutChartData[]): this;
}
interface IDonutChartData {
    /**
     * the color to use for the data point.
     */
    color?: ChartColor;
    /**
     * the legend of the chart.
     */
    legend?: string;
    /**
     * the value associated with the data point.
     */
    value: number;
}
type DonutChartDataOptions = Omit<IDonutChartData, 'value'>;
declare class DonutChartData implements IDonutChartData {
    /**
     * the color to use for the data point.
     */
    color?: ChartColor;
    /**
     * the legend of the chart.
     */
    legend?: string;
    /**
     * the value associated with the data point.
     */
    value: number;
    constructor(value?: number, options?: DonutChartDataOptions);
    withOptions(value: DonutChartDataOptions): this;
    withColor(value: ChartColor): this;
    withLegend(value: string): this;
    withValue(value: number): this;
}

interface ILineChart extends IElement {
    type: 'Chart.Line';
    /**
     * the title of the chart.
     */
    title?: string;
    /**
     * the color to use for all data points.
     */
    color?: ChartColor;
    /**
     * the name of the set of colors to use.
     */
    colorSet?: string;
    /**
     * the data to display in the chart.
     */
    data: ILineChartData[];
}
type LineChartOptions = Omit<ILineChart, 'type' | 'data'>;
declare class LineChart extends Element implements ILineChart {
    type: 'Chart.Line';
    /**
     * the title of the chart.
     */
    title?: string;
    /**
     * the color to use for all data points.
     */
    color?: ChartColor;
    /**
     * the name of the set of colors to use.
     */
    colorSet?: string;
    /**
     * the data to display in the chart.
     */
    data: ILineChartData[];
    constructor(...data: ILineChartData[]);
    withOptions(value: LineChartOptions): this;
    withTitle(value: string): this;
    withColorSet(value: string): this;
    addData(...data: ILineChartData[]): this;
}
interface ILineChartData {
    /**
     * the color to use for the data point.
     */
    color?: ChartColor;
    /**
     * the legend of the chart.
     */
    legend?: string;
    /**
     * the data points in the series.
     */
    values: ILineChartDataPoint[];
}
type LineChartDataOptions = Omit<ILineChartData, 'values'>;
declare class LineChartData implements ILineChartData {
    /**
     * the color to use for the data point.
     */
    color?: ChartColor;
    /**
     * the legend of the chart.
     */
    legend?: string;
    /**
     * the data points in the series.
     */
    values: ILineChartDataPoint[];
    constructor(...dataPoints: ILineChartDataPoint[]);
    withOptions(value: LineChartDataOptions): this;
    withColor(value: ChartColor): this;
    withLegend(value: string): this;
    addDataPoints(...value: ILineChartDataPoint[]): this;
}
interface ILineChartDataPoint {
    /**
     * the x axis value of the data point.
     */
    x: number | string;
    /**
     * the y axis value of the data point.
     */
    y: number;
}
declare class LineChartDataPoint implements ILineChartDataPoint {
    /**
     * the x axis value of the data point.
     */
    x: number | string;
    /**
     * the y axis value of the data point.
     */
    y: number;
    constructor(x: number | string, y: number);
}

type ChartElement = IDonutChart | ILineChart;

/**
 * Displays a set of actions.
 */
interface IActionSet extends IElement {
    type: 'ActionSet';
    /**
     * The array of `Action` elements to show.
     */
    actions: Action[];
}
type ActionSetOptions = Omit<IActionSet, 'type' | 'actions'>;
/**
 * Displays a set of actions.
 */
declare class ActionSet extends Element implements IActionSet {
    type: 'ActionSet';
    /**
     * The array of `Action` elements to show.
     */
    actions: Action[];
    constructor(...actions: Action[]);
    withOptions(value: ActionSetOptions): this;
    addActions(...value: Action[]): this;
}

interface IIcon extends IElement {
    type: 'Icon';
    /**
     * name of the icon.
     */
    name: IconName;
    /**
     * size of the icon.
     */
    size?: 'xxSmall' | 'xSmall' | 'Standard' | 'Medium' | 'Large' | 'xLarge' | 'xxLarge';
    /**
     * style of the icon.
     */
    style?: 'Regular' | 'Filled';
    /**
     * color of the icon.
     */
    color?: Color;
    /**
     * select action
     */
    selectAction?: Action;
}
type IconOptions = Omit<IIcon, 'type' | 'name'>;
declare class Icon extends Element implements IIcon {
    type: 'Icon';
    /**
     * name of the icon.
     */
    name: IconName;
    /**
     * size of the icon.
     */
    size?: 'xxSmall' | 'xSmall' | 'Standard' | 'Medium' | 'Large' | 'xLarge' | 'xxLarge';
    /**
     * style of the icon.
     */
    style?: 'Regular' | 'Filled';
    /**
     * color of the icon.
     */
    color?: Color;
    /**
     * select action
     */
    selectAction?: Action;
    constructor(name: IconName, options?: IconOptions);
    static from(options: Omit<IIcon, 'type'>): Icon;
    withSize(value: 'xxSmall' | 'xSmall' | 'Standard' | 'Medium' | 'Large' | 'xLarge' | 'xxLarge'): this;
    withStyle(value: 'Regular' | 'Filled'): this;
    withColor(value: Color): this;
    withSelectAction(value: Action): this;
}
type IconName = 'AccessTime' | 'Accessibility' | 'AccessibilityCheckmark' | 'Add' | 'AddCircle' | 'AddSquare' | 'AddSquareMultiple' | 'AddSubtractCircle' | 'Airplane' | 'AirplaneLanding' | 'AirplaneTakeOff' | 'Album' | 'AlbumAdd' | 'Alert' | 'AlertBadge' | 'AlertOff' | 'AlertOn' | 'AlertSnooze' | 'AlertUrgent' | 'AlignBottom' | 'AlignCenterHorizontal' | 'AlignCenterVertical' | 'AlignDistributeBottom' | 'AlignDistributeLeft' | 'AlignDistributeRight' | 'AlignDistributeTop' | 'AlignEndHorizontal' | 'AlignEndVertical' | 'AlignLeft' | 'AlignRight' | 'AlignSpaceAroundHorizontal' | 'AlignSpaceAroundVertical' | 'AlignSpaceBetweenHorizontal' | 'AlignSpaceBetweenVertical' | 'AlignSpaceEvenlyHorizontal' | 'AlignSpaceEvenlyVertical' | 'AlignSpaceFitVertical' | 'AlignStartHorizontal' | 'AlignStartVertical' | 'AlignStraighten' | 'AlignStretchHorizontal' | 'AlignStretchVertical' | 'AlignTop' | 'AnimalCat' | 'AnimalDog' | 'AnimalRabbit' | 'AnimalRabbitOff' | 'AnimalTurtle' | 'AppFolder' | 'AppGeneric' | 'AppRecent' | 'AppStore' | 'AppTitle' | 'ApprovalsApp' | 'Apps' | 'AppsAddIn' | 'AppsList' | 'AppsListDetail' | 'Archive' | 'ArchiveArrowBack' | 'ArchiveMultiple' | 'ArchiveSettings' | 'ArrowAutofitContent' | 'ArrowAutofitDown' | 'ArrowAutofitHeight' | 'ArrowAutofitHeightDotted' | 'ArrowAutofitHeightIn' | 'ArrowAutofitUp' | 'ArrowAutofitWidth' | 'ArrowAutofitWidthDotted' | 'ArrowBetweenDown' | 'ArrowBetweenUp' | 'ArrowBidirectionalLeftRight' | 'ArrowBidirectionalUpDown' | 'ArrowBounce' | 'ArrowCircleDown' | 'ArrowCircleDownDouble' | 'ArrowCircleDownRight' | 'ArrowCircleDownSplit' | 'ArrowCircleDownUp' | 'ArrowCircleLeft' | 'ArrowCircleRight' | 'ArrowCircleUp' | 'ArrowCircleUpLeft' | 'ArrowCircleUpRight' | 'ArrowClockwise' | 'ArrowClockwiseDashes' | 'ArrowCollapseAll' | 'ArrowCounterclockwise' | 'ArrowCounterclockwiseDashes' | 'ArrowCurveDownLeft' | 'ArrowCurveDownRight' | 'ArrowCurveUpLeft' | 'ArrowCurveUpRight' | 'ArrowDown' | 'ArrowDownExclamation' | 'ArrowDownLeft' | 'ArrowDownload' | 'ArrowDownloadOff' | 'ArrowEject' | 'ArrowEnter' | 'ArrowEnterLeft' | 'ArrowEnterUp' | 'ArrowExit' | 'ArrowExpand' | 'ArrowExport' | 'ArrowExportLtr' | 'ArrowExportRtl' | 'ArrowExportUp' | 'ArrowFit' | 'ArrowFitIn' | 'ArrowFlowDiagonalUpRight' | 'ArrowFlowUpRight' | 'ArrowFlowUpRightRectangleMultiple' | 'ArrowForward' | 'ArrowForwardDownLightning' | 'ArrowForwardDownPerson' | 'ArrowHookDownLeft' | 'ArrowHookDownRight' | 'ArrowHookUpLeft' | 'ArrowHookUpRight' | 'ArrowImport' | 'ArrowJoin' | 'ArrowLeft' | 'ArrowMaximize' | 'ArrowMaximizeVertical' | 'ArrowMinimize' | 'ArrowMinimizeVertical' | 'ArrowMove' | 'ArrowMoveInward' | 'ArrowNext' | 'ArrowOutlineDownLeft' | 'ArrowOutlineUpRight' | 'ArrowParagraph' | 'ArrowPrevious' | 'ArrowRedo' | 'ArrowRepeat1' | 'ArrowRepeatAll' | 'ArrowRepeatAllOff' | 'ArrowReply' | 'ArrowReplyAll' | 'ArrowReplyDown' | 'ArrowReset' | 'ArrowRight' | 'ArrowRotateClockwise' | 'ArrowRotateCounterclockwise' | 'ArrowRouting' | 'ArrowRoutingRectangleMultiple' | 'ArrowShuffle' | 'ArrowShuffleOff' | 'ArrowSort' | 'ArrowSortDown' | 'ArrowSortDownLines' | 'ArrowSortUp' | 'ArrowSplit' | 'ArrowSprint' | 'ArrowSquareDown' | 'ArrowSquareUpRight' | 'ArrowStepBack' | 'ArrowStepIn' | 'ArrowStepInDiagonalDownLeft' | 'ArrowStepInLeft' | 'ArrowStepInRight' | 'ArrowStepOut' | 'ArrowStepOver' | 'ArrowSwap' | 'ArrowSync' | 'ArrowSyncCheckmark' | 'ArrowSyncCircle' | 'ArrowSyncDismiss' | 'ArrowSyncOff' | 'ArrowTrending' | 'ArrowTrendingCheckmark' | 'ArrowTrendingDown' | 'ArrowTrendingLines' | 'ArrowTrendingSettings' | 'ArrowTrendingSparkle' | 'ArrowTrendingText' | 'ArrowTrendingWrench' | 'ArrowTurnBidirectionalDownRight' | 'ArrowTurnDownLeft' | 'ArrowTurnDownRight' | 'ArrowTurnDownUp' | 'ArrowTurnLeftDown' | 'ArrowTurnLeftRight' | 'ArrowTurnLeftUp' | 'ArrowTurnRight' | 'ArrowTurnRightDown' | 'ArrowTurnRightLeft' | 'ArrowTurnRightUp' | 'ArrowTurnUpDown' | 'ArrowTurnUpLeft' | 'ArrowUndo' | 'ArrowUp' | 'ArrowUpLeft' | 'ArrowUpRight' | 'ArrowUpRightDashes' | 'ArrowUpSquareSettings' | 'ArrowUpload' | 'ArrowWrap' | 'ArrowWrapOff' | 'ArrowsBidirectional' | 'Attach' | 'AttachArrowRight' | 'AttachText' | 'AutoFitHeight' | 'AutoFitWidth' | 'Autocorrect' | 'Autosum' | 'Backpack' | 'BackpackAdd' | 'Backspace' | 'Badge' | 'Balloon' | 'BarcodeScanner' | 'Battery0' | 'Battery10' | 'Battery1' | 'Battery2' | 'Battery3' | 'Battery4' | 'Battery5' | 'Battery6' | 'Battery7' | 'Battery8' | 'Battery9' | 'BatteryCharge' | 'BatteryCheckmark' | 'BatterySaver' | 'BatteryWarning' | 'Beach' | 'Beaker' | 'BeakerAdd' | 'BeakerDismiss' | 'BeakerEdit' | 'BeakerEmpty' | 'BeakerOff' | 'BeakerSettings' | 'Bed' | 'BezierCurveSquare' | 'BinFull' | 'BinRecycle' | 'BinRecycleFull' | 'BinderTriangle' | 'Bluetooth' | 'BluetoothConnected' | 'BluetoothDisabled' | 'BluetoothSearching' | 'Blur' | 'Board' | 'BoardGames' | 'BoardHeart' | 'BoardSplit' | 'Book' | 'BookAdd' | 'BookArrowClockwise' | 'BookClock' | 'BookCoins' | 'BookCompass' | 'BookContacts' | 'BookDatabase' | 'BookDefault' | 'BookDismiss' | 'BookExclamationMark' | 'BookGlobe' | 'BookInformation' | 'BookLetter' | 'BookNumber' | 'BookOpen' | 'BookOpenGlobe' | 'BookOpenMicrophone' | 'BookPulse' | 'BookQuestionMark' | 'BookQuestionMarkRtl' | 'BookSearch' | 'BookStar' | 'BookTemplate' | 'BookTheta' | 'BookToolbox' | 'Bookmark' | 'BookmarkAdd' | 'BookmarkMultiple' | 'BookmarkOff' | 'BookmarkSearch' | 'BorderAll' | 'BorderBottom' | 'BorderBottomDouble' | 'BorderBottomThick' | 'BorderInside' | 'BorderLeft' | 'BorderLeftRight' | 'BorderNone' | 'BorderOutside' | 'BorderOutsideThick' | 'BorderRight' | 'BorderTop' | 'BorderTopBottom' | 'BorderTopBottomDouble' | 'BorderTopBottomThick' | 'Bot' | 'BotAdd' | 'BotSparkle' | 'BowTie' | 'BowlChopsticks' | 'BowlSalad' | 'Box' | 'BoxArrowLeft' | 'BoxArrowUp' | 'BoxCheckmark' | 'BoxDismiss' | 'BoxEdit' | 'BoxMultiple' | 'BoxMultipleArrowLeft' | 'BoxMultipleArrowRight' | 'BoxMultipleCheckmark' | 'BoxMultipleSearch' | 'BoxSearch' | 'BoxToolbox' | 'Braces' | 'BracesCheckmark' | 'BracesDismiss' | 'BracesVariable' | 'BrainCircuit' | 'Branch' | 'BranchCompare' | 'BranchFork' | 'BranchForkHint' | 'BranchForkLink' | 'BranchRequest' | 'BreakoutRoom' | 'Briefcase' | 'BriefcaseMedical' | 'BriefcaseOff' | 'BriefcasePerson' | 'BriefcaseSearch' | 'BrightnessHigh' | 'BrightnessLow' | 'BroadActivityFeed' | 'Broom' | 'BubbleMultiple' | 'Bug' | 'BugArrowCounterclockwise' | 'BugProhibited' | 'Building' | 'BuildingBank' | 'BuildingBankLink' | 'BuildingBankToolbox' | 'BuildingCloud' | 'BuildingDesktop' | 'BuildingFactory' | 'BuildingGovernment' | 'BuildingGovernmentSearch' | 'BuildingHome' | 'BuildingLighthouse' | 'BuildingMosque' | 'BuildingMultiple' | 'BuildingPeople' | 'BuildingRetail' | 'BuildingRetailMoney' | 'BuildingRetailMore' | 'BuildingRetailShield' | 'BuildingRetailToolbox' | 'BuildingShop' | 'BuildingSkyscraper' | 'BuildingSwap' | 'BuildingTownhouse' | 'Button' | 'Calculator' | 'CalculatorArrowClockwise' | 'CalculatorMultiple' | 'Calendar' | 'Calendar3Day' | 'CalendarAdd' | 'CalendarAgenda' | 'CalendarArrowCounterclockwise' | 'CalendarArrowDown' | 'CalendarArrowRight' | 'CalendarAssistant' | 'CalendarCancel' | 'CalendarChat' | 'CalendarCheckmark' | 'CalendarClock' | 'CalendarDataBar' | 'CalendarDate' | 'CalendarDay' | 'CalendarEdit' | 'CalendarEmpty' | 'CalendarError' | 'CalendarEye' | 'CalendarInfo' | 'CalendarLink' | 'CalendarLock' | 'CalendarLtr' | 'CalendarMail' | 'CalendarMention' | 'CalendarMonth' | 'CalendarMultiple' | 'CalendarNote' | 'CalendarPattern' | 'CalendarPerson' | 'CalendarPhone' | 'CalendarPlay' | 'CalendarQuestionMark' | 'CalendarRecord' | 'CalendarReply' | 'CalendarRtl' | 'CalendarSearch' | 'CalendarSettings' | 'CalendarShield' | 'CalendarStar' | 'CalendarSync' | 'CalendarToday' | 'CalendarToolbox' | 'CalendarVideo' | 'CalendarWeekNumbers' | 'CalendarWeekStart' | 'CalendarWorkWeek' | 'Call' | 'CallAdd' | 'CallCheckmark' | 'CallConnecting' | 'CallDismiss' | 'CallEnd' | 'CallExclamation' | 'CallForward' | 'CallInbound' | 'CallMissed' | 'CallOutbound' | 'CallPark' | 'CallPause' | 'CallProhibited' | 'CallTransfer' | 'CallWarning' | 'CalligraphyPen' | 'CalligraphyPenCheckmark' | 'CalligraphyPenError' | 'CalligraphyPenQuestionMark' | 'Camera' | 'CameraAdd' | 'CameraDome' | 'CameraEdit' | 'CameraOff' | 'CameraSparkles' | 'CameraSwitch' | 'CardUi' | 'CaretDown' | 'CaretDownRight' | 'CaretLeft' | 'CaretRight' | 'CaretUp' | 'Cart' | 'Cast' | 'CastMultiple' | 'CatchUp' | 'Cd' | 'Cellular3G' | 'Cellular4G' | 'Cellular5G' | 'CellularData1' | 'CellularData2' | 'CellularData3' | 'CellularData4' | 'CellularData5' | 'CellularOff' | 'CellularWarning' | 'CenterHorizontal' | 'CenterVertical' | 'Certificate' | 'Channel' | 'ChannelAdd' | 'ChannelAlert' | 'ChannelArrowLeft' | 'ChannelDismiss' | 'ChannelShare' | 'ChannelSubtract' | 'ChartMultiple' | 'ChartPerson' | 'Chat' | 'ChatAdd' | 'ChatArrowBack' | 'ChatArrowDoubleBack' | 'ChatBubblesQuestion' | 'ChatCursor' | 'ChatDismiss' | 'ChatEmpty' | 'ChatHelp' | 'ChatLock' | 'ChatMail' | 'ChatMultiple' | 'ChatMultipleHeart' | 'ChatOff' | 'ChatSettings' | 'ChatSparkle' | 'ChatVideo' | 'ChatWarning' | 'Check' | 'Checkbox1' | 'Checkbox2' | 'CheckboxArrowRight' | 'CheckboxChecked' | 'CheckboxCheckedSync' | 'CheckboxIndeterminate' | 'CheckboxPerson' | 'CheckboxUnchecked' | 'CheckboxWarning' | 'Checkmark' | 'CheckmarkCircle' | 'CheckmarkCircleSquare' | 'CheckmarkLock' | 'CheckmarkNote' | 'CheckmarkSquare' | 'CheckmarkStarburst' | 'CheckmarkUnderlineCircle' | 'Chess' | 'ChevronCircleDown' | 'ChevronCircleLeft' | 'ChevronCircleRight' | 'ChevronCircleUp' | 'ChevronDoubleDown' | 'ChevronDoubleLeft' | 'ChevronDoubleRight' | 'ChevronDoubleUp' | 'ChevronDown' | 'ChevronDownUp' | 'ChevronLeft' | 'ChevronRight' | 'ChevronUp' | 'ChevronUpDown' | 'Circle' | 'CircleEdit' | 'CircleEraser' | 'CircleHalfFill' | 'CircleHint' | 'CircleHintHalfVertical' | 'CircleImage' | 'CircleLine' | 'CircleMultipleSubtractCheckmark' | 'CircleOff' | 'CircleSmall' | 'City' | 'Class' | 'Classification' | 'ClearFormatting' | 'Clipboard' | 'Clipboard3Day' | 'ClipboardArrowRight' | 'ClipboardBrush' | 'ClipboardBulletList' | 'ClipboardBulletListLtr' | 'ClipboardBulletListRtl' | 'ClipboardCheckmark' | 'ClipboardClock' | 'ClipboardCode' | 'ClipboardDataBar' | 'ClipboardDay' | 'ClipboardEdit' | 'ClipboardError' | 'ClipboardHeart' | 'ClipboardImage' | 'ClipboardLetter' | 'ClipboardLink' | 'ClipboardMathFormula' | 'ClipboardMonth' | 'ClipboardMore' | 'ClipboardMultiple' | 'ClipboardNote' | 'ClipboardNumber123' | 'ClipboardPaste' | 'ClipboardPulse' | 'ClipboardSearch' | 'ClipboardSettings' | 'ClipboardTask' | 'ClipboardTaskAdd' | 'ClipboardTaskList' | 'ClipboardTaskListLtr' | 'ClipboardTaskListRtl' | 'ClipboardText' | 'ClipboardTextEdit' | 'ClipboardTextLtr' | 'ClipboardTextRtl' | 'Clock' | 'ClockAlarm' | 'ClockArrowDownload' | 'ClockDismiss' | 'ClockLock' | 'ClockPause' | 'ClockToolbox' | 'ClosedCaption' | 'ClosedCaptionOff' | 'Cloud' | 'CloudAdd' | 'CloudArchive' | 'CloudArrowDown' | 'CloudArrowUp' | 'CloudBeaker' | 'CloudBidirectional' | 'CloudCheckmark' | 'CloudCube' | 'CloudDatabase' | 'CloudDesktop' | 'CloudDismiss' | 'CloudEdit' | 'CloudError' | 'CloudFlow' | 'CloudLink' | 'CloudOff' | 'CloudSwap' | 'CloudSync' | 'CloudWords' | 'Clover' | 'Code' | 'CodeBlock' | 'CodeCircle' | 'CodeCs' | 'CodeCsRectangle' | 'CodeFs' | 'CodeFsRectangle' | 'CodeJs' | 'CodeJsRectangle' | 'CodePy' | 'CodePyRectangle' | 'CodeRb' | 'CodeRbRectangle' | 'CodeText' | 'CodeTextEdit' | 'CodeTextOff' | 'CodeTs' | 'CodeTsRectangle' | 'CodeVb' | 'CodeVbRectangle' | 'Collections' | 'CollectionsAdd' | 'Color' | 'ColorBackground' | 'ColorBackgroundAccent' | 'ColorFill' | 'ColorFillAccent' | 'ColorLine' | 'ColorLineAccent' | 'Column' | 'ColumnArrowRight' | 'ColumnDoubleCompare' | 'ColumnEdit' | 'ColumnSingle' | 'ColumnSingleCompare' | 'ColumnTriple' | 'ColumnTripleEdit' | 'Comma' | 'Comment' | 'CommentAdd' | 'CommentArrowLeft' | 'CommentArrowRight' | 'CommentCheckmark' | 'CommentDismiss' | 'CommentEdit' | 'CommentError' | 'CommentLightning' | 'CommentLink' | 'CommentMention' | 'CommentMultiple' | 'CommentMultipleCheckmark' | 'CommentMultipleLink' | 'CommentNote' | 'CommentOff' | 'Communication' | 'CommunicationPerson' | 'CommunicationShield' | 'CompassNorthwest' | 'Component2DoubleTapSwipeDown' | 'Component2DoubleTapSwipeUp' | 'Compose' | 'Cone' | 'ConferenceRoom' | 'Connected' | 'Connector' | 'ContactCard' | 'ContactCardGroup' | 'ContactCardLink' | 'ContactCardRibbon' | 'ContentSettings' | 'ContentView' | 'ContentViewGallery' | 'ContentViewGalleryLightning' | 'ContractDownLeft' | 'ContractUpRight' | 'ControlButton' | 'ConvertRange' | 'Cookies' | 'Copy' | 'CopyAdd' | 'CopyArrowRight' | 'CopySelect' | 'Couch' | 'CreditCardClock' | 'CreditCardPerson' | 'CreditCardToolbox' | 'Crop' | 'CropInterim' | 'CropInterimOff' | 'CropSparkle' | 'Crown' | 'CrownSubtract' | 'Cube' | 'CubeAdd' | 'CubeArrowCurveDown' | 'CubeLink' | 'CubeMultiple' | 'CubeQuick' | 'CubeRotate' | 'CubeSync' | 'CubeTree' | 'CurrencyDollarEuro' | 'CurrencyDollarRupee' | 'Cursor' | 'CursorClick' | 'CursorHover' | 'CursorHoverOff' | 'CursorProhibited' | 'Cut' | 'DarkTheme' | 'DataArea' | 'DataBarHorizontal' | 'DataBarHorizontalDescending' | 'DataBarVertical' | 'DataBarVerticalAdd' | 'DataBarVerticalAscending' | 'DataBarVerticalStar' | 'DataFunnel' | 'DataHistogram' | 'DataLine' | 'DataPie' | 'DataScatter' | 'DataSunburst' | 'DataTreemap' | 'DataTrending' | 'DataUsage' | 'DataUsageEdit' | 'DataUsageSettings' | 'DataUsageToolbox' | 'DataWaterfall' | 'DataWhisker' | 'Database' | 'DatabaseArrowDown' | 'DatabaseArrowRight' | 'DatabaseArrowUp' | 'DatabaseLightning' | 'DatabaseLink' | 'DatabaseMultiple' | 'DatabasePerson' | 'DatabasePlugConnected' | 'DatabaseSearch' | 'DatabaseStack' | 'DatabaseSwitch' | 'DatabaseWarning' | 'DatabaseWindow' | 'DecimalArrowLeft' | 'DecimalArrowRight' | 'Delete' | 'DeleteArrowBack' | 'DeleteDismiss' | 'DeleteLines' | 'DeleteOff' | 'Dentist' | 'DesignIdeas' | 'Desk' | 'Desktop' | 'DesktopArrowDown' | 'DesktopArrowRight' | 'DesktopCheckmark' | 'DesktopCursor' | 'DesktopEdit' | 'DesktopFlow' | 'DesktopKeyboard' | 'DesktopMac' | 'DesktopPulse' | 'DesktopSignal' | 'DesktopSpeaker' | 'DesktopSpeakerOff' | 'DesktopSync' | 'DesktopToolbox' | 'DesktopTower' | 'DeveloperBoard' | 'DeveloperBoardLightning' | 'DeveloperBoardLightningToolbox' | 'DeveloperBoardSearch' | 'DeviceEq' | 'DeviceMeetingRoom' | 'DeviceMeetingRoomRemote' | 'Diagram' | 'Dialpad' | 'DialpadOff' | 'DialpadQuestionMark' | 'Diamond' | 'Directions' | 'Dishwasher' | 'Dismiss' | 'DismissCircle' | 'DismissSquare' | 'DismissSquareMultiple' | 'Diversity' | 'DividerShort' | 'DividerTall' | 'Dock' | 'DockRow' | 'Doctor' | 'Document100' | 'Document' | 'DocumentAdd' | 'DocumentArrowDown' | 'DocumentArrowLeft' | 'DocumentArrowRight' | 'DocumentArrowUp' | 'DocumentBorder' | 'DocumentBorderPrint' | 'DocumentBriefcase' | 'DocumentBulletList' | 'DocumentBulletListArrowLeft' | 'DocumentBulletListClock' | 'DocumentBulletListCube' | 'DocumentBulletListMultiple' | 'DocumentBulletListOff' | 'DocumentCatchUp' | 'DocumentCheckmark' | 'DocumentChevronDouble' | 'DocumentContract' | 'DocumentCopy' | 'DocumentCs' | 'DocumentCss' | 'DocumentCube' | 'DocumentData' | 'DocumentDataLink' | 'DocumentDataLock' | 'DocumentDatabase' | 'DocumentDismiss' | 'DocumentEdit' | 'DocumentEndnote' | 'DocumentError' | 'DocumentFit' | 'DocumentFlowchart' | 'DocumentFolder' | 'DocumentFooter' | 'DocumentFooterDismiss' | 'DocumentFs' | 'DocumentHeader' | 'DocumentHeaderArrowDown' | 'DocumentHeaderDismiss' | 'DocumentHeaderFooter' | 'DocumentHeart' | 'DocumentHeartPulse' | 'DocumentImage' | 'DocumentJava' | 'DocumentJavascript' | 'DocumentJs' | 'DocumentKey' | 'DocumentLandscape' | 'DocumentLandscapeData' | 'DocumentLandscapeSplit' | 'DocumentLandscapeSplitHint' | 'DocumentLightning' | 'DocumentLink' | 'DocumentLock' | 'DocumentMargins' | 'DocumentMention' | 'DocumentMultiple' | 'DocumentMultiplePercent' | 'DocumentMultipleProhibited' | 'DocumentMultipleSync' | 'DocumentNumber1' | 'DocumentOnePage' | 'DocumentOnePageAdd' | 'DocumentOnePageBeaker' | 'DocumentOnePageColumns' | 'DocumentOnePageLink' | 'DocumentOnePageMultiple' | 'DocumentOnePageSparkle' | 'DocumentPageBottomCenter' | 'DocumentPageBottomLeft' | 'DocumentPageBottomRight' | 'DocumentPageBreak' | 'DocumentPageNumber' | 'DocumentPageTopCenter' | 'DocumentPageTopLeft' | 'DocumentPageTopRight' | 'DocumentPdf' | 'DocumentPercent' | 'DocumentPerson' | 'DocumentPill' | 'DocumentPrint' | 'DocumentProhibited' | 'DocumentPy' | 'DocumentQuestionMark' | 'DocumentQueue' | 'DocumentQueueAdd' | 'DocumentQueueMultiple' | 'DocumentRb' | 'DocumentRibbon' | 'DocumentSass' | 'DocumentSave' | 'DocumentSearch' | 'DocumentSettings' | 'DocumentSplitHint' | 'DocumentSplitHintOff' | 'DocumentSync' | 'DocumentTable' | 'DocumentTableArrowRight' | 'DocumentTableCheckmark' | 'DocumentTableCube' | 'DocumentTableSearch' | 'DocumentTableTruck' | 'DocumentTarget' | 'DocumentText' | 'DocumentTextClock' | 'DocumentTextExtract' | 'DocumentTextLink' | 'DocumentTextToolbox' | 'DocumentToolbox' | 'DocumentTs' | 'DocumentVb' | 'DocumentWidth' | 'DocumentYml' | 'Door' | 'DoorArrowLeft' | 'DoorArrowRight' | 'DoorTag' | 'DoubleSwipeDown' | 'DoubleSwipeUp' | 'DoubleTapSwipeDown' | 'DoubleTapSwipeUp' | 'Drafts' | 'Drag' | 'DrawImage' | 'DrawShape' | 'DrawText' | 'Drawer' | 'DrawerAdd' | 'DrawerArrowDownload' | 'DrawerDismiss' | 'DrawerPlay' | 'DrawerSubtract' | 'DrinkBeer' | 'DrinkBottle' | 'DrinkBottleOff' | 'DrinkCoffee' | 'DrinkMargarita' | 'DrinkToGo' | 'DrinkWine' | 'DriveTrain' | 'Drop' | 'DualScreen' | 'DualScreenAdd' | 'DualScreenArrowRight' | 'DualScreenArrowUp' | 'DualScreenClock' | 'DualScreenClosedAlert' | 'DualScreenDesktop' | 'DualScreenDismiss' | 'DualScreenGroup' | 'DualScreenHeader' | 'DualScreenLock' | 'DualScreenMirror' | 'DualScreenPagination' | 'DualScreenSettings' | 'DualScreenSpan' | 'DualScreenSpeaker' | 'DualScreenStatusBar' | 'DualScreenTablet' | 'DualScreenUpdate' | 'DualScreenVerticalScroll' | 'DualScreenVibrate' | 'Dumbbell' | 'Dust' | 'Earth' | 'EarthLeaf' | 'Edit' | 'EditArrowBack' | 'EditOff' | 'EditProhibited' | 'EditSettings' | 'Elevator' | 'Emoji' | 'EmojiAdd' | 'EmojiAngry' | 'EmojiEdit' | 'EmojiHand' | 'EmojiHint' | 'EmojiLaugh' | 'EmojiMeh' | 'EmojiMultiple' | 'EmojiSad' | 'EmojiSadSlight' | 'EmojiSmileSlight' | 'EmojiSparkle' | 'EmojiSurprise' | 'Engine' | 'EqualCircle' | 'EqualOff' | 'Eraser' | 'EraserMedium' | 'EraserSegment' | 'EraserSmall' | 'EraserTool' | 'ErrorCircle' | 'ErrorCircleSettings' | 'ExpandUpLeft' | 'ExpandUpRight' | 'ExtendedDock' | 'Eye' | 'EyeLines' | 'EyeOff' | 'EyeTracking' | 'EyeTrackingOff' | 'Eyedropper' | 'EyedropperOff' | 'FStop' | 'FastAcceleration' | 'FastForward' | 'Fax' | 'Feed' | 'Filmstrip' | 'FilmstripImage' | 'FilmstripOff' | 'FilmstripPlay' | 'FilmstripSplit' | 'Filter' | 'FilterAdd' | 'FilterDismiss' | 'FilterSync' | 'Fingerprint' | 'Fire' | 'Fireplace' | 'FixedWidth' | 'Flag' | 'FlagCheckered' | 'FlagClock' | 'FlagOff' | 'FlagPride' | 'FlagPrideIntersexInclusiveProgress' | 'FlagPridePhiladelphia' | 'FlagPrideProgress' | 'Flash' | 'FlashAdd' | 'FlashAuto' | 'FlashCheckmark' | 'FlashFlow' | 'FlashOff' | 'FlashPlay' | 'FlashSettings' | 'FlashSparkle' | 'Flashlight' | 'FlashlightOff' | 'FlipHorizontal' | 'FlipVertical' | 'Flow' | 'Flowchart' | 'FlowchartCircle' | 'Fluent' | 'Fluid' | 'Folder' | 'FolderAdd' | 'FolderArrowLeft' | 'FolderArrowRight' | 'FolderArrowUp' | 'FolderBriefcase' | 'FolderGlobe' | 'FolderLightning' | 'FolderLink' | 'FolderList' | 'FolderMail' | 'FolderMultiple' | 'FolderOpen' | 'FolderOpenVertical' | 'FolderPeople' | 'FolderPerson' | 'FolderProhibited' | 'FolderSearch' | 'FolderSwap' | 'FolderSync' | 'FolderZip' | 'FontDecrease' | 'FontIncrease' | 'FontSpaceTrackingIn' | 'FontSpaceTrackingOut' | 'Food' | 'FoodApple' | 'FoodCake' | 'FoodCarrot' | 'FoodChickenLeg' | 'FoodEgg' | 'FoodFish' | 'FoodGrains' | 'FoodPizza' | 'FoodToast' | 'Form' | 'FormMultiple' | 'FormNew' | 'Fps120' | 'Fps240' | 'Fps30' | 'Fps60' | 'Fps960' | 'Frame' | 'FullScreenMaximize' | 'FullScreenMinimize' | 'Games' | 'GanttChart' | 'Gas' | 'GasPump' | 'Gather' | 'Gauge' | 'GaugeAdd' | 'Gavel' | 'GavelProhibited' | 'Gesture' | 'Gif' | 'Gift' | 'GiftCard' | 'GiftCardAdd' | 'GiftCardArrowRight' | 'GiftCardMoney' | 'GiftCardMultiple' | 'GiftOpen' | 'Glance' | 'GlanceDefault' | 'GlanceHorizontal' | 'GlanceHorizontalSparkle' | 'GlanceHorizontalSparkles' | 'Glasses' | 'GlassesOff' | 'Globe' | 'GlobeAdd' | 'GlobeArrowForward' | 'GlobeArrowUp' | 'GlobeClock' | 'GlobeDesktop' | 'GlobeError' | 'GlobeLocation' | 'GlobePerson' | 'GlobeProhibited' | 'GlobeSearch' | 'GlobeShield' | 'GlobeStar' | 'GlobeSurface' | 'GlobeSync' | 'GlobeVideo' | 'GlobeWarning' | 'Grid' | 'GridCircles' | 'GridDots' | 'GridKanban' | 'Group' | 'GroupDismiss' | 'GroupList' | 'GroupReturn' | 'Guardian' | 'Guest' | 'GuestAdd' | 'Guitar' | 'HandDraw' | 'HandLeft' | 'HandLeftChat' | 'HandOpenHeart' | 'HandRight' | 'HandRightOff' | 'HandWave' | 'Handshake' | 'HardDrive' | 'HardDriveCall' | 'HatGraduation' | 'HatGraduationAdd' | 'HatGraduationSparkle' | 'Hd' | 'Hdr' | 'HdrOff' | 'Headphones' | 'HeadphonesSoundWave' | 'Headset' | 'HeadsetAdd' | 'HeadsetVr' | 'Heart' | 'HeartBroken' | 'HeartCircle' | 'HeartCircleHint' | 'HeartOff' | 'HeartPulse' | 'HeartPulseCheckmark' | 'HeartPulseError' | 'HeartPulseWarning' | 'Hexagon' | 'HexagonThree' | 'Highlight' | 'HighlightAccent' | 'HighlightLink' | 'History' | 'HistoryDismiss' | 'Home' | 'HomeAdd' | 'HomeCheckmark' | 'HomeDatabase' | 'HomeHeart' | 'HomeMore' | 'HomePerson' | 'HomeSplit' | 'Hourglass' | 'HourglassHalf' | 'HourglassOneQuarter' | 'HourglassThreeQuarter' | 'Icons' | 'Image' | 'ImageAdd' | 'ImageAltText' | 'ImageArrowBack' | 'ImageArrowCounterclockwise' | 'ImageArrowForward' | 'ImageBorder' | 'ImageCircle' | 'ImageCopy' | 'ImageEdit' | 'ImageGlobe' | 'ImageMultiple' | 'ImageMultipleOff' | 'ImageOff' | 'ImageProhibited' | 'ImageReflection' | 'ImageSearch' | 'ImageShadow' | 'ImageSparkle' | 'ImageStack' | 'ImageTable' | 'ImmersiveReader' | 'Important' | 'Incognito' | 'Info' | 'InfoShield' | 'InkStroke' | 'InkStrokeArrowDown' | 'InkStrokeArrowUpDown' | 'InkingTool' | 'InkingToolAccent' | 'InprivateAccount' | 'Insert' | 'IosArrow' | 'IosArrowLtr' | 'IosArrowRtl' | 'IosChevronRight' | 'Iot' | 'IotAlert' | 'Javascript' | 'Joystick' | 'Key' | 'KeyCommand' | 'KeyMultiple' | 'KeyReset' | 'Keyboard123' | 'Keyboard' | 'KeyboardDock' | 'KeyboardLayoutFloat' | 'KeyboardLayoutOneHandedLeft' | 'KeyboardLayoutResize' | 'KeyboardLayoutSplit' | 'KeyboardMouse' | 'KeyboardShift' | 'KeyboardShiftUppercase' | 'KeyboardTab' | 'Kiosk' | 'Laptop' | 'LaptopDismiss' | 'LaptopMultiple' | 'LaptopSettings' | 'LaptopShield' | 'LaserTool' | 'Lasso' | 'LauncherSettings' | 'Layer' | 'LayerDiagonal' | 'LayerDiagonalAdd' | 'LayerDiagonalPerson' | 'LayoutCellFour' | 'LayoutCellFourFocusBottomLeft' | 'LayoutCellFourFocusBottomRight' | 'LayoutCellFourFocusTopLeft' | 'LayoutCellFourFocusTopRight' | 'LayoutColumnFour' | 'LayoutColumnFourFocusCenterLeft' | 'LayoutColumnFourFocusCenterRight' | 'LayoutColumnFourFocusLeft' | 'LayoutColumnFourFocusRight' | 'LayoutColumnOneThirdLeft' | 'LayoutColumnOneThirdRight' | 'LayoutColumnOneThirdRightHint' | 'LayoutColumnThree' | 'LayoutColumnThreeFocusCenter' | 'LayoutColumnThreeFocusLeft' | 'LayoutColumnThreeFocusRight' | 'LayoutColumnTwo' | 'LayoutColumnTwoFocusLeft' | 'LayoutColumnTwoFocusRight' | 'LayoutColumnTwoSplitLeft' | 'LayoutColumnTwoSplitLeftFocusBottomLeft' | 'LayoutColumnTwoSplitLeftFocusRight' | 'LayoutColumnTwoSplitLeftFocusTopLeft' | 'LayoutColumnTwoSplitRight' | 'LayoutColumnTwoSplitRightFocusBottomRight' | 'LayoutColumnTwoSplitRightFocusLeft' | 'LayoutColumnTwoSplitRightFocusTopRight' | 'LayoutRowFour' | 'LayoutRowFourFocusBottom' | 'LayoutRowFourFocusCenterBottom' | 'LayoutRowFourFocusCenterTop' | 'LayoutRowFourFocusTop' | 'LayoutRowThree' | 'LayoutRowThreeFocusBottom' | 'LayoutRowThreeFocusCenter' | 'LayoutRowThreeFocusTop' | 'LayoutRowTwo' | 'LayoutRowTwoFocusBottom' | 'LayoutRowTwoFocusTop' | 'LayoutRowTwoSplitBottom' | 'LayoutRowTwoSplitBottomFocusBottomLeft' | 'LayoutRowTwoSplitBottomFocusBottomRight' | 'LayoutRowTwoSplitBottomFocusTop' | 'LayoutRowTwoSplitTop' | 'LayoutRowTwoSplitTopFocusBottom' | 'LayoutRowTwoSplitTopFocusTopLeft' | 'LayoutRowTwoSplitTopFocusTopRight' | 'LeafOne' | 'LeafThree' | 'LeafTwo' | 'LearningApp' | 'Library' | 'Lightbulb' | 'LightbulbCheckmark' | 'LightbulbCircle' | 'LightbulbFilament' | 'LightbulbPerson' | 'Likert' | 'Line' | 'LineDashes' | 'LineHorizontal1' | 'LineHorizontal1Dashes' | 'LineHorizontal2DashesSolid' | 'LineHorizontal3' | 'LineHorizontal4' | 'LineHorizontal4Search' | 'LineHorizontal5' | 'LineHorizontal5Error' | 'LineStyle' | 'LineThickness' | 'Link' | 'LinkAdd' | 'LinkDismiss' | 'LinkEdit' | 'LinkMultiple' | 'LinkPerson' | 'LinkSettings' | 'LinkSquare' | 'LinkToolbox' | 'List' | 'ListBar' | 'ListBarTree' | 'ListBarTreeOffset' | 'ListRtl' | 'Live' | 'LiveOff' | 'LocalLanguage' | 'Location' | 'LocationAdd' | 'LocationAddLeft' | 'LocationAddRight' | 'LocationAddUp' | 'LocationArrow' | 'LocationArrowLeft' | 'LocationArrowRight' | 'LocationArrowUp' | 'LocationDismiss' | 'LocationLive' | 'LocationOff' | 'LocationTargetSquare' | 'LockClosed' | 'LockClosedKey' | 'LockMultiple' | 'LockOpen' | 'LockShield' | 'Lottery' | 'Luggage' | 'Mail' | 'MailAdd' | 'MailAlert' | 'MailAllRead' | 'MailAllUnread' | 'MailArrowDoubleBack' | 'MailArrowDown' | 'MailArrowForward' | 'MailArrowUp' | 'MailAttach' | 'MailCheckmark' | 'MailClock' | 'MailCopy' | 'MailDismiss' | 'MailEdit' | 'MailError' | 'MailInbox' | 'MailInboxAdd' | 'MailInboxAll' | 'MailInboxArrowDown' | 'MailInboxArrowRight' | 'MailInboxArrowUp' | 'MailInboxCheckmark' | 'MailInboxDismiss' | 'MailLink' | 'MailList' | 'MailMultiple' | 'MailOff' | 'MailOpenPerson' | 'MailPause' | 'MailProhibited' | 'MailRead' | 'MailReadMultiple' | 'MailRewind' | 'MailSettings' | 'MailShield' | 'MailTemplate' | 'MailUnread' | 'MailWarning' | 'Mailbox' | 'Map' | 'MapDrive' | 'Markdown' | 'MatchAppLayout' | 'MathFormatLinear' | 'MathFormatProfessional' | 'MathFormula' | 'MathSymbols' | 'Maximize' | 'MeetNow' | 'Megaphone' | 'MegaphoneCircle' | 'MegaphoneLoud' | 'MegaphoneOff' | 'Memory' | 'Mention' | 'MentionArrowDown' | 'MentionBrackets' | 'Merge' | 'Mic' | 'MicOff' | 'MicProhibited' | 'MicPulse' | 'MicPulseOff' | 'MicRecord' | 'MicSettings' | 'MicSparkle' | 'MicSync' | 'Microscope' | 'Midi' | 'MobileOptimized' | 'Mold' | 'Molecule' | 'Money' | 'MoneyCalculator' | 'MoneyDismiss' | 'MoneyHand' | 'MoneyOff' | 'MoneySettings' | 'MoreCircle' | 'MoreHorizontal' | 'MoreVertical' | 'MountainLocationBottom' | 'MountainLocationTop' | 'MountainTrail' | 'MoviesAndTv' | 'Multiplier12X' | 'Multiplier15X' | 'Multiplier18X' | 'Multiplier1X' | 'Multiplier2X' | 'Multiplier5X' | 'MultiselectLtr' | 'MultiselectRtl' | 'MusicNote1' | 'MusicNote2' | 'MusicNote2Play' | 'MusicNoteOff1' | 'MusicNoteOff2' | 'MyLocation' | 'Navigation' | 'NavigationLocationTarget' | 'NavigationPlay' | 'NavigationUnread' | 'NetworkAdapter' | 'NetworkCheck' | 'New' | 'News' | 'Next' | 'NextFrame' | 'Note' | 'NoteAdd' | 'NoteEdit' | 'NotePin' | 'Notebook' | 'NotebookAdd' | 'NotebookArrowCurveDown' | 'NotebookError' | 'NotebookEye' | 'NotebookLightning' | 'NotebookQuestionMark' | 'NotebookSection' | 'NotebookSectionArrowRight' | 'NotebookSubsection' | 'NotebookSync' | 'Notepad' | 'NotepadEdit' | 'NotepadPerson' | 'NumberCircle0' | 'NumberCircle1' | 'NumberCircle2' | 'NumberCircle3' | 'NumberCircle4' | 'NumberCircle5' | 'NumberCircle6' | 'NumberCircle7' | 'NumberCircle8' | 'NumberCircle9' | 'NumberRow' | 'NumberSymbol' | 'NumberSymbolDismiss' | 'NumberSymbolSquare' | 'Open' | 'OpenFolder' | 'OpenOff' | 'Options' | 'Organization' | 'OrganizationHorizontal' | 'Orientation' | 'Oval' | 'Oven' | 'PaddingDown' | 'PaddingLeft' | 'PaddingRight' | 'PaddingTop' | 'PageFit' | 'PaintBrush' | 'PaintBrushArrowDown' | 'PaintBrushArrowUp' | 'PaintBucket' | 'Pair' | 'PanelBottom' | 'PanelBottomContract' | 'PanelBottomExpand' | 'PanelLeft' | 'PanelLeftAdd' | 'PanelLeftContract' | 'PanelLeftExpand' | 'PanelLeftFocusRight' | 'PanelLeftHeader' | 'PanelLeftHeaderAdd' | 'PanelLeftHeaderKey' | 'PanelLeftKey' | 'PanelLeftText' | 'PanelLeftTextAdd' | 'PanelLeftTextDismiss' | 'PanelRight' | 'PanelRightAdd' | 'PanelRightContract' | 'PanelRightCursor' | 'PanelRightExpand' | 'PanelRightGallery' | 'PanelSeparateWindow' | 'PanelTopContract' | 'PanelTopExpand' | 'PanelTopGallery' | 'Password' | 'Patch' | 'Patient' | 'Pause' | 'PauseCircle' | 'PauseOff' | 'PauseSettings' | 'Payment' | 'Pen' | 'PenDismiss' | 'PenOff' | 'PenProhibited' | 'PenSparkle' | 'Pentagon' | 'People' | 'PeopleAdd' | 'PeopleAudience' | 'PeopleCall' | 'PeopleChat' | 'PeopleCheckmark' | 'PeopleCommunity' | 'PeopleCommunityAdd' | 'PeopleEdit' | 'PeopleError' | 'PeopleList' | 'PeopleLock' | 'PeopleMoney' | 'PeopleProhibited' | 'PeopleQueue' | 'PeopleSearch' | 'PeopleSettings' | 'PeopleStar' | 'PeopleSwap' | 'PeopleSync' | 'PeopleTeam' | 'PeopleTeamAdd' | 'PeopleTeamDelete' | 'PeopleTeamToolbox' | 'PeopleToolbox' | 'Person' | 'Person5' | 'Person6' | 'PersonAccounts' | 'PersonAdd' | 'PersonAlert' | 'PersonArrowBack' | 'PersonArrowLeft' | 'PersonArrowRight' | 'PersonAvailable' | 'PersonBoard' | 'PersonCall' | 'PersonChat' | 'PersonCircle' | 'PersonClock' | 'PersonDelete' | 'PersonDesktop' | 'PersonEdit' | 'PersonFeedback' | 'PersonHeart' | 'PersonInfo' | 'PersonKey' | 'PersonLightbulb' | 'PersonLightning' | 'PersonLink' | 'PersonLock' | 'PersonMail' | 'PersonMoney' | 'PersonNote' | 'PersonPhone' | 'PersonPill' | 'PersonProhibited' | 'PersonQuestionMark' | 'PersonRibbon' | 'PersonRunning' | 'PersonSearch' | 'PersonSettings' | 'PersonSquare' | 'PersonSquareCheckmark' | 'PersonStanding' | 'PersonStar' | 'PersonStarburst' | 'PersonSubtract' | 'PersonSupport' | 'PersonSwap' | 'PersonSync' | 'PersonTag' | 'PersonVoice' | 'PersonWalking' | 'PersonWarning' | 'PersonWrench' | 'Phone' | 'PhoneAdd' | 'PhoneArrowRight' | 'PhoneBriefcase' | 'PhoneChat' | 'PhoneCheckmark' | 'PhoneDesktop' | 'PhoneDesktopAdd' | 'PhoneDismiss' | 'PhoneEdit' | 'PhoneEraser' | 'PhoneFooterArrowDown' | 'PhoneHeaderArrowUp' | 'PhoneKey' | 'PhoneLaptop' | 'PhoneLinkSetup' | 'PhoneLock' | 'PhoneMultiple' | 'PhoneMultipleSettings' | 'PhonePageHeader' | 'PhonePagination' | 'PhonePerson' | 'PhoneScreenTime' | 'PhoneShake' | 'PhoneSpanIn' | 'PhoneSpanOut' | 'PhoneSpeaker' | 'PhoneStatusBar' | 'PhoneSubtract' | 'PhoneTablet' | 'PhoneUpdate' | 'PhoneUpdateCheckmark' | 'PhoneVerticalScroll' | 'PhoneVibrate' | 'PhotoFilter' | 'Pi' | 'PictureInPicture' | 'PictureInPictureEnter' | 'PictureInPictureExit' | 'Pill' | 'Pin' | 'PinOff' | 'Pipeline' | 'PipelineAdd' | 'PipelineArrowCurveDown' | 'PipelinePlay' | 'Pivot' | 'PlantGrass' | 'PlantRagweed' | 'Play' | 'PlayCircle' | 'PlayCircleHint' | 'PlayMultiple' | 'PlaySettings' | 'PlayingCards' | 'PlugConnected' | 'PlugConnectedAdd' | 'PlugConnectedCheckmark' | 'PlugConnectedSettings' | 'PlugDisconnected' | 'PointScan' | 'Poll' | 'PollHorizontal' | 'PollOff' | 'PortHdmi' | 'PortMicroUsb' | 'PortUsbA' | 'PortUsbC' | 'PositionBackward' | 'PositionForward' | 'PositionToBack' | 'PositionToFront' | 'Power' | 'Predictions' | 'Premium' | 'PremiumPerson' | 'PresenceAvailable' | 'PresenceAway' | 'PresenceBlocked' | 'PresenceBusy' | 'PresenceDnd' | 'PresenceOffline' | 'PresenceOof' | 'PresenceUnknown' | 'Presenter' | 'PresenterOff' | 'PreviewLink' | 'Previous' | 'PreviousFrame' | 'Print' | 'PrintAdd' | 'Production' | 'ProductionCheckmark' | 'Prohibited' | 'ProhibitedMultiple' | 'ProhibitedNote' | 'ProjectionScreen' | 'ProjectionScreenDismiss' | 'ProjectionScreenText' | 'ProtocolHandler' | 'Pulse' | 'PulseSquare' | 'PuzzleCube' | 'PuzzleCubePiece' | 'PuzzlePiece' | 'PuzzlePieceShield' | 'QrCode' | 'Question' | 'QuestionCircle' | 'QuizNew' | 'Radar' | 'RadarCheckmark' | 'RadarRectangleMultiple' | 'RadioButton' | 'RadioButtonOff' | 'Ram' | 'RatingMature' | 'RatioOneToOne' | 'ReOrder' | 'ReOrderDotsHorizontal' | 'ReOrderDotsVertical' | 'ReadAloud' | 'ReadingList' | 'ReadingListAdd' | 'ReadingModeMobile' | 'RealEstate' | 'Receipt' | 'ReceiptAdd' | 'ReceiptBag' | 'ReceiptCube' | 'ReceiptMoney' | 'ReceiptPlay' | 'ReceiptSearch' | 'ReceiptSparkles' | 'Record' | 'RecordStop' | 'RectangleLandscape' | 'RectangleLandscapeHintCopy' | 'RectangleLandscapeSparkle' | 'RectangleLandscapeSync' | 'RectangleLandscapeSyncOff' | 'RectanglePortraitLocationTarget' | 'Recycle' | 'RemixAdd' | 'Remote' | 'Rename' | 'Reorder' | 'Replay' | 'Resize' | 'ResizeImage' | 'ResizeLarge' | 'ResizeSmall' | 'ResizeTable' | 'ResizeVideo' | 'Reward' | 'Rewind' | 'Rhombus' | 'Ribbon' | 'RibbonAdd' | 'RibbonOff' | 'RibbonStar' | 'RoadCone' | 'Rocket' | 'RotateLeft' | 'RotateRight' | 'Router' | 'RowTriple' | 'Rss' | 'Ruler' | 'Run' | 'Sanitize' | 'Save' | 'SaveArrowRight' | 'SaveCopy' | 'SaveEdit' | 'SaveImage' | 'SaveMultiple' | 'SaveSearch' | 'SaveSync' | 'Savings' | 'ScaleFill' | 'ScaleFit' | 'Scales' | 'Scan' | 'ScanCamera' | 'ScanDash' | 'ScanObject' | 'ScanPerson' | 'ScanQrCode' | 'ScanTable' | 'ScanText' | 'ScanThumbUp' | 'ScanThumbUpOff' | 'ScanType' | 'ScanTypeCheckmark' | 'ScanTypeOff' | 'Scratchpad' | 'ScreenCut' | 'ScreenPerson' | 'ScreenSearch' | 'Screenshot' | 'ScreenshotRecord' | 'Script' | 'Search' | 'SearchInfo' | 'SearchSettings' | 'SearchShield' | 'SearchSquare' | 'SearchVisual' | 'Seat' | 'SeatAdd' | 'SelectAllOff' | 'SelectAllOn' | 'SelectObject' | 'SelectObjectSkew' | 'SelectObjectSkewDismiss' | 'SelectObjectSkewEdit' | 'Send' | 'SendBeaker' | 'SendClock' | 'SendCopy' | 'SerialPort' | 'Server' | 'ServerLink' | 'ServerMultiple' | 'ServerPlay' | 'ServerSurface' | 'ServerSurfaceMultiple' | 'ServiceBell' | 'Settings' | 'SettingsChat' | 'SettingsCogMultiple' | 'ShapeExclude' | 'ShapeIntersect' | 'ShapeOrganic' | 'ShapeSubtract' | 'ShapeUnion' | 'Shapes' | 'Share' | 'ShareAndroid' | 'ShareCloseTray' | 'ShareIos' | 'ShareScreenPerson' | 'ShareScreenPersonOverlay' | 'ShareScreenPersonOverlayInside' | 'ShareScreenPersonP' | 'ShareScreenStart' | 'ShareScreenStop' | 'Shield' | 'ShieldAdd' | 'ShieldBadge' | 'ShieldCheckmark' | 'ShieldDismiss' | 'ShieldDismissShield' | 'ShieldError' | 'ShieldGlobe' | 'ShieldKeyhole' | 'ShieldLock' | 'ShieldPerson' | 'ShieldPersonAdd' | 'ShieldProhibited' | 'ShieldQuestion' | 'ShieldTask' | 'Shifts' | 'Shifts30Minutes' | 'ShiftsActivity' | 'ShiftsAdd' | 'ShiftsAvailability' | 'ShiftsCheckmark' | 'ShiftsDay' | 'ShiftsOpen' | 'ShiftsProhibited' | 'ShiftsQuestionMark' | 'ShiftsTeam' | 'ShoppingBag' | 'ShoppingBagAdd' | 'ShoppingBagArrowLeft' | 'ShoppingBagDismiss' | 'ShoppingBagPause' | 'ShoppingBagPercent' | 'ShoppingBagPlay' | 'ShoppingBagTag' | 'Shortpick' | 'Showerhead' | 'SidebarSearchLtr' | 'SidebarSearchRtl' | 'SignOut' | 'Signature' | 'Sim' | 'SkipBack10' | 'SkipForward10' | 'SkipForward30' | 'SkipForwardTab' | 'SlashForward' | 'Sleep' | 'SlideAdd' | 'SlideArrowRight' | 'SlideContent' | 'SlideEraser' | 'SlideGrid' | 'SlideHide' | 'SlideLayout' | 'SlideLink' | 'SlideMicrophone' | 'SlideMultiple' | 'SlideMultipleArrowRight' | 'SlideMultipleSearch' | 'SlideRecord' | 'SlideSearch' | 'SlideSettings' | 'SlideSize' | 'SlideText' | 'SlideTextEdit' | 'SlideTextMultiple' | 'SlideTextPerson' | 'SlideTextSparkle' | 'SlideTransition' | 'Smartwatch' | 'SmartwatchDot' | 'Snooze' | 'SoundSource' | 'SoundWaveCircle' | 'Space3D' | 'Spacebar' | 'Sparkle' | 'SparkleCircle' | 'Speaker0' | 'Speaker1' | 'Speaker2' | 'SpeakerBluetooth' | 'SpeakerBox' | 'SpeakerEdit' | 'SpeakerMute' | 'SpeakerOff' | 'SpeakerSettings' | 'SpeakerUsb' | 'SpinnerIos' | 'SplitHint' | 'SplitHorizontal' | 'SplitVertical' | 'Sport' | 'SportAmericanFootball' | 'SportBaseball' | 'SportBasketball' | 'SportHockey' | 'SportSoccer' | 'SprayCan' | 'Square' | 'SquareAdd' | 'SquareArrowForward' | 'SquareDismiss' | 'SquareEraser' | 'SquareHint' | 'SquareHintApps' | 'SquareHintArrowBack' | 'SquareHintHexagon' | 'SquareHintSparkles' | 'SquareMultiple' | 'SquareShadow' | 'SquaresNested' | 'Stack' | 'StackAdd' | 'StackArrowForward' | 'StackStar' | 'StackVertical' | 'Star' | 'StarAdd' | 'StarArrowBack' | 'StarArrowRightEnd' | 'StarArrowRightStart' | 'StarCheckmark' | 'StarDismiss' | 'StarEdit' | 'StarEmphasis' | 'StarHalf' | 'StarLineHorizontal3' | 'StarOff' | 'StarOneQuarter' | 'StarProhibited' | 'StarSettings' | 'StarThreeQuarter' | 'Status' | 'Step' | 'Steps' | 'Stethoscope' | 'Sticker' | 'StickerAdd' | 'Stop' | 'Storage' | 'StoreMicrosoft' | 'Stream' | 'StreamInput' | 'StreamInputOutput' | 'StreamOutput' | 'StreetSign' | 'StyleGuide' | 'SubGrid' | 'Subtitles' | 'Subtract' | 'SubtractCircle' | 'SubtractCircleArrowBack' | 'SubtractCircleArrowForward' | 'SubtractParentheses' | 'SubtractSquare' | 'SubtractSquareMultiple' | 'SurfaceEarbuds' | 'SurfaceHub' | 'SwimmingPool' | 'SwipeDown' | 'SwipeRight' | 'SwipeUp' | 'Symbols' | 'SyncOff' | 'Syringe' | 'System' | 'Tab' | 'TabAdd' | 'TabArrowLeft' | 'TabDesktop' | 'TabDesktopArrowClockwise' | 'TabDesktopArrowLeft' | 'TabDesktopBottom' | 'TabDesktopClock' | 'TabDesktopCopy' | 'TabDesktopImage' | 'TabDesktopLink' | 'TabDesktopMultiple' | 'TabDesktopMultipleAdd' | 'TabDesktopMultipleBottom' | 'TabDesktopNewPage' | 'TabInPrivate' | 'TabInprivateAccount' | 'TabProhibited' | 'TabShieldDismiss' | 'Table' | 'TableAdd' | 'TableArrowUp' | 'TableBottomRow' | 'TableCalculator' | 'TableCellEdit' | 'TableCellsMerge' | 'TableCellsSplit' | 'TableChecker' | 'TableColumnTopBottom' | 'TableCopy' | 'TableDefault' | 'TableDeleteColumn' | 'TableDeleteRow' | 'TableDismiss' | 'TableEdit' | 'TableFreezeColumn' | 'TableFreezeColumnAndRow' | 'TableFreezeRow' | 'TableImage' | 'TableInsertColumn' | 'TableInsertRow' | 'TableLightning' | 'TableLink' | 'TableLock' | 'TableMoveAbove' | 'TableMoveBelow' | 'TableMoveLeft' | 'TableMoveRight' | 'TableMultiple' | 'TableOffset' | 'TableOffsetAdd' | 'TableOffsetLessThanOrEqualTo' | 'TableOffsetSettings' | 'TableResizeColumn' | 'TableResizeRow' | 'TableSearch' | 'TableSettings' | 'TableSimple' | 'TableSimpleCheckmark' | 'TableSimpleExclude' | 'TableSimpleInclude' | 'TableSimpleMultiple' | 'TableSplit' | 'TableStackAbove' | 'TableStackBelow' | 'TableStackLeft' | 'TableStackRight' | 'TableSwitch' | 'Tablet' | 'TabletLaptop' | 'TabletSpeaker' | 'Tabs' | 'Tag' | 'TagCircle' | 'TagDismiss' | 'TagError' | 'TagLock' | 'TagLockAccent' | 'TagMultiple' | 'TagOff' | 'TagQuestionMark' | 'TagReset' | 'TagSearch' | 'TapDouble' | 'TapSingle' | 'Target' | 'TargetAdd' | 'TargetArrow' | 'TargetDismiss' | 'TargetEdit' | 'TaskListAdd' | 'TaskListLtr' | 'TaskListRtl' | 'TaskListSquareAdd' | 'TaskListSquareDatabase' | 'TaskListSquareLtr' | 'TaskListSquarePerson' | 'TaskListSquareRtl' | 'TaskListSquareSettings' | 'TasksApp' | 'TeardropBottomRight' | 'Teddy' | 'Temperature' | 'Tent' | 'TetrisApp' | 'Text' | 'TextAbcUnderlineDouble' | 'TextAdd' | 'TextAddSpaceAfter' | 'TextAddSpaceBefore' | 'TextAddT' | 'TextAlignCenter' | 'TextAlignCenterRotate270' | 'TextAlignCenterRotate90' | 'TextAlignDistributed' | 'TextAlignDistributedEvenly' | 'TextAlignDistributedVertical' | 'TextAlignJustify' | 'TextAlignJustifyLow' | 'TextAlignJustifyLow90' | 'TextAlignJustifyLowRotate270' | 'TextAlignJustifyLowRotate90' | 'TextAlignJustifyRotate270' | 'TextAlignJustifyRotate90' | 'TextAlignLeft' | 'TextAlignLeftRotate270' | 'TextAlignLeftRotate90' | 'TextAlignRight' | 'TextAlignRightRotate270' | 'TextAlignRightRotate90' | 'TextArrowDownRightColumn' | 'TextAsterisk' | 'TextBaseline' | 'TextBold' | 'TextBoxSettings' | 'TextBulletList' | 'TextBulletList270' | 'TextBulletList90' | 'TextBulletListAdd' | 'TextBulletListCheckmark' | 'TextBulletListDismiss' | 'TextBulletListLtr' | 'TextBulletListLtr90' | 'TextBulletListLtrRotate270' | 'TextBulletListRtl' | 'TextBulletListRtl90' | 'TextBulletListSquare' | 'TextBulletListSquareClock' | 'TextBulletListSquareEdit' | 'TextBulletListSquarePerson' | 'TextBulletListSquareSearch' | 'TextBulletListSquareSettings' | 'TextBulletListSquareShield' | 'TextBulletListSquareSparkle' | 'TextBulletListSquareToolbox' | 'TextBulletListSquareWarning' | 'TextBulletListTree' | 'TextCaseLowercase' | 'TextCaseTitle' | 'TextCaseUppercase' | 'TextChangeCase' | 'TextClearFormatting' | 'TextCollapse' | 'TextColor' | 'TextColorAccent' | 'TextColumnOne' | 'TextColumnOneNarrow' | 'TextColumnOneSemiNarrow' | 'TextColumnOneWide' | 'TextColumnOneWideLightning' | 'TextColumnThree' | 'TextColumnTwo' | 'TextColumnTwoLeft' | 'TextColumnTwoRight' | 'TextColumnWide' | 'TextContinuous' | 'TextDensity' | 'TextDescription' | 'TextDescriptionLtr' | 'TextDescriptionRtl' | 'TextDirectionHorizontalLeft' | 'TextDirectionHorizontalLtr' | 'TextDirectionHorizontalRight' | 'TextDirectionHorizontalRtl' | 'TextDirectionRotate270Right' | 'TextDirectionRotate315Right' | 'TextDirectionRotate45Right' | 'TextDirectionRotate90Left' | 'TextDirectionRotate90Ltr' | 'TextDirectionRotate90Right' | 'TextDirectionRotate90Rtl' | 'TextDirectionVertical' | 'TextEditStyle' | 'TextEditStyleCharacterA' | 'TextEditStyleCharacterGa' | 'TextEffects' | 'TextEffectsSparkle' | 'TextExpand' | 'TextField' | 'TextFirstLine' | 'TextFont' | 'TextFontInfo' | 'TextFontSize' | 'TextFootnote' | 'TextGrammarArrowLeft' | 'TextGrammarArrowRight' | 'TextGrammarCheckmark' | 'TextGrammarDismiss' | 'TextGrammarError' | 'TextGrammarLightning' | 'TextGrammarSettings' | 'TextGrammarWand' | 'TextHanging' | 'TextHeader1' | 'TextHeader1Lines' | 'TextHeader1LinesCaret' | 'TextHeader2' | 'TextHeader2Lines' | 'TextHeader2LinesCaret' | 'TextHeader3' | 'TextHeader3Lines' | 'TextHeader3LinesCaret' | 'TextIndentDecrease' | 'TextIndentDecreaseLtr' | 'TextIndentDecreaseLtr90' | 'TextIndentDecreaseLtrRotate270' | 'TextIndentDecreaseRotate270' | 'TextIndentDecreaseRotate90' | 'TextIndentDecreaseRtl' | 'TextIndentDecreaseRtl90' | 'TextIndentDecreaseRtlRotate270' | 'TextIndentIncrease' | 'TextIndentIncreaseLtr' | 'TextIndentIncreaseLtr90' | 'TextIndentIncreaseLtrRotate270' | 'TextIndentIncreaseRotate270' | 'TextIndentIncreaseRotate90' | 'TextIndentIncreaseRtl' | 'TextIndentIncreaseRtl90' | 'TextIndentIncreaseRtlRotate270' | 'TextItalic' | 'TextLineSpacing' | 'TextMore' | 'TextNumberFormat' | 'TextNumberListLtr' | 'TextNumberListLtr90' | 'TextNumberListLtrRotate270' | 'TextNumberListRotate270' | 'TextNumberListRotate90' | 'TextNumberListRtl' | 'TextNumberListRtl90' | 'TextNumberListRtlRotate270' | 'TextParagraph' | 'TextParagraphDirection' | 'TextParagraphDirectionLeft' | 'TextParagraphDirectionRight' | 'TextPeriodAsterisk' | 'TextPositionBehind' | 'TextPositionFront' | 'TextPositionLine' | 'TextPositionSquare' | 'TextPositionSquareLeft' | 'TextPositionSquareRight' | 'TextPositionThrough' | 'TextPositionTight' | 'TextPositionTopBottom' | 'TextProofingTools' | 'TextQuote' | 'TextSortAscending' | 'TextSortDescending' | 'TextStrikethrough' | 'TextSubscript' | 'TextSuperscript' | 'TextT' | 'TextTTag' | 'TextUnderline' | 'TextUnderlineCharacterU' | 'TextUnderlineDouble' | 'TextWholeWord' | 'TextWordCount' | 'TextWrap' | 'TextWrapOff' | 'Textbox' | 'TextboxAlignBottom' | 'TextboxAlignBottomCenter' | 'TextboxAlignBottomLeft' | 'TextboxAlignBottomRight' | 'TextboxAlignBottomRotate90' | 'TextboxAlignCenter' | 'TextboxAlignMiddle' | 'TextboxAlignMiddleLeft' | 'TextboxAlignMiddleRight' | 'TextboxAlignMiddleRotate90' | 'TextboxAlignTop' | 'TextboxAlignTopCenter' | 'TextboxAlignTopLeft' | 'TextboxAlignTopRight' | 'TextboxAlignTopRotate90' | 'TextboxMore' | 'TextboxRotate90' | 'TextboxSettings' | 'Thinking' | 'ThumbDislike' | 'ThumbLike' | 'ThumbLikeDislike' | 'TicketDiagonal' | 'TicketHorizontal' | 'TimeAndWeather' | 'TimePicker' | 'Timeline' | 'Timer10' | 'Timer' | 'Timer2' | 'Timer3' | 'TimerOff' | 'ToggleLeft' | 'ToggleMultiple' | 'ToggleRight' | 'Toolbox' | 'TooltipQuote' | 'TopSpeed' | 'Translate' | 'TranslateAuto' | 'TranslateOff' | 'Transmission' | 'TrayItemAdd' | 'TrayItemRemove' | 'TreeDeciduous' | 'TreeEvergreen' | 'Triangle' | 'TriangleDown' | 'TriangleLeft' | 'TriangleRight' | 'TriangleUp' | 'Trophy' | 'TrophyLock' | 'TrophyOff' | 'Tv' | 'TvArrowRight' | 'TvUsb' | 'Umbrella' | 'UninstallApp' | 'UsbPlug' | 'UsbStick' | 'Vault' | 'VehicleBicycle' | 'VehicleBus' | 'VehicleCab' | 'VehicleCableCar' | 'VehicleCar' | 'VehicleCarCollision' | 'VehicleCarParking' | 'VehicleCarProfile' | 'VehicleCarProfileLtr' | 'VehicleCarProfileLtrClock' | 'VehicleCarProfileRtl' | 'VehicleShip' | 'VehicleSubway' | 'VehicleSubwayClock' | 'VehicleTruck' | 'VehicleTruckBag' | 'VehicleTruckCube' | 'VehicleTruckProfile' | 'Video' | 'Video360' | 'Video360Off' | 'VideoAdd' | 'VideoBackgroundEffect' | 'VideoBackgroundEffectHorizontal' | 'VideoChat' | 'VideoClip' | 'VideoClipMultiple' | 'VideoClipOff' | 'VideoClipOptimize' | 'VideoLink' | 'VideoOff' | 'VideoPeople' | 'VideoPerson' | 'VideoPersonCall' | 'VideoPersonClock' | 'VideoPersonOff' | 'VideoPersonPulse' | 'VideoPersonSparkle' | 'VideoPersonSparkleOff' | 'VideoPersonStar' | 'VideoPersonStarOff' | 'VideoPlayPause' | 'VideoProhibited' | 'VideoRecording' | 'VideoSecurity' | 'VideoSwitch' | 'VideoSync' | 'ViewDesktop' | 'ViewDesktopMobile' | 'VirtualNetwork' | 'VirtualNetworkToolbox' | 'Voicemail' | 'VoicemailArrowBack' | 'VoicemailArrowForward' | 'VoicemailArrowSubtract' | 'VoicemailShield' | 'VoicemailSubtract' | 'Vote' | 'WalkieTalkie' | 'Wallet' | 'WalletCreditCard' | 'Wallpaper' | 'Wand' | 'Warning' | 'WarningShield' | 'Washer' | 'Water' | 'WeatherBlowingSnow' | 'WeatherCloudy' | 'WeatherDrizzle' | 'WeatherDuststorm' | 'WeatherFog' | 'WeatherHailDay' | 'WeatherHailNight' | 'WeatherHaze' | 'WeatherMoon' | 'WeatherMoonOff' | 'WeatherPartlyCloudyDay' | 'WeatherPartlyCloudyNight' | 'WeatherRain' | 'WeatherRainShowersDay' | 'WeatherRainShowersNight' | 'WeatherRainSnow' | 'WeatherSnow' | 'WeatherSnowShowerDay' | 'WeatherSnowShowerNight' | 'WeatherSnowflake' | 'WeatherSqualls' | 'WeatherSunny' | 'WeatherSunnyHigh' | 'WeatherSunnyLow' | 'WeatherThunderstorm' | 'WebAsset' | 'Whiteboard' | 'WhiteboardOff' | 'Wifi1' | 'Wifi2' | 'Wifi3' | 'Wifi4' | 'WifiLock' | 'WifiOff' | 'WifiSettings' | 'WifiWarning' | 'Window' | 'WindowAd' | 'WindowAdOff' | 'WindowAdPerson' | 'WindowApps' | 'WindowArrowUp' | 'WindowBulletList' | 'WindowBulletListAdd' | 'WindowConsole' | 'WindowDatabase' | 'WindowDevEdit' | 'WindowDevTools' | 'WindowEdit' | 'WindowHeaderHorizontal' | 'WindowHeaderHorizontalOff' | 'WindowHeaderVertical' | 'WindowInprivate' | 'WindowInprivateAccount' | 'WindowLocationTarget' | 'WindowMultiple' | 'WindowMultipleSwap' | 'WindowNew' | 'WindowPlay' | 'WindowSettings' | 'WindowShield' | 'WindowText' | 'WindowWrench' | 'Wrench' | 'WrenchScrewdriver' | 'WrenchSettings' | 'XboxConsole' | 'XboxController' | 'XboxControllerError' | 'Xray' | 'ZoomFit' | 'ZoomIn' | 'ZoomOut';

type BadgeAppearance = 'filled' | 'tint';
type BadgeStyle = 'default' | 'subtle' | 'informative' | 'accent' | 'good' | 'attention' | 'warning';
/**
 * A badge element to show an icon and/or text in a compact form over a colored background.
 */
interface IBadge extends IElement {
    type: 'Badge';
    /**
     * Controls the strength of the background color.
     */
    appearance?: BadgeAppearance;
    /**
     * The name of the icon to display.
     */
    icon?: IconName;
    /**
     * Controls the position of the icon.
     */
    iconPosition?: 'before' | 'after';
    /**
     * Controls the shape of the badge.
     */
    shape?: 'square' | 'rounded' | 'circular';
    /**
     * The size of the badge.
     */
    size?: 'medium' | 'large' | 'extraLarge';
    /**
     * The style of the badge.
     */
    style?: BadgeStyle;
    /**
     * The text to display.
     */
    text?: string;
    /**
     * Controls the tooltip text to display when the badge is hovered over.
     */
    tooltip?: string;
}
type BadgeOptions = Omit<IBadge, 'type'>;
/**
 * A badge element to show an icon and/or text in a compact form over a colored background.
 */
declare class Badge extends Element implements IBadge {
    type: 'Badge';
    /**
     * Controls the strength of the background color.
     */
    appearance?: BadgeAppearance;
    /**
     * The name of the icon to display.
     */
    icon?: IconName;
    /**
     * Controls the position of the icon.
     */
    iconPosition?: 'before' | 'after';
    /**
     * Controls the shape of the badge.
     */
    shape?: 'square' | 'rounded' | 'circular';
    /**
     * The size of the badge.
     */
    size?: 'medium' | 'large' | 'extraLarge';
    /**
     * The style of the badge.
     */
    style?: BadgeStyle;
    /**
     * The text to display.
     */
    text?: string;
    /**
     * Controls the tooltip text to display when the badge is hovered over.
     */
    tooltip?: string;
    constructor(options?: BadgeOptions);
    static from(options: BadgeOptions): Badge;
    withAppearance(value: BadgeAppearance): this;
    withIcon(value: IconName, position?: 'before' | 'after'): this;
    withIconPosition(value: 'before' | 'after'): this;
    withShape(value: 'square' | 'rounded' | 'circular'): this;
    withSize(value: 'medium' | 'large' | 'extraLarge'): this;
    withStyle(value: BadgeStyle): this;
    withText(value: string): this;
    withTooltip(value: string): this;
}

type CodeLanguage = 'Bash' | 'C' | 'Cpp' | 'CSharp' | 'Css' | 'Dos' | 'Go' | 'Graphql' | 'Html' | 'Java' | 'JavaScript' | 'Json' | 'ObjectiveC' | 'Perl' | 'Php' | 'PlainText' | 'PowerShell' | 'Python' | 'Sql' | 'TypeScript' | 'VbNet' | 'Verilog' | 'Vhdl' | 'Xml';
/**
 * Displays a block of code with syntax highlighting
 */
interface ICodeBlock extends IElement {
    type: 'CodeBlock';
    /**
     * which programming language to use.
     */
    language?: CodeLanguage;
    /**
     * code to display/highlight.
     */
    codeSnippet?: string;
    /**
     * which line number to display on the first line.
     */
    startLineNumber?: number;
}
type CodeBlockOptions = Omit<ICodeBlock, 'type'>;
/**
 * Displays a block of code with syntax highlighting
 */
declare class CodeBlock extends Element implements ICodeBlock {
    type: 'CodeBlock';
    /**
     * which programming language to use.
     */
    language?: CodeLanguage;
    /**
     * code to display/highlight.
     */
    codeSnippet?: string;
    /**
     * which line number to display on the first line.
     */
    startLineNumber?: number;
    constructor(options?: CodeBlockOptions);
    static from(options: CodeBlockOptions): CodeBlock;
    withLanguage(value: CodeLanguage): this;
    withCode(value: string): this;
    withStartLineNumber(value: number): this;
}

type ImageSize = 'auto' | 'stretch' | 'small' | 'medium' | 'large';
/**
 * Displays an image. Acceptable formats are PNG, JPEG, and GIF
 */
interface IImage extends IElement {
    type: 'Image';
    /**
     * The URL to the image. Supports data URI in version 1.2+
     */
    url: string;
    /**
     * Alternate text describing the image.
     */
    altText?: string;
    /**
     * Controls if the image can be expanded to full screen.
     */
    allowExpand?: boolean;
    /**
     * Applies a background to a transparent image. This property will respect the image style.
     */
    backgroundColor?: string;
    /**
     * An Action that will be invoked when the Image is tapped or selected. Action.ShowCard is not supported.
     */
    selectAction?: SelectAction;
    /**
     * Controls the approximate size of the image. The physical dimensions will vary per host.
     */
    size?: ImageSize;
    /**
     * Controls how this Image is displayed.
     */
    style?: 'default' | 'person';
    /**
     * The desired on-screen width of the image, ending in ‘px’. E.g., 50px. This overrides the size property.
     */
    width?: string;
}
type ImageOptions = Omit<IImage, 'type' | 'url'>;
/**
 * Displays an image. Acceptable formats are PNG, JPEG, and GIF
 */
declare class Image extends Element implements IImage {
    type: 'Image';
    /**
     * The URL to the image. Supports data URI in version 1.2+
     */
    url: string;
    /**
     * Alternate text describing the image.
     */
    altText?: string;
    /**
     * Controls if the image can be expanded to full screen.
     */
    allowExpand?: boolean;
    /**
     * Applies a background to a transparent image. This property will respect the image style.
     */
    backgroundColor?: string;
    /**
     * An Action that will be invoked when the Image is tapped or selected. Action.ShowCard is not supported.
     */
    selectAction?: SelectAction;
    /**
     * Controls the approximate size of the image. The physical dimensions will vary per host.
     */
    size?: ImageSize;
    /**
     * Controls how this Image is displayed.
     */
    style?: 'default' | 'person';
    /**
     * The desired on-screen width of the image, ending in ‘px’. E.g., 50px. This overrides the size property.
     */
    width?: string;
    constructor(url: string, options?: ImageOptions);
    static from(options: Omit<IImage, 'type'>): Image;
    withAltText(value: string): this;
    withAllowExpand(value?: boolean): this;
    withBackgroundColor(value: string): this;
    withSelectAction(value: SelectAction): this;
    withSize(value: ImageSize): this;
    withStyle(value: 'default' | 'person'): this;
    withWidth(value: string): this;
}

/**
 * Displays a media player for audio or video content.
 */
interface IMedia extends IElement {
    type: 'Media';
    /**
     * Array of media sources to attempt to play.
     */
    sources: IMediaSource[];
    /**
     * URL of an image to display before playing. Supports data URI in version 1.2+. If poster is omitted, the Media element will either use a default poster (controlled by the host application) or will attempt to automatically pull the poster from the target video service when the source URL points to a video from a Web provider such as YouTube.
     */
    poster?: string;
    /**
     * Alternate text describing the audio or video.
     */
    altText?: string;
    /**
     * Array of captions sources for the media element to provide.
     */
    captionSources?: ICaptionSource[];
}
type MediaOptions = Omit<IMedia, 'type' | 'sources'>;
/**
 * Displays a media player for audio or video content.
 */
declare class Media extends Element implements IMedia {
    type: 'Media';
    /**
     * Array of media sources to attempt to play.
     */
    sources: IMediaSource[];
    /**
     * URL of an image to display before playing. Supports data URI in version 1.2+. If poster is omitted, the Media element will either use a default poster (controlled by the host application) or will attempt to automatically pull the poster from the target video service when the source URL points to a video from a Web provider such as YouTube.
     */
    poster?: string;
    /**
     * Alternate text describing the audio or video.
     */
    altText?: string;
    /**
     * Array of captions sources for the media element to provide.
     */
    captionSources?: ICaptionSource[];
    constructor(...sources: IMediaSource[]);
    static from(options: Omit<IMedia, 'type'>): Media;
    withPoster(value: string): this;
    withAltText(value: string): this;
    addSources(...value: IMediaSource[]): this;
    addCaptionSources(...value: ICaptionSource[]): this;
}
/**
 * Defines a source for a Media element
 */
interface IMediaSource {
    /**
     * URL to media. Supports data URI in version 1.2+
     */
    url: string;
    /**
     * Mime type of associated media (e.g. "video/mp4"). For YouTube and other Web video URLs, mimeType can be omitted.
     */
    mimeType?: string;
}
/**
 * Defines a source for a Media element
 */
declare class MediaSource implements IMediaSource {
    /**
     * URL to media. Supports data URI in version 1.2+
     */
    url: string;
    /**
     * Mime type of associated media (e.g. "video/mp4"). For YouTube and other Web video URLs, mimeType can be omitted.
     */
    mimeType?: string;
    constructor(url: string, mimeType?: string);
}
/**
 * Defines a source for captions
 */
interface ICaptionSource {
    /**
     * Label of this caption to show to the user.
     */
    label: string;
    /**
     * URL to captions.
     */
    url: string;
    /**
     * Mime type of associated caption file (e.g. "vtt"). For rendering in JavaScript, only "vtt" is supported, for rendering in UWP, "vtt" and "srt" are supported.
     */
    mimeType: string;
}
/**
 * Defines a source for captions
 */
declare class CaptionSource implements ICaptionSource {
    /**
     * Label of this caption to show to the user.
     */
    label: string;
    /**
     * URL to captions.
     */
    url: string;
    /**
     * Mime type of associated caption file (e.g. "vtt"). For rendering in JavaScript, only "vtt" is supported, for rendering in UWP, "vtt" and "srt" are supported.
     */
    mimeType: string;
    constructor(label: string, url: string, mimeType: string);
}

/**
 * A progress bar element, to represent a value within a range.
 */
interface IProgressBar extends IElement {
    type: 'ProgressBar';
    /**
     * @default `accent`
     */
    color?: Color;
    /**
     * percentage
     */
    value?: number;
    /**
     * the max value
     */
    max?: number;
}
type ProgressBarOptions = Omit<IProgressBar, 'type'>;
/**
 * A progress bar element, to represent a value within a range.
 */
declare class ProgressBar extends Element implements IProgressBar {
    type: 'ProgressBar';
    /**
     * @default `accent`
     */
    color?: Color;
    /**
     * percentage
     */
    value?: number;
    /**
     * the max value
     */
    max?: number;
    constructor(options?: ProgressBarOptions);
    static from(options: ProgressBarOptions): ProgressBar;
    withColor(value: Color): this;
    withValue(value: number): this;
    withMax(value: number): this;
}

/**
 * A spinning ring element, to indicate progress.
 */
interface IProgressRing extends IElement {
    type: 'ProgressRing';
    /**
     * The label of the progress ring.
     */
    label?: string;
    /**
     * Controls the relative position of the label to the progress ring.
     * @default `above`
     */
    labelPosition?: 'before' | 'after' | 'above' | 'below';
    /**
     * The size of the progress ring.
     * @default `medium`
     */
    size?: 'tiny' | 'small' | 'medium' | 'large';
}
type ProgressRingOptions = Omit<IProgressRing, 'type'>;
/**
 * A spinning ring element, to indicate progress.
 */
declare class ProgressRing extends Element implements IProgressRing {
    type: 'ProgressRing';
    /**
     * The label of the progress ring.
     */
    label?: string;
    /**
     * Controls the relative position of the label to the progress ring.
     * @default `above`
     */
    labelPosition?: 'before' | 'after' | 'above' | 'below';
    /**
     * The size of the progress ring.
     * @default `medium`
     */
    size?: 'tiny' | 'small' | 'medium' | 'large';
    constructor(options?: ProgressRingOptions);
    static from(options: ProgressRingOptions): ProgressRing;
    withLabel(value: string, position?: 'before' | 'after' | 'above' | 'below'): this;
    withLabelPosition(value: 'before' | 'after' | 'above' | 'below'): this;
    withSize(value: 'tiny' | 'small' | 'medium' | 'large'): this;
}

/**
 * Defines a single run of formatted text. A TextRun with no properties set can be represented in the json as string containing the text as a shorthand for the json object. These two representations are equivalent.
 */
interface ITextRun {
    type: 'TextRun';
    /**
     * Text to display. Markdown is not supported.
     */
    text: string;
    /**
     * Controls the color of the text.
     */
    color?: Color;
    /**
     * The type of font to use
     */
    fontType?: FontType;
    /**
     * If true, displays the text highlighted.
     */
    highlight?: boolean;
    /**
     * If true, displays text slightly toned down to appear less prominent.
     */
    isSubtle?: boolean;
    /**
     * If true, displays the text using italic font.
     */
    italic?: boolean;
    /**
     * Action to invoke when this text run is clicked. Visually changes the text run into a hyperlink. Action.ShowCard is not supported.
     */
    selectAction?: SelectAction;
    /**
     * Controls size of text.
     */
    size?: FontSize;
    /**
     * If true, displays the text with strikethrough.
     */
    strikethrough?: boolean;
    /**
     * If true, displays the text with an underline.
     */
    underline?: boolean;
    /**
     * Controls the weight of the text.
     */
    weight?: FontWeight;
}
type TextRunOptions = Omit<ITextRun, 'type' | 'text'>;
/**
 * Defines a single run of formatted text. A TextRun with no properties set can be represented in the json as string containing the text as a shorthand for the json object. These two representations are equivalent.
 */
declare class TextRun implements ITextRun {
    type: 'TextRun';
    /**
     * Text to display. Markdown is not supported.
     */
    text: string;
    /**
     * Controls the color of the text.
     */
    color?: Color;
    /**
     * The type of font to use
     */
    fontType?: FontType;
    /**
     * If true, displays the text highlighted.
     */
    highlight?: boolean;
    /**
     * If true, displays text slightly toned down to appear less prominent.
     */
    isSubtle?: boolean;
    /**
     * If true, displays the text using italic font.
     */
    italic?: boolean;
    /**
     * Action to invoke when this text run is clicked. Visually changes the text run into a hyperlink. Action.ShowCard is not supported.
     */
    selectAction?: SelectAction;
    /**
     * Controls size of text.
     */
    size?: FontSize;
    /**
     * If true, displays the text with strikethrough.
     */
    strikethrough?: boolean;
    /**
     * If true, displays the text with an underline.
     */
    underline?: boolean;
    /**
     * Controls the weight of the text.
     */
    weight?: FontWeight;
    constructor(text: string, options?: TextRunOptions);
    static from(options: Omit<ITextRun, 'type'>): TextRun;
    withColor(value: Color): this;
    withFontType(value: FontType): this;
    withHighlight(value?: boolean): this;
    withSubtle(value?: boolean): this;
    withItalic(value?: boolean): this;
    withSelectAction(value: SelectAction): this;
    withSize(value: FontSize): this;
    withStrikeThrough(value?: boolean): this;
    withUnderline(value?: boolean): this;
    withWeight(value: FontWeight): this;
    addText(...value: string[]): this;
    toString(): string;
}

/**
 * Defines an array of inlines, allowing for inline text formatting.
 */
interface IRichTextBlock extends IElement {
    type: 'RichTextBlock';
    /**
     * The array of inlines.
     */
    inlines: (ITextRun | string)[];
}
type RichTextBlockOptions = Omit<IRichTextBlock, 'type' | 'inlines'>;
/**
 * Defines an array of inlines, allowing for inline text formatting.
 */
declare class RichTextBlock extends Element implements IRichTextBlock {
    type: 'RichTextBlock';
    /**
     * The array of inlines.
     */
    inlines: (ITextRun | string)[];
    constructor(...inlines: (ITextRun | string)[]);
    static from(options: Omit<IRichTextBlock, 'type'>): RichTextBlock;
    addText(...value: (ITextRun | string)[]): this;
    toString(delim?: string): string;
}

/**
 * Displays text, allowing control over font sizes, weight, and color.
 */
interface ITextBlock extends IElement {
    type: 'TextBlock';
    /**
     * Text to display. A subset of markdown is supported (https://aka.ms/ACTextFeatures)
     */
    text: string;
    /**
     * The style of this TextBlock for accessibility purposes.
     */
    style?: 'default' | 'heading';
    /**
     * Controls the color of TextBlock elements.
     */
    color?: Color;
    /**
     * Type of font to use for rendering
     */
    fontType?: FontType | null;
    /**
     * If true, displays text slightly toned down to appear less prominent.
     */
    isSubtle?: boolean;
    /**
     * Specifies the maximum number of lines to display.
     */
    maxLines?: number;
    /**
     * Controls size of text.
     */
    size?: FontSize;
    /**
     * Controls the weight of TextBlock elements.
     */
    weight?: FontWeight;
    /**
     * If true, allow text to wrap. Otherwise, text is clipped.
     */
    wrap?: boolean;
}
type TextBlockOptions = Omit<ITextBlock, 'type' | 'text'>;
/**
 * Displays text, allowing control over font sizes, weight, and color.
 */
declare class TextBlock extends Element implements ITextBlock {
    type: 'TextBlock';
    /**
     * Text to display. A subset of markdown is supported (https://aka.ms/ACTextFeatures)
     */
    text: string;
    /**
     * The style of this TextBlock for accessibility purposes.
     */
    style?: 'default' | 'heading';
    /**
     * Controls the color of TextBlock elements.
     */
    color?: Color;
    /**
     * Type of font to use for rendering
     */
    fontType?: FontType | null;
    /**
     * If true, displays text slightly toned down to appear less prominent.
     */
    isSubtle?: boolean;
    /**
     * Specifies the maximum number of lines to display.
     */
    maxLines?: number;
    /**
     * Controls size of text.
     */
    size?: FontSize;
    /**
     * Controls the weight of TextBlock elements.
     */
    weight?: FontWeight;
    /**
     * If true, allow text to wrap. Otherwise, text is clipped.
     */
    wrap?: boolean;
    constructor(text: string, options?: TextBlockOptions);
    static from(options: Omit<ITextBlock, 'type'>): TextBlock;
    withStyle(value: 'default' | 'heading'): this;
    withColor(value: Color): this;
    withFontType(value: FontType): this;
    withSubtle(value?: boolean): this;
    withMaxLines(value: number): this;
    withSize(value: FontSize): this;
    withWeight(value: FontWeight): this;
    withWrap(value?: boolean): this;
    addText(...value: string[]): this;
    toString(): string;
}

type MediaElement = ICodeBlock | IIcon | IImage | IMedia | IRichTextBlock | ITextBlock | ITextRun | IBadge | IProgressBar | IProgressRing;

interface IContainerElement extends IElement {
    /**
     * The layouts associated with the container. The container can dynamically switch from one layout to another as the card's width changes. See Container layouts for more details.
     */
    layouts?: Array<Layout>;
    /**
     * Specifies the background image. Acceptable formats are PNG, JPEG, and GIF
     */
    backgroundImage?: IBackgroundImage | string;
    /**
     * Determines whether the column should bleed through its parent's padding.
     */
    bleed?: boolean;
    /**
     * Controls if the container should have rounded corners.
     * @default false
     */
    roundedCorners?: boolean;
    /**
     * When `true` content in this container should be presented right to left. When 'false' content in this container should be presented left to right. When unset layout direction will inherit from parent container or column. If unset in all ancestors, the default platform behavior will apply.
     */
    rtl?: boolean | null;
    /**
     * Controls if a border should be displayed around the container.
     * @default false
     */
    showBorder?: boolean;
    /**
     * An Action that will be invoked when the `Container` is tapped or selected. `Action.ShowCard` is not supported.
     */
    selectAction?: SelectAction;
}
declare class ContainerElement$1 extends Element implements IContainerElement {
    /**
     * The layouts associated with the container. The container can dynamically switch from one layout to another as the card's width changes. See Container layouts for more details.
     */
    layouts?: Array<Layout>;
    /**
     * Specifies the background image. Acceptable formats are PNG, JPEG, and GIF
     */
    backgroundImage?: IBackgroundImage | string;
    /**
     * Determines whether the column should bleed through its parent's padding.
     */
    bleed?: boolean;
    /**
     * Controls if the container should have rounded corners.
     * @default false
     */
    roundedCorners?: boolean;
    /**
     * When `true` content in this container should be presented right to left. When 'false' content in this container should be presented left to right. When unset layout direction will inherit from parent container or column. If unset in all ancestors, the default platform behavior will apply.
     */
    rtl?: boolean | null;
    /**
     * Controls if a border should be displayed around the container.
     * @default false
     */
    showBorder?: boolean;
    /**
     * An Action that will be invoked when the `Container` is tapped or selected. `Action.ShowCard` is not supported.
     */
    selectAction?: SelectAction;
    withLayouts(...value: Layout[]): this;
    withBackgroundImage(value: IBackgroundImage | string): this;
    withBleed(value?: boolean): this;
    withRoundedCorners(value?: boolean): this;
    withRtl(value?: boolean): this;
    withShowBorder(value?: boolean): this;
    withSelectAction(value: SelectAction): this;
}

/**
 * Style hint for `Container`.
 */
type ContainerStyle = 'default' | 'emphasis' | 'good' | 'attention' | 'warning' | 'accent';
/**
 * Containers group items together.
 */
interface IContainer extends IContainerElement {
    type: 'Container';
    /**
     * The card elements to render inside the `Container`.
     */
    items: Element$1[];
    /**
     * Style hint for `Container`.
     */
    style?: ContainerStyle | null;
    /**
     * Defines how the content should be aligned vertically within the container. When not specified, the value of verticalContentAlignment is inherited from the parent container. If no parent container has verticalContentAlignment set, it defaults to Top.
     */
    verticalContentAlignment?: VerticalAlignment | null;
    /**
     * Specifies the minimum height of the container in pixels, like `\"80px\"`.
     */
    minHeight?: string;
}
type ContainerOptions = Omit<IContainer, 'type' | 'items'>;
/**
 * Containers group items together.
 */
declare class Container extends ContainerElement$1 implements IContainer {
    type: 'Container';
    /**
     * The card elements to render inside the `Container`.
     */
    items: Element$1[];
    /**
     * Style hint for `Container`.
     */
    style?: ContainerStyle | null;
    /**
     * Defines how the content should be aligned vertically within the container. When not specified, the value of verticalContentAlignment is inherited from the parent container. If no parent container has verticalContentAlignment set, it defaults to Top.
     */
    verticalContentAlignment?: VerticalAlignment | null;
    /**
     * Specifies the minimum height of the container in pixels, like `\"80px\"`.
     */
    minHeight?: string;
    constructor(...items: Element$1[]);
    withOptions(value: ContainerOptions): this;
    withStyle(value: ContainerStyle): this;
    withVerticalAlignment(value: VerticalAlignment): this;
    withMinHeight(value: string): this;
    addCards(...value: Element$1[]): this;
}

/**
 * A carousel with sliding pages.
 */
interface ICarousel extends IElement {
    type: 'Carousel';
    /**
     * Controls if the container should bleed into its parent. A bleeding container extends into its parent's padding.
     */
    bleed?: boolean;
    /**
     * The minimum height, in pixels, of the container, in the <number>px format.
     * @example `<number>px`
     */
    minHeight?: string;
    /**
     * Controls the type of animation to use to navigate between pages.
     * @default `slide`
     */
    pageAnimation?: 'slide' | 'crossFade' | 'none';
    /**
     * The pages in the carousel.
     */
    pages: ICarouselPage[];
}
type CarouselOptions = Omit<ICarousel, 'type' | 'pages'>;
/**
 * A carousel with sliding pages.
 */
declare class Carousel extends Element implements ICarousel {
    type: 'Carousel';
    /**
     * Controls if the container should bleed into its parent. A bleeding container extends into its parent's padding.
     */
    bleed?: boolean;
    /**
     * The minimum height, in pixels, of the container, in the <number>px format.
     * @example `<number>px`
     */
    minHeight?: string;
    /**
     * Controls the type of animation to use to navigate between pages.
     * @default `slide`
     */
    pageAnimation?: 'slide' | 'crossFade' | 'none';
    /**
     * The pages in the carousel.
     */
    pages: ICarouselPage[];
    constructor(...pages: ICarouselPage[]);
    withOptions(value: CarouselOptions): this;
    withBleed(value?: boolean): this;
    withMinHeight(value: string): this;
    withPageAnimation(value?: 'slide' | 'crossFade' | 'none'): this;
    addPages(...value: ICarouselPage[]): this;
}
/**
 * A page inside a Carousel element.
 */
interface ICarouselPage extends IElement {
    type: 'CarouselPage';
    /**
     * The card elements to render inside the `CarouselPage`.
     */
    items: Element$1[];
    /**
     * Specifies the background image. Acceptable formats are `PNG`, `JPEG`, and `GIF`
     */
    backgroundImage?: IBackgroundImage | string;
    /**
     * The layouts associated with the container. The container can dynamically switch from one layout to another as the card's width changes. See Container layouts for more details.
     */
    layouts?: Array<Layout>;
    /**
     * The maximum height, in pixels, of the container, in the <number>px format. When the content of a container exceeds the container's maximum height, a vertical scrollbar is displayed.
     * @example `<number>px`
     */
    maxHeight?: string;
    /**
     * The minimum height, in pixels, of the container, in the <number>px format.
     * @example `<number>px`
     */
    minHeight?: string;
    /**
     * Controls if the container should have rounded corners.
     * @default false
     */
    roundedCorners?: boolean;
    /**
     * Controls if the content of the card is to be rendered left-to-right or right-to-left.
     */
    rtl?: boolean;
    /**
     * Controls if a border should be displayed around the container.
     * @default false
     */
    showBorder?: boolean;
    /**
     * The style of the container. Container styles control the colors of the background, border and text inside the container, in such a way that contrast requirements are always met.
     */
    style?: ContainerStyle;
    /**
     * Controls how the container's content should be vertically aligned.
     */
    verticalContentAlignment?: VerticalAlignment;
    /**
     * An Action that will be invoked when the element is tapped or clicked. Action.ShowCard is not supported.
     */
    selectAction?: Action;
}
type CarouselPageOptions = Omit<ICarouselPage, 'type' | 'items'>;
/**
 * A page inside a Carousel element.
 */
declare class CarouselPage extends Element implements ICarouselPage {
    type: 'CarouselPage';
    /**
     * The card elements to render inside the `CarouselPage`.
     */
    items: Element$1[];
    /**
     * Specifies the background image. Acceptable formats are `PNG`, `JPEG`, and `GIF`
     */
    backgroundImage?: IBackgroundImage | string;
    /**
     * The layouts associated with the container. The container can dynamically switch from one layout to another as the card's width changes. See Container layouts for more details.
     */
    layouts?: Array<Layout>;
    /**
     * The maximum height, in pixels, of the container, in the <number>px format. When the content of a container exceeds the container's maximum height, a vertical scrollbar is displayed.
     * @example `<number>px`
     */
    maxHeight?: string;
    /**
     * The minimum height, in pixels, of the container, in the <number>px format.
     * @example `<number>px`
     */
    minHeight?: string;
    /**
     * Controls if the container should have rounded corners.
     * @default false
     */
    roundedCorners?: boolean;
    /**
     * Controls if the content of the card is to be rendered left-to-right or right-to-left.
     */
    rtl?: boolean;
    /**
     * Controls if a border should be displayed around the container.
     * @default false
     */
    showBorder?: boolean;
    /**
     * The style of the container. Container styles control the colors of the background, border and text inside the container, in such a way that contrast requirements are always met.
     */
    style?: ContainerStyle;
    /**
     * Controls how the container's content should be vertically aligned.
     */
    verticalContentAlignment?: VerticalAlignment;
    /**
     * An Action that will be invoked when the element is tapped or clicked. Action.ShowCard is not supported.
     */
    selectAction?: Action;
    constructor(...items: Element$1[]);
    withOptions(value: CarouselPageOptions): this;
    withBackgroundImage(value: IBackgroundImage | string): this;
    withMinHeight(value: string): this;
    withRoundedCorners(value?: boolean): this;
    withRtl(value?: boolean): this;
    withShowBorder(value?: boolean): this;
    withStyle(value: ContainerStyle): this;
    withVeritcalAlignment(value: VerticalAlignment): this;
    withSelectAction(value: Action): this;
    addLayouts(...value: Layout[]): this;
    addCards(...value: Element$1[]): this;
}

/**
 * Defines a container that is part of a ColumnSet.
 */
interface IColumn extends IContainerElement {
    type: 'Column';
    /**
     * The card elements to render inside the `Column`.
     */
    items?: Element$1[];
    /**
     * Specifies the minimum height of the column in pixels, like `\"80px\"`.
     */
    minHeight?: string;
    /**
     * Style hint for `Column`.
     */
    style?: ContainerStyle | null;
    /**
     * Defines how the content should be aligned vertically within the column. When not specified, the value of verticalContentAlignment is inherited from the parent container. If no parent container has verticalContentAlignment set, it defaults to Top.
     */
    verticalContentAlignment?: VerticalAlignment | null;
    /**
     * `\"auto\"`, `\"stretch\"`, a number representing relative width of the column in the column group, or in version 1.1 and higher, a specific pixel width, like `\"50px\"`.
     */
    width?: 'auto' | 'stretch' | Omit<string | number, 'auto' | 'stretch'>;
}
type ColumnOptions = Omit<IColumn, 'type' | 'items'>;
/**
 * Defines a container that is part of a ColumnSet.
 */
declare class Column extends ContainerElement$1 implements IColumn {
    type: 'Column';
    /**
     * The card elements to render inside the `Column`.
     */
    items: Element$1[];
    /**
     * Specifies the minimum height of the column in pixels, like `\"80px\"`.
     */
    minHeight?: string;
    /**
     * Style hint for `Column`.
     */
    style?: ContainerStyle | null;
    /**
     * Defines how the content should be aligned vertically within the column. When not specified, the value of verticalContentAlignment is inherited from the parent container. If no parent container has verticalContentAlignment set, it defaults to Top.
     */
    verticalContentAlignment?: VerticalAlignment | null;
    /**
     * `\"auto\"`, `\"stretch\"`, a number representing relative width of the column in the column group, or in version 1.1 and higher, a specific pixel width, like `\"50px\"`.
     */
    width?: 'auto' | 'stretch' | Omit<string | number, 'auto' | 'stretch'>;
    constructor(...items: Element$1[]);
    withOptions(value: ColumnOptions): this;
    withMinHeight(value: string): this;
    withStyle(value: ContainerStyle): this;
    withVerticalAlignment(value: VerticalAlignment): this;
    withWidth(value: 'auto' | 'stretch' | Omit<string | number, 'auto' | 'stretch'>): this;
    addCards(...value: Element$1[]): this;
}

/**
 * ColumnSet divides a region into Columns, allowing elements to sit side-by-side.
 */
interface IColumnSet extends IContainerElement {
    type: 'ColumnSet';
    /**
     * The array of `Columns` to divide the region into.
     */
    columns?: IColumn[];
    /**
     * Specifies the minimum height of the column in pixels, like `\"80px\"`.
     */
    minHeight?: string;
    /**
     * Style hint for `ColumnSet`.
     */
    style?: ContainerStyle | null;
    /**
     * Controls the horizontal alignment of the ColumnSet. When not specified, the value of horizontalAlignment is inherited from the parent container. If no parent container has horizontalAlignment set, it defaults to Left.
     */
    horizontalAlignment?: HorizontalAlignment | null;
}
type ColumnSetOptions = Omit<IContainerElement, 'type'>;
/**
 * ColumnSet divides a region into Columns, allowing elements to sit side-by-side.
 */
declare class ColumnSet extends ContainerElement$1 implements IColumnSet {
    type: 'ColumnSet';
    /**
     * The array of `Columns` to divide the region into.
     */
    columns: IColumn[];
    /**
     * Specifies the minimum height of the column in pixels, like `\"80px\"`.
     */
    minHeight?: string;
    /**
     * Style hint for `ColumnSet`.
     */
    style?: ContainerStyle | null;
    constructor(...columns: IColumn[]);
    withOptions(value: ColumnSetOptions): this;
    withMinHeight(value: string): this;
    withStyle(value: ContainerStyle): this;
    addColumns(...value: IColumn[]): this;
}

/**
 * The `FactSet` element displays a series of facts (i.e. name/value pairs) in a tabular form.
 */
interface IFactSet extends IElement {
    type: 'FactSet';
    /**
     * The array of `Fact`'s
     */
    facts: IFact[];
}
type FactSetOptions = Omit<IFactSet, 'type' | 'facts'>;
/**
 * The `FactSet` element displays a series of facts (i.e. name/value pairs) in a tabular form.
 */
declare class FactSet extends Element implements IFactSet {
    type: 'FactSet';
    /**
     * The array of `Fact`'s
     */
    facts: IFact[];
    constructor(...facts: IFact[]);
    withOptions(value: FactSetOptions): this;
    addFacts(...value: IFact[]): this;
}
/**
 * Describes a `Fact` in a `FactSet` as a key/value pair.
 */
interface IFact {
    /**
     * The title of the fact.
     */
    title: string;
    /**
     * The value of the fact.
     */
    value: string;
}
/**
 * Describes a `Fact` in a `FactSet` as a key/value pair.
 */
declare class Fact implements IFact {
    /**
     * The title of the fact.
     */
    title: string;
    /**
     * The value of the fact.
     */
    value: string;
    constructor(title: string, value: string);
}

/**
 * The `ImageSet` element displays a collection of `Image`'s similar to a gallery. Acceptable formats are `PNG`, `JPEG`, and `GIF`.
 */
interface IImageSet extends IElement {
    type: 'ImageSet';
    /**
     * Controls how the images are displayed.
     */
    style?: 'default' | 'stacked' | 'grid';
    /**
     * Controls the approximate size of each image. The physical dimensions will vary per host.
     * Auto and stretch are not supported for `ImageSet`. The size will default to medium if
     * those values are set.
     */
    imageSize?: Exclude<ImageSize, 'auto' | 'stretch'>;
    /**
     * The array of `Image`'s to show.
     */
    images: IImage[];
}
type ImageSetOptions = Omit<IImageSet, 'type' | 'images'>;
/**
 * The `ImageSet` element displays a collection of `Image`'s similar to a gallery. Acceptable formats are `PNG`, `JPEG`, and `GIF`.
 */
declare class ImageSet extends Element implements IImageSet {
    type: 'ImageSet';
    /**
     * Controls how the images are displayed.
     */
    style?: 'default' | 'stacked' | 'grid';
    /**
     * Controls the approximate size of each image. The physical dimensions will vary per host.
     * Auto and stretch are not supported for `ImageSet`. The size will default to medium if
     * those values are set.
     */
    imageSize?: Exclude<ImageSize, 'auto' | 'stretch'>;
    /**
     * The array of `Image`'s to show.
     */
    images: IImage[];
    constructor(...images: IImage[]);
    withOptions(value: ImageSetOptions): this;
    withStyle(value: 'default' | 'stacked' | 'grid'): this;
    withImageSize(value: Exclude<ImageSize, 'auto' | 'stretch'>): this;
    addImages(...value: IImage[]): this;
}

type ContainerElement = IActionSet | IColumnSet | IContainer | IFactSet | IImageSet | ICarousel;

/**
 * [SUPPORTED ONLY IN JAVASCRIPT SDK] Determines the position of the label. It can take 'inline' and 'above' values. By default, the label is placed 'above' when label position is not specified.
 */
type InputLabelPosition = 'inline' | 'above';
/**
 * [SUPPORTED ONLY IN JAVASCRIPT SDK] Style hint for input fields. Allows input fields to appear as read-only but when user clicks/focuses on the field, it allows them to update those fields.
 */
type InputStyle = 'revealOnHover' | 'default';
interface IInputElement extends IElement {
    /**
     * Error message to display when entered input is invalid
     */
    errorMessage?: string;
    /**
     * Whether or not this input is required
     */
    isRequired?: boolean;
    /**
     * Label for this input
     */
    label?: string;
    /**
     * [SUPPORTED ONLY IN JAVASCRIPT SDK] Determines the position of the label. It can take 'inline' and 'above' values. By default, the label is placed 'above' when label position is not specified.
     */
    labelPosition?: InputLabelPosition;
    /**
     * [SUPPORTED ONLY IN JAVASCRIPT SDK] Determines the width of the label in percent like 40 or a specific pixel width like ‘40px’ when label is placed inline with the input. labelWidth would be ignored when the label is displayed above the input.
     */
    labelWidth?: string | number;
    /**
     * [SUPPORTED ONLY IN JAVASCRIPT SDK] Style hint for input fields. Allows input fields to appear as read-only but when user clicks/focuses on the field, it allows them to update those fields.
     */
    inputStyle?: InputStyle;
}
declare class InputElement$1 extends Element implements IInputElement {
    /**
     * Error message to display when entered input is invalid
     */
    errorMessage?: string;
    /**
     * Whether or not this input is required
     */
    isRequired?: boolean;
    /**
     * Label for this input
     */
    label?: string;
    /**
     * [SUPPORTED ONLY IN JAVASCRIPT SDK] Determines the position of the label. It can take 'inline' and 'above' values. By default, the label is placed 'above' when label position is not specified.
     */
    labelPosition?: InputLabelPosition;
    /**
     * [SUPPORTED ONLY IN JAVASCRIPT SDK] Determines the width of the label in percent like 40 or a specific pixel width like ‘40px’ when label is placed inline with the input. labelWidth would be ignored when the label is displayed above the input.
     */
    labelWidth?: string | number;
    /**
     * [SUPPORTED ONLY IN JAVASCRIPT SDK] Style hint for input fields. Allows input fields to appear as read-only but when user clicks/focuses on the field, it allows them to update those fields.
     */
    inputStyle?: InputStyle;
    constructor(options?: Partial<IInputElement>);
    withError(value: string): this;
    withRequired(value?: boolean): this;
    withLabel(value: string, position?: InputLabelPosition, width?: string | number): this;
    withLabelPosition(value: InputLabelPosition): this;
    withLabelWidth(value: string | number): this;
    withInputStyle(value: InputStyle): this;
}

type ChoiceInputStyle = 'compact' | 'expanded' | 'filtered';
/**
 * Allows a user to input a Choice.
 */
interface IChoiceSetInput extends IInputElement {
    type: 'Input.ChoiceSet';
    /**
     * Choice options.
     */
    choices?: IChoice[];
    /**
     * Allows dynamic fetching of choices from the bot to be displayed as suggestions in the dropdown when the user types in the input field.
     */
    'choices.data'?: IChoiceDataQuery;
    /**
     * Allow multiple choices to be selected.
     */
    isMultiSelect?: boolean;
    /**
     * the style of the choice input
     */
    style?: ChoiceInputStyle;
    /**
     * The initial choice (or set of choices) that should be selected. For multi-select, specify a comma-separated string of values.
     */
    value?: string;
    /**
     * Description of the input desired. Only visible when no selection has been made, the `style` is `compact` and `isMultiSelect` is `false`
     */
    placeholder?: string;
    /**
     * If `true`, allow text to wrap. Otherwise, text is clipped.
     */
    wrap?: boolean;
}
type ChoiceSetInputOptions = Omit<IChoiceSetInput, 'type' | 'choices'>;
/**
 * Allows a user to input a Choice.
 */
declare class ChoiceSetInput extends InputElement$1 implements IChoiceSetInput {
    type: 'Input.ChoiceSet';
    /**
     * Choice options.
     */
    choices: IChoice[];
    /**
     * Allows dynamic fetching of choices from the bot to be displayed as suggestions in the dropdown when the user types in the input field.
     */
    'choices.data'?: IChoiceDataQuery;
    /**
     * Allow multiple choices to be selected.
     */
    isMultiSelect?: boolean;
    /**
     * the style of the choice input
     */
    style?: ChoiceInputStyle;
    /**
     * The initial choice (or set of choices) that should be selected. For multi-select, specify a comma-separated string of values.
     */
    value?: string;
    /**
     * Description of the input desired. Only visible when no selection has been made, the `style` is `compact` and `isMultiSelect` is `false`
     */
    placeholder?: string;
    /**
     * If `true`, allow text to wrap. Otherwise, text is clipped.
     */
    wrap?: boolean;
    constructor(...choices: IChoice[]);
    withOptions(value: ChoiceSetInputOptions): this;
    withData(value: IChoiceDataQuery): this;
    withMultiSelect(value?: boolean): this;
    withStyle(value: ChoiceInputStyle): this;
    withValue(value: string): this;
    withPlaceholder(value: string): this;
    withWrap(value?: boolean): this;
    addChoices(...value: IChoice[]): this;
}
/**
 * Describes a choice for use in a ChoiceSet.
 */
interface IChoice {
    /**
     * Text to display.
     */
    title: string;
    /**
     * The raw value for the choice. NOTE: do not use a `,` in the value, since a `ChoiceSet` with `isMultiSelect` set to `true` returns a comma-delimited string of choice values.
     */
    value: string;
}
/**
 * Describes a choice for use in a ChoiceSet.
 */
declare class Choice implements IChoice {
    /**
     * Text to display.
     */
    title: string;
    /**
     * The raw value for the choice. NOTE: do not use a `,` in the value, since a `ChoiceSet` with `isMultiSelect` set to `true` returns a comma-delimited string of choice values.
     */
    value: string;
    constructor(title: string, value: string);
}
/**
 * The data populated in the event payload for fetching dynamic choices, sent to the card-author to help identify the dataset from which choices might be fetched to be displayed in the dropdown. It might contain auxillary data to limit the maximum number of choices that can be sent and to support pagination.
 */
interface IChoiceDataQuery {
    /**
     * The dataset to be queried to get the choices.
     */
    dataset: string;
    /**
     * The maximum number of choices that should be returned by the query. It can be ignored if the card-author wants to send a different number.
     */
    count?: number;
    /**
     * The number of choices to be skipped in the list of choices returned by the query. It can be ignored if the card-author does not want pagination.
     */
    skip?: number;
}
type ChoiceDataQueryOptions = Omit<IChoiceDataQuery, 'dataset'>;
/**
 * The data populated in the event payload for fetching dynamic choices, sent to the card-author to help identify the dataset from which choices might be fetched to be displayed in the dropdown. It might contain auxillary data to limit the maximum number of choices that can be sent and to support pagination.
 */
declare class ChoiceDataQuery implements IChoiceDataQuery {
    /**
     * The dataset to be queried to get the choices.
     */
    dataset: string;
    /**
     * The maximum number of choices that should be returned by the query. It can be ignored if the card-author wants to send a different number.
     */
    count?: number;
    /**
     * The number of choices to be skipped in the list of choices returned by the query. It can be ignored if the card-author does not want pagination.
     */
    skip?: number;
    constructor(dataset: string);
    withOptions(value: ChoiceDataQueryOptions): this;
    withCount(value: number): this;
    withSkip(value: number): this;
}

/**
 * Lets a user choose a date.
 */
interface IDateInput extends IInputElement {
    type: 'Input.Date';
    /**
     * Hint of maximum value expressed in YYYY-MM-DD(may be ignored by some clients).
     */
    max?: string;
    /**
     * Hint of minimum value expressed in YYYY-MM-DD(may be ignored by some clients).
     */
    min?: string;
    /**
     * Description of the input desired. Displayed when no selection has been made.
     */
    placeholder?: string;
    /**
     * The initial value for this field expressed in YYYY-MM-DD.
     */
    value?: string;
}
type DateInputOptions = Omit<IDateInput, 'type'>;
/**
 * Lets a user choose a date.
 */
declare class DateInput extends InputElement$1 implements IDateInput {
    type: 'Input.Date';
    /**
     * Hint of maximum value expressed in YYYY-MM-DD(may be ignored by some clients).
     */
    max?: string;
    /**
     * Hint of minimum value expressed in YYYY-MM-DD(may be ignored by some clients).
     */
    min?: string;
    /**
     * Description of the input desired. Displayed when no selection has been made.
     */
    placeholder?: string;
    /**
     * The initial value for this field expressed in YYYY-MM-DD.
     */
    value?: string;
    constructor(options?: DateInputOptions);
    withOptions(value: DateInputOptions): this;
    withMax(value: string): this;
    withMin(value: string): this;
    withPlaceholder(value: string): this;
    withValue(value: string): this;
}

/**
 * Allows a user to enter a number.
 */
interface INumberInput extends IInputElement {
    type: 'Input.Number';
    /**
     * Hint of maximum value (may be ignored by some clients).
     */
    max?: number;
    /**
     * Hint of minimum value (may be ignored by some clients).
     */
    min?: number;
    /**
     * Description of the input desired. Displayed when no selection has been made.
     */
    placeholder?: string;
    /**
     * Initial value for this field.
     */
    value?: number;
}
type NumberInputOptions = Omit<INumberInput, 'type'>;
/**
 * Allows a user to enter a number.
 */
declare class NumberInput extends InputElement$1 implements INumberInput {
    type: 'Input.Number';
    /**
     * Hint of maximum value (may be ignored by some clients).
     */
    max?: number;
    /**
     * Hint of minimum value (may be ignored by some clients).
     */
    min?: number;
    /**
     * Description of the input desired. Displayed when no selection has been made.
     */
    placeholder?: string;
    /**
     * Initial value for this field.
     */
    value?: number;
    constructor(options?: NumberInputOptions);
    withOptions(value: NumberInputOptions): this;
    withMax(value: number): this;
    withMin(value: number): this;
    withPlaceholder(value: string): this;
    withValue(value: number): this;
}

/**
 * Style hint for text input.
 */
type TextInputStyle = 'text' | 'tel' | 'url' | 'email' | 'password';
/**
 * Lets a user enter text.
 */
interface ITextInput extends IInputElement {
    type: 'Input.Text';
    /**
     * If `true`, allow multiple lines of input.
     */
    isMultiline?: boolean;
    /**
     * Hint of maximum length characters to collect (may be ignored by some clients).
     */
    maxLength?: number;
    /**
     * Description of the input desired. Displayed when no text has been input.
     */
    placeholder?: string;
    /**
     * Regular expression indicating the required format of this text input.
     */
    regex?: string;
    /**
     * Style hint for text input.
     */
    style?: TextInputStyle;
    /**
     * The inline action for the input. Typically displayed to the right of the input. It is strongly recommended to provide an icon on the action (which will be displayed instead of the title of the action).
     */
    inlineAction?: Action;
    /**
     * The initial value for this field.
     */
    value?: string;
}
type TextInputOptions = Omit<ITextInput, 'type'>;
/**
 * Lets a user enter text.
 */
declare class TextInput extends InputElement$1 implements ITextInput {
    type: 'Input.Text';
    /**
     * If `true`, allow multiple lines of input.
     */
    isMultiline?: boolean;
    /**
     * Hint of maximum length characters to collect (may be ignored by some clients).
     */
    maxLength?: number;
    /**
     * Description of the input desired. Displayed when no text has been input.
     */
    placeholder?: string;
    /**
     * Regular expression indicating the required format of this text input.
     */
    regex?: string;
    /**
     * Style hint for text input.
     */
    style?: TextInputStyle;
    /**
     * The inline action for the input. Typically displayed to the right of the input. It is strongly recommended to provide an icon on the action (which will be displayed instead of the title of the action).
     */
    inlineAction?: Action;
    /**
     * The initial value for this field.
     */
    value?: string;
    constructor(options?: TextInputOptions);
    withOptions(value: TextInputOptions): this;
    withMultiLine(value?: boolean): this;
    withMaxLength(value: number): this;
    withPlaceholder(value: string): this;
    withRegex(value: string): this;
    withStyle(value: TextInputStyle): this;
    withInlineAction(value: Action): this;
    withValue(value: string): this;
}

/**
 * Lets a user select a time.
 */
interface ITimeInput extends IInputElement {
    type: 'Input.Time';
    /**
     * Hint of maximum value expressed in HH:MM (may be ignored by some clients).
     */
    max?: string;
    /**
     * Hint of minimum value expressed in HH:MM (may be ignored by some clients).
     */
    min?: string;
    /**
     * Description of the input desired. Displayed when no time has been selected.
     */
    placeholder?: string;
    /**
     * The initial value for this field expressed in HH:MM.
     */
    value?: string;
}
type TimeInputOptions = Omit<ITimeInput, 'type'>;
/**
 * Lets a user select a time.
 */
declare class TimeInput extends InputElement$1 implements ITimeInput {
    type: 'Input.Time';
    /**
     * Hint of maximum value expressed in HH:MM (may be ignored by some clients).
     */
    max?: string;
    /**
     * Hint of minimum value expressed in HH:MM (may be ignored by some clients).
     */
    min?: string;
    /**
     * Description of the input desired. Displayed when no time has been selected.
     */
    placeholder?: string;
    /**
     * The initial value for this field expressed in HH:MM.
     */
    value?: string;
    constructor(options?: TimeInputOptions);
    withOptions(value: TimeInputOptions): this;
    withMax(value: string): this;
    withMin(value: string): this;
    withPlaceholder(value: string): this;
    withValue(value: string): this;
}

/**
 * Lets a user choose between two options.
 */
interface IToggleInput extends IInputElement {
    type: 'Input.Toggle';
    /**
     * Title for the toggle
     */
    title: string;
    /**
     * The initial selected value. If you want the toggle to be initially on, set this to the value of valueOn‘s value.
     */
    value?: 'true' | 'false' | Omit<string, 'true' | 'false'>;
    /**
     * The value when toggle is off
     */
    valueOff?: 'false' | Omit<string, 'false'>;
    /**
     * The value when toggle is on
     */
    valueOn?: 'true' | Omit<string, 'true'>;
    /**
     * If `true`, allow text to wrap. Otherwise, text is clipped.
     */
    wrap?: boolean;
}
type ToggleInputOptions = Omit<IToggleInput, 'type' | 'title'>;
/**
 * Lets a user choose between two options.
 */
declare class ToggleInput extends InputElement$1 implements IToggleInput {
    type: 'Input.Toggle';
    /**
     * Title for the toggle
     */
    title: string;
    /**
     * The initial selected value. If you want the toggle to be initially on, set this to the value of valueOn‘s value.
     */
    value?: 'true' | 'false' | Omit<string, 'true' | 'false'>;
    /**
     * The value when toggle is off
     */
    valueOff?: 'false' | Omit<string, 'false'>;
    /**
     * The value when toggle is on
     */
    valueOn?: 'true' | Omit<string, 'true'>;
    /**
     * If `true`, allow text to wrap. Otherwise, text is clipped.
     */
    wrap?: boolean;
    constructor(title: string, options?: ToggleInputOptions);
    withOptions(value: ToggleInputOptions): this;
    withValue(value: 'true' | 'false' | Omit<string, 'true' | 'false'>): this;
    withValueOff(value: 'false' | Omit<string, 'false'>): this;
    withValueOn(value: 'true' | Omit<string, 'true'>): this;
    withWrap(value?: boolean): this;
}

type InputElement = IChoiceSetInput | IDateInput | INumberInput | ITextInput | ITimeInput | IToggleInput;

type Element$1 = ContainerElement | ChartElement | MediaElement | InputElement;

/**
 * An Adaptive Card, containing a free-form body of card elements, and an optional set of actions.
 */
interface ICard {
    type: 'AdaptiveCard';
    /**
     * The Adaptive Card schema.
     */
    $schema?: string;
    /**
     * Schema version that this card requires. If a client is lower than this version, the fallbackText will be rendered. NOTE: Version is not required for cards within an Action.ShowCard. However, it is required for the top-level card.
     */
    version: '1.0' | '1.1' | '1.2' | '1.3' | '1.4' | '1.5' | '1.6';
    /**
     * Defines how the card can be refreshed by making a request to the target Bot.
     */
    refresh?: Refresh;
    /**
     * Defines authentication information to enable on-behalf-of single sign on or just-in-time OAuth.
     */
    authentication?: IAuth;
    /**
     * The card elements to show in the primary card region.
     */
    body?: Element$1[];
    /**
     * The Actions to show in the card’s action bar.
     */
    actions?: Action[];
    /**
     * An Action that will be invoked when the card is tapped or selected. Action.ShowCard is not supported.
     */
    selectAction?: SelectAction;
    /**
     * Text shown when the client doesn’t support the version specified (may contain markdown).
     */
    fallbackText?: string;
    /**
     * Specifies the background image of the card.
     */
    backgroundImage?: IBackgroundImage | string;
    /**
     * Specifies the minimum height of the card.
     */
    minHeight?: string;
    /**
     * When true content in this Adaptive Card should be presented right to left. When ‘false’ content in this Adaptive Card should be presented left to right. If unset, the default platform behavior will apply.
     */
    rtl?: boolean;
    /**
     * Specifies what should be spoken for this entire card. This is simple text or SSML fragment.
     */
    speak?: string;
    /**
     * The 2-letter ISO-639-1 language used in the card. Used to localize any date/time functions.
     */
    lang?: string;
    /**
     * Defines how the content should be aligned vertically within the container. Only relevant for fixed-height cards, or cards with a minHeight specified.
     */
    verticalContentAlignment?: VerticalAlignment;
    /**
     * Extra Teams data for the card.
     */
    msteams?: MSTeamsCardInfo;
}
/**
 * Card metadata for Microsoft Teams.
 */
type MSTeamsCardInfo = {
    /**
     * Expands the card to take up the full width of the message.
     */
    width?: 'Full';
    /**
     * Conditional visibility of elements on different viewports.
     */
    targetWidth?: 'veryNarrow' | 'narrow' | 'standard' | 'wide' | 'atLeast:veryNarrow' | 'atLeast:narrow' | 'atLeast:standard' | 'atLeast:wide' | 'atMost:veryNarrow' | 'atMost:narrow' | 'atMost:standard' | 'atMost:wide';
};
type CardOptions = Omit<Partial<ICard>, 'body' | 'type' | 'msteams'> & Partial<MSTeamsCardInfo>;
/**
 * An Adaptive Card, containing a free-form body of card elements, and an optional set of actions.
 */
declare class Card implements ICard {
    type: 'AdaptiveCard';
    /**
     * The Adaptive Card schema.
     */
    $schema?: string;
    /**
     * Schema version that this card requires. If a client is lower than this version, the fallbackText will be rendered. NOTE: Version is not required for cards within an Action.ShowCard. However, it is required for the top-level card.
     */
    version: '1.0' | '1.1' | '1.2' | '1.3' | '1.4' | '1.5' | '1.6';
    /**
     * Defines how the card can be refreshed by making a request to the target Bot.
     */
    refresh?: Refresh;
    /**
     * Defines authentication information to enable on-behalf-of single sign on or just-in-time OAuth.
     */
    authentication?: IAuth;
    /**
     * The card elements to show in the primary card region.
     */
    body: Element$1[];
    /**
     * The Actions to show in the card’s action bar.
     */
    actions?: Action[];
    /**
     * An Action that will be invoked when the card is tapped or selected. Action.ShowCard is not supported.
     */
    selectAction?: SelectAction;
    /**
     * Text shown when the client doesn’t support the version specified (may contain markdown).
     */
    fallbackText?: string;
    /**
     * Specifies the background image of the card.
     */
    backgroundImage?: IBackgroundImage | string;
    /**
     * Specifies the minimum height of the card.
     */
    minHeight?: string;
    /**
     * When true content in this Adaptive Card should be presented right to left. When ‘false’ content in this Adaptive Card should be presented left to right. If unset, the default platform behavior will apply.
     */
    rtl?: boolean;
    /**
     * Specifies what should be spoken for this entire card. This is simple text or SSML fragment.
     */
    speak?: string;
    /**
     * The 2-letter ISO-639-1 language used in the card. Used to localize any date/time functions.
     */
    lang?: string;
    /**
     * Defines how the content should be aligned vertically within the container. Only relevant for fixed-height cards, or cards with a minHeight specified.
     */
    verticalContentAlignment?: VerticalAlignment;
    /**
     * Extra Teams data for the card.
     */
    msteams?: MSTeamsCardInfo;
    constructor(...body: Element$1[]);
    withOptions(value: CardOptions): this;
    withSchema(value: string): this;
    withVersion(value: '1.0' | '1.1' | '1.2' | '1.3' | '1.4' | '1.5' | '1.6'): this;
    withRefresh(value: Refresh): this;
    withAuth(value: IAuth): this;
    withSelectedAction(value: SelectAction): this;
    withBody(...value: Element$1[]): this;
    addCards(...value: Element$1[]): this;
    addActions(...value: Action[]): this;
}
/**
 * @hidden
 * @internal
 *
 * Type guard to check if a value is a Card.
 * @param value value to compare
 * @returns true if value is type of Card
 */
declare function isCard(value: any): value is ICard;

/**
 * Defines an AdaptiveCard which is shown to the user when the button or link is clicked.
 */
interface IShowCardAction extends IAction {
    type: 'Action.ShowCard';
    /**
     * the card to display
     */
    card: ICard;
}
type ShowCardOptions = Omit<IShowCardAction, 'type' | 'card'>;
/**
 * Defines an AdaptiveCard which is shown to the user when the button or link is clicked.
 */
declare class ShowCardAction extends Action$1 implements IShowCardAction {
    type: 'Action.ShowCard';
    /**
     * the card to display
     */
    card: ICard;
    constructor(card: ICard, options?: ShowCardOptions);
    static from(options: Omit<IShowCardAction, 'type'>): ShowCardAction;
    withCard(value: ICard): this;
}

type Action = IExecuteAction | IOpenUrlAction | IShowCardAction | ISubmitAction | IToggleVisibilityAction;
type SelectAction = IExecuteAction | IOpenUrlAction | ISubmitAction | IToggleVisibilityAction;

interface IElement {
    /**
     * A unique identifier associated with the item
     */
    id?: string;
    /**
     * If false, this item will be removed from the visual tree.
     */
    isVisible?: boolean;
    /**
     * A series of key/value pairs indicating features that the item requires with corresponding minimum version. When a feature is missing or of insufficient version, fallback is triggered.
     */
    requires?: Record<string, string>;
    /**
     * Specifies the height of the element.
     */
    height?: 'auto' | 'stretch' | Omit<string | number, 'auto' | 'stretch'>;
    /**
     * When `true`, draw a separating line at the top of the element.
     */
    separator?: boolean;
    /**
     * Controls the amount of spacing between this element and the preceding element.
     */
    spacing?: Spacing;
    /**
     * the area of a `Layout.AreaGrid` layout in which an element should be displayed.
     */
    'grid.area'?: string;
    /**
     * controls how the element should be horizontally aligned.
     */
    horizontalAlignment?: HorizontalAlignment | null;
    /**
     * Controls for which card width the element should be displayed. If targetWidth isn't specified, the element is rendered at all card widths. Using targetWidth makes it possible to author responsive cards that adapt their layout to the available horizontal space.
     */
    targetWidth?: TargetWidth;
    /**
     * The locale associated with the element.
     */
    lang?: string;
    /**
     * Describes what to do when an unknown item is encountered or the requires of this or any children can't be met.
     */
    fallback?: Element$1 | 'drop' | Omit<string, 'drop'>;
}
declare class Element implements IElement {
    /**
     * A unique identifier associated with the item
     */
    id?: string;
    /**
     * If false, this item will be removed from the visual tree.
     */
    isVisible?: boolean;
    /**
     * A series of key/value pairs indicating features that the item requires with corresponding minimum version. When a feature is missing or of insufficient version, fallback is triggered.
     */
    requires?: Record<string, string>;
    /**
     * Specifies the height of the element.
     */
    height?: 'auto' | 'stretch' | Omit<string | number, 'auto' | 'stretch'>;
    /**
     * When `true`, draw a separating line at the top of the element.
     */
    separator?: boolean;
    /**
     * Controls the amount of spacing between this element and the preceding element.
     */
    spacing?: Spacing;
    /**
     * the area of a `Layout.AreaGrid` layout in which an element should be displayed.
     */
    'grid.area'?: string;
    /**
     * controls how the element should be horizontally aligned.
     */
    horizontalAlignment?: HorizontalAlignment | null;
    /**
     * Controls for which card width the element should be displayed. If targetWidth isn't specified, the element is rendered at all card widths. Using targetWidth makes it possible to author responsive cards that adapt their layout to the available horizontal space.
     */
    targetWidth?: TargetWidth;
    /**
     * The locale associated with the element.
     */
    lang?: string;
    /**
     * Describes what to do when an unknown item is encountered or the requires of this or any children can't be met.
     */
    fallback?: Element$1 | 'drop' | Omit<string, 'drop'>;
    constructor(value?: Partial<IElement>);
    withId(value: string): this;
    withIsVisible(value: boolean): this;
    withRequires(value: Record<string, string>): this;
    withRequire(key: string, value: string): this;
    withHeight(value: 'auto' | 'stretch' | Omit<string | number, 'auto' | 'stretch'>): this;
    withSeperator(value: boolean): this;
    withSpacing(value: Spacing): this;
    withGridArea(value: string): void;
    withHorizontalAlignment(value: HorizontalAlignment): this;
    withTargetWidth(value: TargetWidth): this;
    withLang(value: string): this;
    withFallback(value: Element$1 | 'drop' | Omit<string, 'drop'>): this;
}

export { ContainerElement$1 as $, type ActionSetOptions as A, type BadgeAppearance as B, type ChartElement as C, type IMediaSource as D, DonutChart, DonutChartData, type DonutChartDataOptions, type DonutChartOptions, MediaSource as E, type ICaptionSource as F, CaptionSource as G, type IProgressBar as H, type ILineChart as I, type IDonutChart, type IDonutChartData, ProgressBar as J, type IProgressRing as K, type LineChartOptions as L, type MediaOptions as M, type ProgressRingOptions as N, ProgressRing as O, type ProgressBarOptions as P, type ITextRun as Q, TextRun as R, type IRichTextBlock as S, type TextRunOptions as T, type RichTextBlockOptions as U, RichTextBlock as V, type ITextBlock as W, type TextBlockOptions as X, TextBlock as Y, type MediaElement as Z, type IContainerElement as _, LineChart as a, ShowCardAction as a$, type ContainerStyle as a0, type IContainer as a1, type ContainerOptions as a2, Container as a3, type ICarousel as a4, type CarouselOptions as a5, Carousel as a6, type ICarouselPage as a7, type CarouselPageOptions as a8, CarouselPage as a9, type ChoiceDataQueryOptions as aA, ChoiceDataQuery as aB, type IDateInput as aC, type DateInputOptions as aD, DateInput as aE, type INumberInput as aF, type NumberInputOptions as aG, NumberInput as aH, type TextInputStyle as aI, type ITextInput as aJ, type TextInputOptions as aK, TextInput as aL, type ITimeInput as aM, type TimeInputOptions as aN, TimeInput as aO, type IToggleInput as aP, type ToggleInputOptions as aQ, ToggleInput as aR, type InputElement as aS, type Element$1 as aT, type ICard as aU, type MSTeamsCardInfo as aV, type CardOptions as aW, Card as aX, isCard as aY, type IShowCardAction as aZ, type ShowCardOptions as a_, type IColumn as aa, type ColumnOptions as ab, Column as ac, type IColumnSet as ad, type ColumnSetOptions as ae, ColumnSet as af, type IFactSet as ag, type FactSetOptions as ah, FactSet as ai, type IFact as aj, Fact as ak, type IImageSet as al, type ImageSetOptions as am, ImageSet as an, type ContainerElement as ao, type InputLabelPosition as ap, type InputStyle as aq, type IInputElement as ar, InputElement$1 as as, type ChoiceInputStyle as at, type IChoiceSetInput as au, type ChoiceSetInputOptions as av, ChoiceSetInput as aw, type IChoice as ax, Choice as ay, type IChoiceDataQuery as az, type ILineChartData as b, type Action as b0, type SelectAction as b1, type IElement as b2, Element as b3, type LineChartDataOptions as c, LineChartData as d, type ILineChartDataPoint as e, LineChartDataPoint as f, type IActionSet as g, ActionSet as h, type IIcon as i, type IconOptions as j, Icon as k, type IconName as l, type BadgeStyle as m, type IBadge as n, type BadgeOptions as o, Badge as p, type CodeLanguage as q, type ICodeBlock as r, type CodeBlockOptions as s, CodeBlock as t, type ImageSize as u, type IImage as v, type ImageOptions as w, Image as x, type IMedia as y, Media as z };
