/* eslint-disable */ /* tslint:disable */ /** * This is an autogenerated file created by the Stencil compiler. * It contains typing information for all components that exist in this project. */ import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime"; import { IcActivationTypes, IcAdditionalFieldTypes, IcAlignment, IcAutocompleteTypes, IcAutocorrectStates, IcBlurEventDetail, IcBrand, IcBrandForeground, IcButtonTooltipPlacement, IcColor, IcDeviceSizes, IcEmphasisType, IcIconPlacementOptions, IcInformationStatusOrEmpty, IcMenuOption, IcMultiValueEventDetail, IcOrientation, IcSearchMatchPositions, IcSelectMethodTypes, IcSelectTypes, IcSizes, IcSizesNoLarge, IcStatusVariants, IcThemeMode, IcThemeSettings, IcTypographyVariants, IcValueEventDetail } from "./utils/types"; import { IcBackToTopPositions, IcBackToTopVariants } from "./components/ic-back-to-top/ic-back-to-top.types"; import { IcBadgePositions, IcBadgeTypes, IcBadgeVariants } from "./components/ic-badge/ic-badge.types"; import { IcButtonTypes, IcButtonVariants } from "./components/ic-button/ic-button.types"; import { IcChangeEventDetail } from "./components/ic-checkbox-group/ic-checkbox-group.types"; import { IcProtectiveMarkings } from "./components/ic-classification-banner/ic-classification-banner.types"; import { IcDividerLabelPlacement, IcDividerStyles, IcDividerWeights } from "./components/ic-divider/ic-divider.types"; import { IcEmptyStateAlignment } from "./components/ic-empty-state/ic-empty-state.types"; import { IcFooterBreakpoints } from "./components/ic-footer/ic-footer.types"; import { IcHeroContentAlignments } from "./components/ic-hero/ic-hero.types"; import { IcAriaLiveModeVariants } from "./components/ic-input-validation/ic-input-validation.types"; import { IcLoadingSizes, IcLoadingTypes } from "./components/ic-loading-indicator/ic-loading-indicator.types"; import { IcSearchBarBlurEventDetail, IcSearchBarSearchModes } from "./components/ic-search-bar/ic-search-bar.types"; import { IcMenuChangeEventDetail, IcMenuOptionIdEventDetail, IcOptionSelectEventDetail } from "./components/ic-menu/ic-menu.types"; import { Options } from "@popperjs/core"; import { IcMenuItemVariants } from "./components/ic-menu-item/ic-menu-item.types"; import { IcNavigationExpandEventDetail, IcNavigationOpenEventDetail } from "./components/ic-navigation-group/ic-navigation-group.types"; import { IcChangeEventDetail as IcChangeEventDetail1, IcPaginationTypes } from "./components/ic-pagination/ic-pagination.types"; import { IcPaginationItemType } from "./components/ic-pagination-item/ic-pagination-item.types"; import { IcChangeEventDetail as IcChangeEventDetail2 } from "./components/ic-radio-group/ic-radio-group.types"; import { IcExpandedDetail } from "./components/ic-side-navigation/ic-side-navigation.types"; import { IcSkeletonVariants } from "./components/ic-skeleton/ic-skeleton.types"; import { IcStatusTagStatuses } from "./components/ic-status-tag/ic-status-tag.types"; import { IcStepStatuses, IcStepTypes, IcStepVariants } from "./components/ic-step/ic-step.types"; import { IcStepperAlignment } from "./components/ic-stepper/ic-stepper.types"; import { IcSwitchChangeEventDetail } from "./components/ic-switch/ic-switch.types"; import { IcTabClickEventDetail, IcTabSelectEventDetail } from "./components/ic-tab/ic-tab.types"; import { IcAriaAutocompleteTypes, IcTextFieldInputModes, IcTextFieldTypes } from "./components/ic-text-field/ic-text-field.types"; import { IcChangeEventDetail as IcChangeEventDetail3 } from "./components/ic-toggle-button-group/ic-toggle-button-group.types"; import { IcTooltipPlacements } from "./components/ic-tooltip/ic-tooltip.types"; export { IcActivationTypes, IcAdditionalFieldTypes, IcAlignment, IcAutocompleteTypes, IcAutocorrectStates, IcBlurEventDetail, IcBrand, IcBrandForeground, IcButtonTooltipPlacement, IcColor, IcDeviceSizes, IcEmphasisType, IcIconPlacementOptions, IcInformationStatusOrEmpty, IcMenuOption, IcMultiValueEventDetail, IcOrientation, IcSearchMatchPositions, IcSelectMethodTypes, IcSelectTypes, IcSizes, IcSizesNoLarge, IcStatusVariants, IcThemeMode, IcThemeSettings, IcTypographyVariants, IcValueEventDetail } from "./utils/types"; export { IcBackToTopPositions, IcBackToTopVariants } from "./components/ic-back-to-top/ic-back-to-top.types"; export { IcBadgePositions, IcBadgeTypes, IcBadgeVariants } from "./components/ic-badge/ic-badge.types"; export { IcButtonTypes, IcButtonVariants } from "./components/ic-button/ic-button.types"; export { IcChangeEventDetail } from "./components/ic-checkbox-group/ic-checkbox-group.types"; export { IcProtectiveMarkings } from "./components/ic-classification-banner/ic-classification-banner.types"; export { IcDividerLabelPlacement, IcDividerStyles, IcDividerWeights } from "./components/ic-divider/ic-divider.types"; export { IcEmptyStateAlignment } from "./components/ic-empty-state/ic-empty-state.types"; export { IcFooterBreakpoints } from "./components/ic-footer/ic-footer.types"; export { IcHeroContentAlignments } from "./components/ic-hero/ic-hero.types"; export { IcAriaLiveModeVariants } from "./components/ic-input-validation/ic-input-validation.types"; export { IcLoadingSizes, IcLoadingTypes } from "./components/ic-loading-indicator/ic-loading-indicator.types"; export { IcSearchBarBlurEventDetail, IcSearchBarSearchModes } from "./components/ic-search-bar/ic-search-bar.types"; export { IcMenuChangeEventDetail, IcMenuOptionIdEventDetail, IcOptionSelectEventDetail } from "./components/ic-menu/ic-menu.types"; export { Options } from "@popperjs/core"; export { IcMenuItemVariants } from "./components/ic-menu-item/ic-menu-item.types"; export { IcNavigationExpandEventDetail, IcNavigationOpenEventDetail } from "./components/ic-navigation-group/ic-navigation-group.types"; export { IcChangeEventDetail as IcChangeEventDetail1, IcPaginationTypes } from "./components/ic-pagination/ic-pagination.types"; export { IcPaginationItemType } from "./components/ic-pagination-item/ic-pagination-item.types"; export { IcChangeEventDetail as IcChangeEventDetail2 } from "./components/ic-radio-group/ic-radio-group.types"; export { IcExpandedDetail } from "./components/ic-side-navigation/ic-side-navigation.types"; export { IcSkeletonVariants } from "./components/ic-skeleton/ic-skeleton.types"; export { IcStatusTagStatuses } from "./components/ic-status-tag/ic-status-tag.types"; export { IcStepStatuses, IcStepTypes, IcStepVariants } from "./components/ic-step/ic-step.types"; export { IcStepperAlignment } from "./components/ic-stepper/ic-stepper.types"; export { IcSwitchChangeEventDetail } from "./components/ic-switch/ic-switch.types"; export { IcTabClickEventDetail, IcTabSelectEventDetail } from "./components/ic-tab/ic-tab.types"; export { IcAriaAutocompleteTypes, IcTextFieldInputModes, IcTextFieldTypes } from "./components/ic-text-field/ic-text-field.types"; export { IcChangeEventDetail as IcChangeEventDetail3 } from "./components/ic-toggle-button-group/ic-toggle-button-group.types"; export { IcTooltipPlacements } from "./components/ic-tooltip/ic-tooltip.types"; export namespace Components { interface IcAccordion { /** * If `true`, the accordion will be disabled. */ "disabled"?: boolean; /** * If `true`, the accordion appears expanded. */ "expanded"?: boolean; /** * The section header outlining section content. */ "heading"?: string; /** * The main body message of the accordion. */ "message"?: string; /** * Sets focus on accordion heading. */ "setFocus": () => Promise; /** * The size of the accordion. */ "size"?: IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcAccordionGroup { /** * The accessible button label to provide more context to the 'See all/Hide all' button for screen reader users. */ "accessibleButtonLabel"?: string; /** * If `true`, the accordion will load in an expanded state. */ "expanded"?: boolean; /** * The header for the accordion group. */ "label"?: string; /** * Sets the focus on first focusable element in the accordion group. If the "See/Hide all" button is present, it will be focused. Otherwise, the first accordion will be focused. */ "setFocus": () => Promise; /** * If `true`, only one accordion will open at a time. */ "singleExpansion"?: boolean; /** * The size of the accordion. */ "size"?: IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcAlert { /** * If `true`, the alert will have the 'alert' ARIA role and will be announced to screen readers. */ "announced": boolean; /** * If `true`, the alert will have a close icon at the end to dismiss it. */ "dismissible": boolean; /** * The optional title to display at the start of the alert. */ "heading": string; /** * The main body message of the alert. */ "message"?: string; /** * If `true`, the default icon for the neutral variant will appear on the left of the alert. */ "showDefaultIcon": boolean; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; /** * If `true`, the title and message will appear above and below instead of inline. */ "titleAbove": boolean; /** * The variant of the alert which will be rendered. */ "variant": IcStatusVariants; } interface IcBackToTop { /** * The horizontal position of the element. */ "position"?: IcBackToTopPositions; /** * The ID of the element to jump back to when the link is clicked. */ "target": string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The variant of the button to render */ "variant"?: IcBackToTopVariants; } interface IcBadge { /** * The accessible label of the badge component to provide context for screen reader users. */ "accessibleLabel"?: string; /** * The custom badge colour. This will only style the badge component if variant="custom". Can be a hex value e.g. "#ff0000", RGB e.g. "rgb(255, 0, 0)", or RGBA e.g. "rgba(255, 0, 0, 1)". */ "customColor"?: IcColor; /** * The text displayed in the badge. This will only be displayed if type="text". */ "label"?: string; /** * The maximum number shown on the badge appended with a +. This will only be displayed if type="text" and label is not empty. */ "maxNumber"?: number; /** * The positioning of the badge in reference to the parent element. */ "position"?: IcBadgePositions; /** * The size of the badge to be displayed. */ "size"?: IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The type of badge to be displayed. */ "type"?: IcBadgeTypes; /** * The variant of the badge to be displayed. */ "variant"?: IcBadgeVariants; /** * If `true`, the badge will be displayed. */ "visible"?: boolean; } interface IcBreadcrumb { /** * If `true`, aria-current will be set on the breadcrumb. */ "current": boolean; /** * The URL that the breadcrumb link points to. */ "href"?: string; "monochrome": boolean; /** * The title of the breadcrumb. */ "pageTitle": string; /** * Sets focus on the breadcrumb. */ "setFocus": () => Promise; "showBackIcon": boolean; "theme": IcThemeMode; } interface IcBreadcrumbGroup { /** * If `true`, display only a single breadcrumb for the parent page with a back icon. */ "backBreadcrumbOnly": boolean; /** * If `true`, all breadcrumbs between the first and last breadcrumb will be collapsed. */ "collapsed": boolean; /** * If `true`, the breadcrumb group will display as black in the light theme, and white in the dark theme. */ "monochrome": boolean; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; } interface IcButton { /** * If `fileUpload` is set to `true`, this is the accepted list of file types. */ "accept": string; "ariaControlsId"?: string | boolean; "ariaOwnsId"?: string | boolean; /** * If `true`, the ic-tooltip which is shown for icon variant will be disabled. Title or aria-label must be set if this prop is not applied. */ "disableTooltip": boolean; /** * If `true`, the button will be in disabled state. */ "disabled": boolean; /** * If `true`, the user can save the linked URL instead of navigating to it. */ "download": string | boolean; /** * If `true`, the button will show a dropdown icon. */ "dropdown": boolean; /** * If `true`, the aria-expanded value will be set to true. This is only applied if the dropdown prop is also true. */ "dropdownExpanded": boolean; /** * The name of the control for the file input, which is submitted with the form data. */ "fileInputName": string; /** * If `true`, when the button is clicked the native file explorer will be launched. */ "fileUpload": boolean; /** * The
element to associate the button with. */ "form"?: string; /** * The URL that processes the information submitted by the button. It overrides the action attribute of the button's form owner. Does nothing if there is no form owner. */ "formaction"?: string; /** * The way the submitted form data is encoded. */ "formenctype"?: string; /** * The HTTP method used to submit the form. */ "formmethod"?: string; /** * If `true`, the form will not be validated when submitted. */ "formnovalidate"?: boolean; /** * The place to display the response from submitting the form. It overrides the target attribute of the button's form owner. */ "formtarget"?: string; /** * If `true`, the button will fill the width of the container. */ "fullWidth": boolean; /** * The URL that the link points to. This will render the button as an "a" tag. */ "href"?: string; /** * The human language of the linked URL. */ "hreflang"?: string; /** * If `true`, the button will be in loading state. */ "loading": boolean; /** * If `true`, the button will display as monochromatic in either `light` or `dark` theme. */ "monochrome": boolean; /** * If `fileUpload` is set to `true`, this boolean determines whether multiple files are accepted. */ "multiple": boolean; /** * How much of the referrer to send when following the link. */ "referrerpolicy"?: ReferrerPolicy; /** * The relationship of the linked URL as space-separated link types. */ "rel"?: string; /** * The list of the files that have been selected by a user. */ "selectedFiles"?: FileList; /** * Sets focus on the native `button`. */ "setFocus": () => Promise; /** * The size of the button to be displayed. */ "size": IcSizes; /** * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe). */ "target"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; /** * The position of the tooltip in relation to the button. */ "tooltipPlacement": IcButtonTooltipPlacement; /** * If `true`, the secondary & tertiary variants of button will have a transparent background when not hovered, pressed or loading. */ "transparentBackground": boolean; /** * The type of the button. */ "type": IcButtonTypes; /** * The variant of the button to be displayed. */ "variant": IcButtonVariants; } interface IcCardVertical { /** * If `true`, the card will be a clickable variant, instead of static. */ "clickable"?: boolean; /** * If `true`, the card will be disabled if it is clickable. */ "disabled"?: boolean; /** * If `true`, the card will have an expandable area and expansion toggle button. */ "expandable"?: boolean; /** * If `true`, the card will fill the width of the container. */ "fullWidth"?: boolean; /** * The heading for the card. This is required, unless a slotted heading is used. */ "heading"?: string; /** * The URL that the clickable card link points to. If set, the clickable card will render as an "a" tag, otherwise it will render as a button. */ "href"?: string; /** * The human language of the linked URL. */ "hreflang"?: string; /** * The main body message of the card. */ "message"?: string; /** * How much of the referrer to send when following the link. */ "referrerpolicy"?: ReferrerPolicy; /** * The relationship of the linked URL as space-separated link types. */ "rel"?: string; /** * Sets focus on the card. */ "setFocus": () => Promise; /** * The subheading for the card. */ "subheading"?: string; /** * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe). */ "target"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcCheckbox { /** * The style of additionalField that will be displayed if used. */ "additionalFieldDisplay": IcAdditionalFieldTypes; /** * If `true`, the checkbox will be set to the checked state. This is only the initial state and will be updated to unchecked if the checkbox is clicked. */ "checked": boolean; /** * If `true`, the checkbox will be set to the disabled state. */ "disabled": boolean; /** * The text to be displayed when dynamic. */ "dynamicText": string; /** * The element to associate the checkbox with. */ "form"?: string; /** * The group label for the checkbox. */ "groupLabel"?: string; /** * If `true`, the label will be hidden and the required label value will be applied as an aria-label. */ "hideLabel": boolean; /** * If `true`, the indeterminate state will be displayed when checked. */ "indeterminate": boolean; /** * The label for the checkbox. */ "label": string; /** * The name for the checkbox. If not set when used in a checkbox group, the name will be based on the group name. */ "name"?: string; /** * If `true`, the checkbox will behave like a native checkbox where the `indeterminate` prop sets the indeterminate visual styling, independent of the `checked` state. */ "nativeIndeterminateBehaviour": boolean; /** * Sets focus on the checkbox. */ "setFocus": () => Promise; /** * The size of the checkbox to be displayed. This does not affect the font size of the label. If a checkbox is contained in a checkbox group, this will override the size set on checkbox group. */ "size"?: IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; /** * The value for the checkbox. */ "value": string; } interface IcCheckboxGroup { /** * If `true`, the checkbox group will be set to the disabled state. */ "disabled": boolean; /** * The helper text that will be displayed for additional field guidance. */ "helperText": string; /** * If `true`, the label will be hidden and the required label value will be applied as an aria-label. */ "hideLabel": boolean; /** * The label for the checkbox group to be displayed. */ "label": string; /** * The name for the checkbox group to differentiate from other groups. */ "name": string; /** * If `true`, the checkbox group will require a value. */ "required": boolean; /** * The size of the checkboxes to be displayed. This does not affect the font size of the label. */ "size": IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; /** * The validation status - e.g. 'error' | 'warning' | 'success'. */ "validationStatus": IcInformationStatusOrEmpty; /** * The text to display as the validation message. */ "validationText": string; } interface IcChip { /** * The custom chip colour. This will override the theme colour. Can be a hex value e.g. "#ff0000", RGB e.g. "rgb(255, 0, 0)", or RGBA e.g. "rgba(255, 0, 0, 1)". */ "customColor"?: IcColor; /** * If `true`, the chip will appear disabled. */ "disabled": boolean; /** * The text in the dismiss button tooltip and aria label. Makes the user aware of the action resulting from clicking the 'Dismiss chip' button. */ "dismissLabel": string; /** * If `true`, the chip will have a close button at the end to dismiss it. */ "dismissible": boolean; /** * The text rendered within the chip. */ "label": string; /** * Sets focus on the chip. */ "setFocus": () => Promise; /** * The size of the chip. */ "size": IcSizes; /** * Sets the chip to the dark or light theme colors. "inherit" will set the color based on the system settings or ic-theme component. Setting the "customColor" prop will override this. */ "theme": IcThemeMode; /** * If `true`, the outlined variant of chip will have a transparent background rather than the theme defined color. */ "transparentBackground": boolean; /** * The emphasis of the chip. */ "variant": IcEmphasisType; } interface IcClassificationBanner { /** * The additional information that will be displayed after the classification. */ "additionalSelectors"?: string; /** * The classification level to be displayed - also determines the banner and text colour. */ "classification"?: IcProtectiveMarkings; /** * The optional text that will be displayed before classification to specify relevant country/countries. */ "country"?: string; /** * If `true`, the banner will appear inline with the page, instead of sticking to the bottom of the page. */ "inline"?: boolean; /** * If `true`, "Up to" will be displayed before the classification and country. */ "upTo"?: boolean; } interface IcDataList { /** * The title for the data list. */ "heading"?: string; /** * The size of the data list component. */ "size"?: IcSizesNoLarge; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcDataRow { /** * The label in the leftmost cell of the row. */ "label"?: string; /** * The size of the data row component. */ "size"?: IcSizesNoLarge; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The value of the middle (right if no end-component supplied) cell of the row. */ "value"?: string; } interface IcDialog { /** * Cancels the dialog. Used by the default 'Cancel' button or can be called manually to trigger cancelling of dialog. */ "cancelDialog": () => Promise; /** * If set to `false`, the dialog will not close when the backdrop is clicked. */ "closeOnBackdropClick"?: boolean; /** * Confirms the dialog. Used by the default 'Confirm' button or can be called manually to trigger confirming of dialog. */ "confirmDialog": () => Promise; /** * If 'true', sets the 'primary' or rightmost button to the destructive variant. Stops initial focus being set on the 'primary' or rightmost default or slotted button. */ "destructive"?: boolean; /** * If set to `true`, the content area max height and overflow properties are removed allowing the dialog to stretch below the fold. This prop also prevents popover elements from being cut off within the content area. */ "disableHeightConstraint"?: boolean; /** * If set to `true`, the content area width property is removed, allowing content to take the full width of the dialog when using the large variant. */ "disableWidthConstraint"?: boolean; /** * Sets the dismiss label tooltip and aria label. */ "dismissLabel"?: string; /** * Sets the heading for the dialog. */ "heading"?: string; /** * If `true`, the close button will not be displayed. */ "hideCloseButton"?: boolean; /** * If set to `true`, default button controls will not be shown, but slotted dialog controls will still be displayed. */ "hideDefaultControls": boolean; /** * Sets the optional label for the dialog which appears above the heading. */ "label"?: string; /** * If `true`, the dialog will be displayed. */ "open"?: boolean; /** * Sets the maximum and minimum height and width for the dialog. */ "size"?: "small" | "medium" | "large"; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcDivider { /** * The line style of the divider. */ "borderStyle"?: IcDividerStyles; /** * The label for the divider. The label placement will need to be set for the label to be displayed correctly. */ "label"?: string; /** * The position the label is placed on the divider. `Left` and `right` placement is only applicable when orientation is set to `horizontal`. `Top` and `bottom` placement is only applicable when orientation is set to `vertical`. `Center` placement is applicable for both orientations. */ "labelPlacement"?: IcDividerLabelPlacement; /** * If `true`, the divider will be displayed in a grey colour. */ "monochrome"?: boolean; /** * The orientation of the divider. */ "orientation"?: IcOrientation; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode | IcBrandForeground; /** * The thickness of the divider. */ "weight"?: IcDividerWeights; } interface IcEmptyState { /** * The alignment of the empty state container. */ "aligned"?: IcEmptyStateAlignment; /** * The body text rendered in the empty state container. */ "body"?: string; /** * The title rendered in the empty state container. */ "heading"?: string; /** * The size of the image or icon used in the image slot. */ "imageSize"?: IcSizes; /** * The number of lines of body text to display before truncating. */ "maxLines"?: number; /** * The subtitle rendered in the empty state container. */ "subheading"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcFooter { /** * The alignment of the section containers used within the footer. */ "aligned"?: IcAlignment; /** * The screen size breakpoint at which to switch to the small layout. */ "breakpoint"?: IcFooterBreakpoints; /** * The caption displayed at the bottom of the footer. */ "caption"?: string; /** * If `true`, the footer will display the crown copyright at the bottom. */ "copyright"?: boolean; /** * The description displayed at the top of the footer. */ "description"?: string; /** * If `true`, the footer will be set up to handle link groups instead of standalone links. */ "groupLinks"?: boolean; } interface IcFooterLink { /** * If `true`, the user can save the linked URL instead of navigating to it. */ "download"?: string | boolean; /** * The URL that the link points to. */ "href"?: string; /** * The human language of the linked URL. */ "hreflang"?: string; /** * How much of the referrer to send when following the link. */ "referrerpolicy"?: ReferrerPolicy; /** * The relationship of the linked URL as space-separated link types. */ "rel"?: string; /** * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe). */ "target"?: string; } interface IcFooterLinkGroup { /** * The title of the link group to be displayed. */ "label": string; } interface IcHero { /** * The alignment of the hero. */ "aligned"?: IcAlignment; /** * The optional background image. */ "backgroundImage"?: string; /** * The alignment of the hero content. */ "contentAligned"?: IcHeroContentAlignments; /** * If `true`, the background image (if set) will not scroll using a parallax effect. */ "disableBackgroundParallax"?: boolean; /** * The heading of the hero. An

level heading. */ "heading"?: string; /** * The optional secondary heading, an

level heading. Replaced by slotted right content. */ "secondaryHeading"?: string; /** * The optional secondary subheading, replaced by slotted right content. */ "secondarySubheading"?: string; /** * The size of the hero component. */ "size"?: IcSizesNoLarge; /** * The description for the hero. */ "subheading"?: string; } interface IcHorizontalScroll { /** * The appearance of the horizontal scroll, e.g. dark, light or the default. */ "appearance"?: IcBrandForeground; "focusTrigger"?: string; "monochrome"?: boolean; "scrollItemIntoView": (itemPosition: number) => Promise; "theme"?: IcThemeMode; } interface IcInputComponentContainer { /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * If `true`, the input component container will fill the width of the container it is in. */ "fullWidth"?: boolean; /** * If `true`, the input component container will allow for multiple lines. */ "multiLine"?: boolean; /** * If `true`, the readonly state will be set. */ "readonly"?: boolean; /** * The size of the input component container component. */ "size"?: IcSizes; /** * If `true`, the validation will display inline. */ "validationInline"?: boolean; /** * The validation status of the input component container - e.g. 'error' | 'warning' | 'success'. */ "validationStatus"?: IcInformationStatusOrEmpty; } interface IcInputContainer { /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * If `true`, the readonly state will be set. */ "readonly"?: boolean; } interface IcInputLabel { /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * The ID of the form element the label is bound to. */ "for"?: string; /** * The helper text that will be displayed. */ "helperText": string; /** * The label will be visually hidden. */ "hideLabel": boolean; /** * The text content of the label. */ "label": string; /** * If `true`, the readonly state will be set. */ "readonly": boolean; /** * If `true`, the input label will require a value. */ "required": boolean; /** * The status of the label - e.g. 'error'. */ "status": "error" | ""; "useLabelTag": boolean; } interface IcInputValidation { /** * The ARIA live mode to apply to the message. */ "ariaLiveMode"?: IcAriaLiveModeVariants; /** * The ID of the form element the validation is bound to. */ "for"?: string; /** * If `true`, the input validation will fill the width of the container. */ "fullWidth"?: boolean; /** * The validation message to display. */ "message": string; /** * The status of the validation - e.g. 'error' | 'warning' | 'success'. */ "status"?: IcInformationStatusOrEmpty; } interface IcLink { /** * If `true`, the user can save the linked URL instead of navigating to it. If the value is a string, it will be used as the filename for the download. */ "download"?: string | boolean; /** * The URL that the link points to. */ "href"?: string; /** * The human language of the linked URL. */ "hreflang"?: string; /** * If `true`, the link will display as black in the light theme, and white in the dark theme. */ "monochrome"?: boolean; /** * How much of the referrer to send when following the link. */ "referrerpolicy"?: ReferrerPolicy; /** * The relationship of the linked URL as space-separated link types. */ "rel"?: string; /** * Sets focus on the link. */ "setFocus": () => Promise; /** * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe). */ "target"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcLoadingIndicator { /** * The description that will be set as the aria-label of the loading indicator when not using a visible label. */ "description": string; /** * If `true`, when linear, the full-width variant (i.e. without a border radius) will be displayed. */ "fullWidth": boolean; "innerLabel"?: number; /** * The label to be displayed beneath the loading indicator. Display a changing label by supplying an array of messages. */ "label"?: string | string[]; /** * The time in milliseconds before the label changes. */ "labelDuration": number; /** * The maximum value that the progress value can take. Used to calculate the proportional width of the progress bar. */ "max": number; /** * The minimum value that the progress value can take. Used to calculate the proportional width of the progress bar. */ "min": number; /** * If `true`, the element will display as black and white. */ "monochrome": boolean; /** * The current amount of progress made. If not provided, component acts as an indeterminate loading indicator. */ "progress"?: number; /** * The size of the loading indicator. */ "size": IcLoadingSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; /** * The type of indicator, either linear or circular. */ "type": IcLoadingTypes; } interface IcMenu { /** * Determines whether options manually set as values (by pressing 'Enter') when they receive focus using keyboard navigation. */ "activationType": IcActivationTypes; /** * The reference to an anchor element the menu will position itself from when rendered. */ "anchorEl"?: HTMLElement; "autofocusOnSelected": boolean; /** * If `true`, the menu will close when an option is selected. */ "closeOnSelect": boolean; /** * If `true`, the menu will fill the width of the container. */ "fullWidth": boolean; "handleClickOpen": () => Promise; /** * Used alongside activationType If menu is opened via keyboard navigation (i.e. Enter, ArrowUp or ArrowDown), emit optionSelect custom event. * @param event The keyboard event which is available when handleKeyboardOpen is invoked. */ "handleKeyboardOpen": (event: KeyboardEvent) => Promise; "handleSetFirstOption": () => Promise; "initPopperJs": (anchor: HTMLElement) => Promise; /** * The reference to the input element. */ "inputEl"?: HTMLElement; /** * The label for the input element. */ "inputLabel": string; /** * The custom name for the label field for IcMenuOption. */ "labelField": string; /** * The ID of the menu. */ "menuId": string; /** * If `true`, the menu will be displayed open. */ "open": boolean; /** * The possible menu selection options. */ "options": IcMenuOption[]; "parentEl"?: HTMLElement; /** * Specify the mode search bar uses to search. `navigation` allows for quick lookups of a set of values, `query` allows for more general searches. */ "searchMode": IcSearchBarSearchModes; "selectOnEnter": boolean; /** * @param props object - createPopper props set externally */ "setExternalPopperProps": >(props: T) => Promise; /** * The size of the menu. */ "size": IcSizes; /** * The value of the currently selected option - or array of values (if multiple options allowed). */ "value": string | string[]; /** * The custom name for the value field for IcMenuOption. */ "valueField": string; } interface IcMenuGroup { /** * The label to display as the title of the menu group. */ "label"?: string; } interface IcMenuItem { /** * If `true`, the menu item will be in a checked state. This is only applicable when variant is set to `toggle`. */ "checked"?: boolean; /** * The description displayed in the menu item, below the label. */ "description"?: string; /** * If `true`, the menu item will be in disabled state. */ "disabled"?: boolean; /** * The URL that the link points to. This will render the menu item as an "a" tag. */ "href"?: string; /** * The human language of the linked URL. */ "hreflang"?: string; /** * The label describing the keyboard shortcut for a menu item's action. */ "keyboardShortcutLabel"?: string; /** * The label to display in the menu item. */ "label": string; /** * How much of the referrer to send when following the link. */ "referrerpolicy"?: ReferrerPolicy; /** * The relationship of the linked URL as space-separated link types. */ "rel"?: string; /** * This references the popover menu instance that the menu item is a trigger for. If this prop is set, then the variant will always be default. */ "submenuTriggerFor"?: string; /** * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe). */ "target"?: string; /** * The variant of the menu item. */ "variant"?: IcMenuItemVariants; } interface IcNavigationButton { /** * If `true`, the user can save the linked URL instead of navigating to it. */ "download": string | boolean; /** * The URL that the link points to. This will render the button as an "a" tag. */ "href"?: string; /** * The human language of the linked URL. */ "hreflang"?: string; /** * The label info to display. */ "label": string; /** * How much of the referrer to send when following the link. */ "referrerpolicy"?: ReferrerPolicy; /** * The relationship of the linked URL as space-separated link types. */ "rel"?: string; /** * Sets focus on the native `button`. */ "setFocus": () => Promise; /** * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe). */ "target"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; } interface IcNavigationGroup { /** * If `true`, the group will be expandable when in an ic-side-navigation component, or, when in an ic-top-navigation component, in the side menu displayed at small screen sizes. */ "expandable": boolean; /** * If `true`, the expandable group will be expanded by default when in an ic-side-navigation component. To enable this prop, `expandable` must also be set to `true`. */ "expanded": boolean; /** * The label to display on the group. */ "label": string; /** * Sets focus on the nav item. */ "setFocus": () => Promise; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; } interface IcNavigationItem { "collapsedIconLabel": boolean; "displayNavigationTooltip": boolean; /** * If `true`, the user can save the linked URL instead of navigating to it. */ "download": string | boolean; "expandable": boolean; /** * The destination of the navigation item. */ "href": string; /** * The human language of the linked URL. */ "hreflang"?: string; /** * The label of the navigation item. */ "label"?: string; /** * How much of the referrer to send when following the link. */ "referrerpolicy"?: ReferrerPolicy; /** * The relationship of the linked URL as space-separated link types. */ "rel"?: string; /** * If `true`, the navigation item will be set in a selected state. */ "selected": boolean; /** * Sets focus on the nav item. */ "setFocus": () => Promise; /** * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe). */ "target"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; } interface IcNavigationMenu { /** * The status info to display. */ "status"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The version info to display. */ "version"?: string; } interface IcPageHeader { /** * The alignment of the page header. */ "aligned"?: IcAlignment; /** * If `true`, a border will be displayed along the bottom of the page header. */ "border"?: boolean; /** * The title to render on the page header. */ "heading"?: string; /** * If `true`, the reading pattern and tab order will change in the action area for viewport widths of above 576px and when actions have not wrapped. */ "reverseOrder"?: boolean; /** * The size of the page header component. */ "size"?: IcSizesNoLarge; /** * If `true`, the page header will be sticky at all breakpoints. */ "sticky"?: boolean; /** * If `true`, the page header will only be sticky for viewport widths of 992px and above. */ "stickyDesktopOnly"?: boolean; /** * The subtitle to render on the page header. */ "subheading"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcPagination { /** * The number of pages displayed adjacent to the current page when using 'complex' type pagination. Accepted values are 0, 1 & 2. */ "adjacentPageCount"?: number; /** * The number of pages displayed as boundary items to the current page when using 'complex' type pagination. Accepted values are 0, 1 & 2. */ "boundaryPageCount"?: number; /** * The current page displayed by the pagination. */ "currentPage"?: number; /** * The default page to display. */ "defaultPage"?: number; /** * If `true`, the pagination will not allow interaction. */ "disabled"?: boolean; /** * If `true`, the current page of the simple pagination will not be displayed. */ "hideCurrentPage"?: boolean; /** * If `true`, the first and last page buttons will not be displayed. */ "hideFirstAndLastPageButton"?: boolean; /** * The label for the pagination item (applicable when simple pagination is being used). */ "label"?: string; /** * If `true`, the pagination will display as black in the light theme, and white in dark theme. */ "monochrome"?: boolean; /** * The total number of pages. */ "pages": number; /** * Sets the currently displayed page. * @param page The page number to set as the current page */ "setCurrentPage": (page: number) => Promise; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The type of pagination to be used. */ "type"?: IcPaginationTypes; } interface IcPaginationItem { /** * If `true`, the pagination item will be disabled. */ "disabled"?: boolean; /** * The label for the pagination item (applicable when simple pagination is being used). */ "label"?: string; /** * If `true`, the pagination item will display as black in the light theme, and white in dark theme. */ "monochrome"?: boolean; /** * The current page number. */ "page"?: number; /** * If `true`, the pagination item will be selected. */ "selected": boolean; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The type of pagination item - 'page' or 'ellipsis'. */ "type": IcPaginationItemType; } interface IcPopoverMenu { /** * The ID of the element the popover menu will anchor itself to. This is required unless the popover is a submenu. */ "anchor"?: string; /** * @param setFocusToAnchor when true return focus to anchor element when menu is closed */ "closeMenu": (setFocusToAnchor?: boolean, menuElement?: HTMLIcMenuItemElement) => Promise; /** * If `true`, the popover menu will be displayed. */ "open"?: boolean | undefined; "openFromChild": () => Promise; "openFromParent": () => Promise; "parentLabel"?: string; "parentPopover"?: HTMLIcPopoverMenuElement; /** * The unique identifier for a popover submenu. */ "submenuId"?: string; "submenuLevel"?: number; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcRadioGroup { /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * The helper text that will be displayed for additional field guidance. */ "helperText"?: string; /** * If `true`, the label will be hidden and the required label value will be applied as an aria-label. */ "hideLabel"?: boolean; /** * The label for the radio group to be displayed. */ "label": string; /** * The name for the radio group to differentiate from other groups. */ "name": string; /** * The orientation of the radio buttons in the radio group. If there are more than two radio buttons in a radio group or either of the radio buttons use the `additional-field` slot, then the orientation will always be vertical. */ "orientation"?: IcOrientation; /** * If `true`, the radio group will require a value. */ "required"?: boolean; /** * The size of the radio group component. */ "size"?: IcSizesNoLarge; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The validation status - e.g. 'error' | 'warning' | 'success'. */ "validationStatus"?: IcInformationStatusOrEmpty; /** * The text to display as the validation message. */ "validationText"?: string; } interface IcRadioOption { /** * The style of additionalField that will be displayed if used. */ "additionalFieldDisplay"?: IcAdditionalFieldTypes; /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * The text to be displayed when dynamic. */ "dynamicText"?: string; /** * The element to associate the radio with. */ "form"?: string; /** * The group label for the radio option. */ "groupLabel"?: string; /** * The label for the radio option. */ "label"?: string; /** * The name for the radio option. */ "name"?: string; /** * If `true`, the radio option will be displayed in a selected state. */ "selected"?: boolean; /** * Sets focus on the radio option. */ "setFocus": () => Promise; "setTabIndex": (value: number) => Promise; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The value for the radio option. */ "value": string; } interface IcSearchBar { /** * The hint text for the hidden assistive description element. */ "assistiveHintText": string; /** * The automatic capitalisation of the text value as it is entered/edited by the user. Available options: "off", "none", "on", "sentences", "words", "characters". */ "autocapitalize": string; /** * The state of autocompletion the browser can apply on the text value. */ "autocomplete": IcAutocompleteTypes; /** * The state of autocorrection the browser can apply when the user is entering/editing the text value. */ "autocorrect": IcAutocorrectStates; /** * If `true`, the form control will have input focus when the page loads. */ "autofocus": boolean; /** * The number of characters until suggestions appear. The submit button will be disabled until the inputted value is equal to or greater than this number. */ "charactersUntilSuggestion": number; /** * The amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke. */ "debounce": number; /** * Specify whether to disable the built in filtering. For example, if options will already be filtered from external source. If `true`, all options provided will be displayed. */ "disableAutoFiltering": boolean; /** * If `true`, the disabled state will be set. */ "disabled": boolean; /** * The text displayed when there are no options in the option list. */ "emptyOptionListText": string; /** * If `true`, the search bar will be focused when component loaded. */ "focusOnLoad": boolean; /** * Specify whether the search bar fills the full width of the container. If `true`, this overrides the --input-width CSS variable. */ "fullWidth": boolean; /** * The helper text that will be displayed for additional field guidance. */ "helperText": string; /** * If `true`, the label will be hidden and the required label value will be applied as an aria-label. */ "hideLabel": boolean; /** * The label for the search bar. */ "label": string; /** * The custom name for the label field to correspond with the IcMenuOption type. */ "labelField": string; /** * Trigger loading state when fetching options asynchronously */ "loading": boolean; /** * Change the message displayed when external loading times out. */ "loadingErrorLabel": string; /** * Change the message displayed whilst the options are being loaded externally. */ "loadingLabel": string; /** * The name of the control, which is submitted with the form data. */ "name": string; /** * The suggested search options. */ "options": IcMenuOption[]; /** * The placeholder value to display. */ "placeholder": string; /** * If `true` the parent form will not submit when the icSubmitSearch event fires. */ "preventFormSubmitOnSearch": boolean; /** * If `true`, the readonly state will be set. */ "readonly": boolean; /** * If `true`, the search bar will require a value. */ "required": boolean; /** * Specify the mode search bar uses to search. `navigation` allows for quick lookups of a set of values, `query` allows for more general searches. */ "searchMode": IcSearchBarSearchModes; /** * Sets focus on the native `input`. */ "setFocus": () => Promise; /** * The size of the search bar component. */ "size": IcSizesNoLarge; /** * If `true`, the value of the search will have its spelling and grammar checked. */ "spellcheck": boolean; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; /** * If using external filtering, set a timeout for when loading takes too long. */ "timeout"?: number; /** * The value of the search input. */ "value": string; /** * The custom name for the value field to correspond with the IcMenuOption type. */ "valueField": string; } interface IcSectionContainer { /** * The alignment of the container. */ "aligned"?: IcAlignment; /** * If `true`, the standard vertical padding from the container will be removed. */ "fullHeight"?: boolean; } interface IcSelect { /** * The amount of time, in milliseconds, to wait to trigger the `icInput` event after each keystroke. */ "debounce": number; /** * If `true`, the built in filtering will be disabled for a searchable variant. For example, if options will already be filtered from external source. */ "disableAutoFiltering": boolean; /** * If `true`, the disabled state will be set. */ "disabled": boolean; /** * The text displayed when there are no options in the option list. */ "emptyOptionListText": string; /** * The element to associate the select with. */ "form"?: string; /** * If `true`, the select will fill the width of the container. */ "fullWidth": boolean; /** * The helper text that will be displayed for additional field guidance. */ "helperText": string; /** * If `true`, the label will be hidden and the required label value will be applied as an aria-label. */ "hideLabel": boolean; /** * If `true`, descriptions of options will be included when filtering options in a searchable select. Only applies to built in filtering. */ "includeDescriptionsInSearch": boolean; /** * If `true`, group titles of grouped options will be included when filtering options in a searchable select. Only applies to built in filtering. */ "includeGroupTitlesInSearch": boolean; /** * The label for the select. */ "label": string; /** * If `true`, the loading state will be triggered when fetching options asynchronously. */ "loading": boolean; /** * The message displayed when external loading times out. */ "loadingErrorLabel": string; /** * The message displayed whilst the options are being loaded externally. */ "loadingLabel": string; /** * If `true`, multiple options can be selected. */ "multiple": boolean; /** * The name of the control, which is submitted with the form data. */ "name": string; /** * The possible selection options. */ "options": IcMenuOption[]; /** * The placeholder value to be displayed. */ "placeholder": string; /** * If `true`, the readonly state will be set. */ "readonly": boolean; /** * If `true`, the select will require a value. */ "required": boolean; /** * Whether the search string of the searchable select should match the start of or anywhere in the options. Only applies to built in filtering. */ "searchMatchPosition": IcSearchMatchPositions; /** * If `true`, a searchable variant of the select will be displayed which can be typed in to filter options. This functionality is only available on the single-select variant of the select component. */ "searchable": boolean; /** * If `true`, the icOptionSelect event will be fired on enter instead of ArrowUp and ArrowDown on the single select. */ "selectOnEnter": boolean; /** * Sets focus on the input box. */ "setFocus": () => Promise; /** * If `true`, a button which clears the select input when clicked will be displayed. The button will always appear on the searchable select. */ "showClearButton": boolean; /** * The size of the select. */ "size": IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; /** * If using external filtering, set a timeout for when loading takes too long. */ "timeout"?: number; /** * The validation status - e.g. 'error' | 'warning' | 'success'. */ "validationStatus": IcInformationStatusOrEmpty; /** * The text to display as the validation message. */ "validationText": string; /** * The value of the select, reflected by the value of the currently selected option. For the searchable variant, the value is also reflected by the user input. For the multi-select variant, the value must be an array of option values. */ "value": string | string[] | null; } interface IcSideNavigation { /** * The app title to be displayed. This is required, unless a slotted app title link is used. */ "appTitle"?: string; /** * If `true`, the side navigation will close when a navigation item is clicked. This behaviour is only applicable on larger device sizes. */ "closeOnNavItemClick"?: boolean; /** * If `true`, the icon and label will appear when side navigation is collapsed. */ "collapsedIconLabels"?: boolean; /** * If `true`, automatic parent wrapper styling will be disabled. */ "disableAutoParentStyling"?: boolean; /** * If `true`, the side navigation will not display as a top bar on small devices. */ "disableTopBarBehaviour"?: boolean; /** * If `true`, the side navigation will display in an expanded state. */ "expanded"?: boolean; /** * The URL that the app title link points to. */ "href"?: string; "inline"?: boolean; /** * The short title of the app to be displayed at small screen sizes in place of the app title. */ "shortAppTitle"?: string; /** * If `true`, the menu expand button will be removed (PLEASE NOTE: This takes effect on screen sizes 992px and above). */ "static"?: boolean; /** * The status of the app to be displayed. */ "status"?: string; /** * The version of the app to be displayed. */ "version"?: string; } interface IcSkeleton { /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The variant of the skeleton that will be displayed. */ "variant"?: IcSkeletonVariants; } interface IcSkipLink { /** * If `true`, the skip link will fill the width of the page. */ "fullWidth": boolean; /** * If `true`, the skip link will appear inline with surrounding page content when focused. */ "inline": boolean; /** * The label displayed when the skip link is focused. */ "label": string; /** * If `true`, the skip link will display as black in the light theme, and white in the dark theme. */ "monochrome": boolean; /** * Sets focus on the element. */ "setFocus": () => Promise; /** * The target ID for the element which should receive focus when triggering the skip link. */ "target": string; /** * Sets the theme color to the dark or light theme color. `inherit` will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; /** * If `true`, the background will be hidden. */ "transparentBackground": boolean; } interface IcStatusTag { /** * If `true`, role='status' is added to the component and it will act as an 'aria-live' region. Screen readers will announce changes to the `label`, but not the initial value. */ "announced"?: boolean; /** * The content rendered within the status tag. */ "label": string; /** * The size of the status tag component. */ "size"?: IcSizes; /** * The colour of the status tag. */ "status"?: IcStatusTagStatuses; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: "dark" | "light" | "inherit"; /** * The letter case of the status tag's label. */ "uppercase"?: boolean; /** * The emphasis of the status tag. */ "variant"?: IcEmphasisType; } interface IcStep { "compactStepStyling"?: IcStepTypes; "current"?: boolean; /** * The title of the step within the stepper. */ "heading"?: string; "lastStep": boolean; "lastStepNum"?: number; "nextStepHeading"?: string; "progress"?: number; /** * The status of the step. Use this prop to display a status message on the step if it is required or optional. */ "status"?: IcStepStatuses; "stepNum"?: number; /** * Additional information about the step. Use this prop to override the default step status messaging displayed when selecting a step type or step status. */ "subheading"?: string; "theme"?: IcThemeMode; /** * The state of the step within the stepper. */ "type"?: IcStepTypes; "variant": IcStepVariants; } interface IcStepper { /** * The alignment of the default stepper within its container. */ "aligned"?: IcStepperAlignment; /** * The length of the connector between each step in pixels. Minimum length is 100px. */ "connectorWidth"?: number; /** * If `true`, the information about each step, i.e. step title, step subtitle and step status, will be hidden on all default steps. The information about each step will still be visible in the compact variant of the stepper. */ "hideStepInfo"?: boolean; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The variant of the stepper. */ "variant"?: IcStepVariants; } interface IcSwitch { /** * If `true`, the switch will display as checked. */ "checked"?: boolean; /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * The helper text that will be displayed for additional field guidance. */ "helperText"?: string; /** * If `true`, the label will be hidden and the required label value will be applied as an aria-label. */ "hideLabel"?: boolean; /** * The aria-label applied to the switch when no visual 'name' is provided. */ "label": string; /** * The name of the control, which is submitted with the form data. */ "name"?: string; /** * Sets focus on the switch. */ "setFocus": () => Promise; /** * The size of the switch component. */ "size"?: IcSizesNoLarge; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The value of the toggle does not mean if it's checked or not, use the `checked` property for that. The value of a toggle is analogous to the value of a ``, it's only used when the toggle participates in a native ``. */ "value"?: string | null; } interface IcTab { "contextId"?: string; /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; "monochrome"?: boolean; "selected"?: boolean; /** * Sets focus on the tab. */ "setFocus": () => Promise; "tabId": string; "tabPosition": number; "theme"?: IcThemeMode; } interface IcTabContext { /** * Determines whether tabs have to be manually activated (by pressing 'Enter' or 'Space') when they receive focus using keyboard navigation. */ "activationType"?: IcActivationTypes; /** * The unique context needed if using multiple tabs inside one another i.e. rendering another set of tabs inside a tab panel. */ "contextId"?: string; /** * If `true`, the tabs will display as black in the light theme. */ "monochrome"?: boolean; /** * The selected tab to be controlled by the user. Must be used alongside the icTabSelect event to manage tab selection. */ "selectedTabIndex"?: number; "tabRemovedHandler": (hadFocus?: boolean) => Promise; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcTabGroup { /** * If `true`, the tabs and tab panels will be positioned separately. */ "inline"?: boolean; /** * The label to describe the purpose of the set of tabs to screen reader users. */ "label": string; "monochrome"?: boolean; "theme"?: IcThemeMode; } interface IcTabPanel { "active": boolean; "monochrome"?: boolean; "panelId"?: string; "selectedTab"?: string; "tabPosition"?: number; "theme"?: IcThemeMode; } interface IcTextField { "ariaActiveDescendant"?: string; "ariaAutocomplete"?: IcAriaAutocompleteTypes; "ariaExpanded": string | null; "ariaOwns"?: string; /** * The automatic capitalisation of the text value as it is entered/edited by the user. Available options: "off", "none", "on", "sentences", "words", "characters". */ "autocapitalize": string; /** * The state of autocompletion the browser can apply on the text value. */ "autocomplete"?: IcAutocompleteTypes; /** * The state of autocorrection the browser can apply when the user is entering/editing the text value. */ "autocorrect"?: IcAutocorrectStates; /** * If `true`, the form control will have input focus when the page loads. */ "autofocus": boolean; /** * The amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke. */ "debounce": number; /** * If `true`, the disabled state will be set. */ "disabled": boolean; /** * Specify whether the text field fills the full width of the container. If `true`, this overrides the --input-width CSS variable. */ "fullWidth": boolean; /** * The helper text that will be displayed for additional field guidance. */ "helperText": string; "hiddenInput": boolean; /** * If `true`, the character count which is displayed when `maxCharacters` is set will be visually hidden. */ "hideCharCount": boolean; /** * If `true`, the label will be hidden and the required label value will be applied as an aria-label. */ "hideLabel": boolean; /** * The ID for the input. */ "inputId": string; /** * A hint to the browser for which keyboard to display. Possible values: `"none"`, `"text"`, `"tel"`, `"url"`, `"email"`, `"numeric"`, `"decimal"`, and `"search"`. */ "inputmode": IcTextFieldInputModes; /** * The label for the input. */ "label": string; /** * The maximum number that can be accepted as a value, when `type` is `number` and `rows` is `1`. (NOTE: Ensure to include visual indication of max value in `helperText` or `label`) */ "max"?: string | number; /** * The count of characters in the field. Will display a warning if the bound is reached. (NOTE: If the value of the text field has been set using the `value` prop, it will be truncated to this number of characters) */ "maxCharacters": number; /** * The text to display as the warning message when the maximum number of characters (the `maxCharacters` prop value) is reached. */ "maxCharactersMessage": string; /** * The text to display as the error message when the maximum value (the `max` prop value) has been exceeded. */ "maxMessage": string; /** * The minimum number that can be accepted as a value, when `type` is `number` and `rows` is `1`. (NOTE: Ensure to include visual indication of min value in `helperText` or `label`) */ "min"?: string | number; /** * The minimum number of characters that can be entered in the field. */ "minCharacters": number; /** * The text to display as the error message when the minimum number of characters (the `minCharacters` prop value) has not been met. */ "minCharactersMessage": string; /** * The text to display as the error message when the minimum value (the `min` prop value) has not been met. */ "minMessage": string; /** * The name of the control, which is submitted with the form data. */ "name": string; /** * The placeholder value to be displayed. */ "placeholder": string; /** * If `true`, the read only state will be set. */ "readonly": boolean; /** * If `true`, the input will require a value. */ "required": boolean; /** * If `true`, the multiline text area will be resizeable. */ "resize": boolean; "role": string | null; /** * The number of rows to transform the text field into a text area with a specific height. */ "rows": number; /** * Sets focus on the native `input`. */ "setFocus": () => Promise; /** * The size of the text field component. */ "size": IcSizesNoLarge; /** * If `true`, the value of the text field will have its spelling and grammar checked. */ "spellcheck": boolean; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; "truncateValue": boolean; /** * The type of control to display. The default type is text. */ "type": IcTextFieldTypes; /** * If `true`, the icon in input control will be displayed - only applies when validationStatus ='success'. */ "validationInline": boolean; "validationInlineInternal": boolean; /** * The validation state - e.g. 'error' | 'warning' | 'success'. */ "validationStatus": IcInformationStatusOrEmpty; /** * The text to display as the validation message. */ "validationText": string; /** * The value of the text field. */ "value": string; } interface IcTheme { /** * The brand colour. Can be a hex value e.g. "#ff0000", RGB e.g. "rgb(255, 0, 0)", or RGBA e.g. "rgba(255, 0, 0, 1)". */ "brandColor"?: IcColor | null; /** * The theme mode. Can be "dark", "light", or "system". "system" will use the device or browser settings. */ "theme"?: IcThemeSettings; } interface IcToast { /** * If toast dismissMode is set to `automatic`, use this prop to define the time before the toast dismisses (in MILLISECONDS) (NOTE: Has a minimum value of `5000ms`) */ "autoDismissTimeout"?: number | undefined; /** * If toast can be manually dismissed, this prop sets a custom aria-label for the ic-button component */ "dismissButtonAriaLabel"?: string | undefined; /** * How the toast will be dismissed. If manual will display a dismiss button. */ "dismissMode"?: IcActivationTypes; /** * The title to display at the start of the toast. (NOTE: Should be no more than `70` characters) */ "heading": string; /** * The main body message of the toast. (NOTE: Should be no more than `140` characters) */ "message"?: string; /** * Provides a custom alt-text to be announced to screen readers, if slotting a custom neutral icon */ "neutralIconAriaLabel"?: string; /** * @returns The element that previously had focus before the toast appeared */ "setVisible": () => Promise; /** * The variant of the toast being rendered */ "variant"?: IcStatusVariants; } interface IcToastRegion { /** * The toast element to be displayed. */ "openToast"?: HTMLIcToastElement; } interface IcToggleButton { /** * The accessible label that will be applied to the toggle button. This is required for the icon variant of toggle buttons. */ "accessibleLabel"?: string; /** * If `true`, the toggle button will be in a checked state. */ "checked": boolean; /** * If `true`, the toggle button will be in disabled state. */ "disabled": boolean; /** * If `true`, the toggle button will fill the width of the container. */ "fullWidth": boolean; /** * The placement of the icon in relation to the toggle button label. */ "iconPlacement": IcIconPlacementOptions; /** * The label to display in the toggle button. This is required for the default variant of toggle buttons. */ "label"?: string; /** * If `true`, the toggle button will be in loading state. */ "loading": boolean; /** * If `true`, the toggle button will display as black in the light theme, and white in dark theme. */ "monochrome": boolean; /** * The size of the toggle button to be displayed. */ "size": IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; /** * The position of the tooltip in relation to the toggle button. */ "tooltipPlacement": IcButtonTooltipPlacement; /** * The variant of the toggle button. */ "variant": "default" | "icon"; } interface IcToggleButtonGroup { /** * The accessible label of the toggle button group component to provide context for screen reader users. */ "accessibleLabel": string; /** * If `true`, the toggle button group will be set to the disabled state. */ "disabled": boolean; /** * If `true`, the toggle button group will fill the width of the container. */ "fullWidth": boolean; /** * The placement of the icons in relation to the toggle button labels. */ "iconPlacement"?: IcIconPlacementOptions; /** * If `true`, the toggle button group will be in loading state. */ "loading": boolean; /** * If `true`, the toggle button group will display as black in the light theme, and white in dark theme. */ "monochrome": boolean; /** * If `auto`, controls are toggled automatically when navigated to. If `manual`, the controls must be actioned to change their toggled state. The value of this prop is ignored if `selectType` is set to`multi`. */ "selectMethod": IcSelectMethodTypes; /** * Sets whether single or multiple options can be toggled. If `multi`, then the `selectMethod` is always `manual`. */ "selectType": IcSelectTypes; /** * The size of the toggle buttons to be displayed. This does not affect the font size of the accessible label. */ "size": IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; /** * The position of the tooltip in relation to the toggle buttons. */ "tooltipPlacement": IcButtonTooltipPlacement; /** * The variant of the toggle button. */ "variant": "default" | "icon"; } interface IcTooltip { /** * If `true`, the tooltip will not be displayed on click, it will require hover or using the display method. */ "disableClick"?: boolean; /** * If `true`, the tooltip will not be displayed on hover, it will require a click. */ "disableHover"?: boolean; /** * Method to programmatically show/hide the tooltip without needing to interact with an anchor element * @param show Whether to show or hide the tooltip * @param persistTooltip Whether the tooltip should stay on the screen when actions are performed that would previously dismiss the tooltip, such as on hover */ "displayTooltip": (show: boolean, persistTooltip?: boolean) => Promise; "isTooltipVisible": () => Promise; /** * The text to display on the tooltip. */ "label": string; /** * The number of lines to display before truncating the text. */ "maxLines"?: number; /** * The position of the tooltip in relation to the parent element. */ "placement"?: IcTooltipPlacements; /** * @param props object - createPopper props set externally */ "setExternalPopperProps": >(props: T) => Promise; "silent"?: boolean; /** * The ID of the element the tooltip is describing - for when aria-labelledby or aria-describedby is used. */ "target"?: string; /** * Sets the tooltip to the dark or light theme colors. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcTopNavigation { /** * The app title to be displayed. This is required, unless a slotted app title link is used. */ "appTitle"?: string; /** * The alignment of the top navigation content. */ "contentAligned": IcAlignment; /** * Can set a custom breakpoint for the top navigation to switch to mobile mode. Must be one of our specified breakpoints in px: `0`, `576`, `768`, `992`, `1200`. */ "customMobileBreakpoint": IcDeviceSizes; /** * The URL to navigate to when the app title is clicked. */ "href": string; /** * If `true`, the flyout navigation menu on small devices will be contained by the parent element. */ "inline": boolean; /** * The short title of the app to be displayed at small screen sizes in place of the app title. */ "shortAppTitle": string; /** * The status info to be displayed. */ "status": string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme": IcThemeMode; /** * The version info to be displayed. */ "version": string; } interface IcTypography { /** * If `true`, appropriate top and bottom margins will be applied to the typography. */ "applyVerticalMargins"?: boolean; /** * If `true`, the typography will have a bold font weight. Note: This will have no impact on variants that already use an equivalent or higher font weight (h1, h2, and subtitle-large). */ "bold"?: boolean; /** * @param height - text container height */ "checkMaxLines": (height: number) => Promise; /** * If `true`, the typography will have an italic font style. */ "italic"?: boolean; /** * The number of lines to display before truncating the text, only used for the 'body' variant. */ "maxLines"?: number; "resetTruncation": () => Promise; "setShowHideExpanded": (expanded: boolean) => Promise; /** * If `true`, the typography will have a line through it. */ "strikethrough"?: boolean; /** * Sets the text color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * If `true`, the typography will have a line under it. */ "underline"?: boolean; /** * The ICDS typography style to use. */ "variant"?: IcTypographyVariants; } } export interface IcAccordionCustomEvent extends CustomEvent { detail: T; target: HTMLIcAccordionElement; } export interface IcAlertCustomEvent extends CustomEvent { detail: T; target: HTMLIcAlertElement; } export interface IcButtonCustomEvent extends CustomEvent { detail: T; target: HTMLIcButtonElement; } export interface IcCheckboxCustomEvent extends CustomEvent { detail: T; target: HTMLIcCheckboxElement; } export interface IcCheckboxGroupCustomEvent extends CustomEvent { detail: T; target: HTMLIcCheckboxGroupElement; } export interface IcChipCustomEvent extends CustomEvent { detail: T; target: HTMLIcChipElement; } export interface IcDialogCustomEvent extends CustomEvent { detail: T; target: HTMLIcDialogElement; } export interface IcFooterCustomEvent extends CustomEvent { detail: T; target: HTMLIcFooterElement; } export interface IcMenuCustomEvent extends CustomEvent { detail: T; target: HTMLIcMenuElement; } export interface IcMenuItemCustomEvent extends CustomEvent { detail: T; target: HTMLIcMenuItemElement; } export interface IcNavigationGroupCustomEvent extends CustomEvent { detail: T; target: HTMLIcNavigationGroupElement; } export interface IcNavigationItemCustomEvent extends CustomEvent { detail: T; target: HTMLIcNavigationItemElement; } export interface IcNavigationMenuCustomEvent extends CustomEvent { detail: T; target: HTMLIcNavigationMenuElement; } export interface IcPaginationCustomEvent extends CustomEvent { detail: T; target: HTMLIcPaginationElement; } export interface IcPaginationItemCustomEvent extends CustomEvent { detail: T; target: HTMLIcPaginationItemElement; } export interface IcPopoverMenuCustomEvent extends CustomEvent { detail: T; target: HTMLIcPopoverMenuElement; } export interface IcRadioGroupCustomEvent extends CustomEvent { detail: T; target: HTMLIcRadioGroupElement; } export interface IcRadioOptionCustomEvent extends CustomEvent { detail: T; target: HTMLIcRadioOptionElement; } export interface IcSearchBarCustomEvent extends CustomEvent { detail: T; target: HTMLIcSearchBarElement; } export interface IcSelectCustomEvent extends CustomEvent { detail: T; target: HTMLIcSelectElement; } export interface IcSideNavigationCustomEvent extends CustomEvent { detail: T; target: HTMLIcSideNavigationElement; } export interface IcSwitchCustomEvent extends CustomEvent { detail: T; target: HTMLIcSwitchElement; } export interface IcTabCustomEvent extends CustomEvent { detail: T; target: HTMLIcTabElement; } export interface IcTabContextCustomEvent extends CustomEvent { detail: T; target: HTMLIcTabContextElement; } export interface IcTabPanelCustomEvent extends CustomEvent { detail: T; target: HTMLIcTabPanelElement; } export interface IcTextFieldCustomEvent extends CustomEvent { detail: T; target: HTMLIcTextFieldElement; } export interface IcThemeCustomEvent extends CustomEvent { detail: T; target: HTMLIcThemeElement; } export interface IcToastCustomEvent extends CustomEvent { detail: T; target: HTMLIcToastElement; } export interface IcToggleButtonCustomEvent extends CustomEvent { detail: T; target: HTMLIcToggleButtonElement; } export interface IcToggleButtonGroupCustomEvent extends CustomEvent { detail: T; target: HTMLIcToggleButtonGroupElement; } export interface IcTopNavigationCustomEvent extends CustomEvent { detail: T; target: HTMLIcTopNavigationElement; } export interface IcTypographyCustomEvent extends CustomEvent { detail: T; target: HTMLIcTypographyElement; } declare global { interface HTMLIcAccordionElementEventMap { "accordionClicked": { id: string }; } interface HTMLIcAccordionElement extends Components.IcAccordion, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcAccordionElement, ev: IcAccordionCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcAccordionElement, ev: IcAccordionCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcAccordionElement: { prototype: HTMLIcAccordionElement; new (): HTMLIcAccordionElement; }; interface HTMLIcAccordionGroupElement extends Components.IcAccordionGroup, HTMLStencilElement { } var HTMLIcAccordionGroupElement: { prototype: HTMLIcAccordionGroupElement; new (): HTMLIcAccordionGroupElement; }; interface HTMLIcAlertElementEventMap { "icDismiss": void; } interface HTMLIcAlertElement extends Components.IcAlert, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcAlertElement, ev: IcAlertCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcAlertElement, ev: IcAlertCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcAlertElement: { prototype: HTMLIcAlertElement; new (): HTMLIcAlertElement; }; interface HTMLIcBackToTopElement extends Components.IcBackToTop, HTMLStencilElement { } var HTMLIcBackToTopElement: { prototype: HTMLIcBackToTopElement; new (): HTMLIcBackToTopElement; }; interface HTMLIcBadgeElement extends Components.IcBadge, HTMLStencilElement { } var HTMLIcBadgeElement: { prototype: HTMLIcBadgeElement; new (): HTMLIcBadgeElement; }; interface HTMLIcBreadcrumbElement extends Components.IcBreadcrumb, HTMLStencilElement { } var HTMLIcBreadcrumbElement: { prototype: HTMLIcBreadcrumbElement; new (): HTMLIcBreadcrumbElement; }; interface HTMLIcBreadcrumbGroupElement extends Components.IcBreadcrumbGroup, HTMLStencilElement { } var HTMLIcBreadcrumbGroupElement: { prototype: HTMLIcBreadcrumbGroupElement; new (): HTMLIcBreadcrumbGroupElement; }; interface HTMLIcButtonElementEventMap { "icBlur": void; "icFileSelection": FileList; "icFocus": void; } interface HTMLIcButtonElement extends Components.IcButton, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcButtonElement, ev: IcButtonCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcButtonElement, ev: IcButtonCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcButtonElement: { prototype: HTMLIcButtonElement; new (): HTMLIcButtonElement; }; interface HTMLIcCardVerticalElement extends Components.IcCardVertical, HTMLStencilElement { } var HTMLIcCardVerticalElement: { prototype: HTMLIcCardVerticalElement; new (): HTMLIcCardVerticalElement; }; interface HTMLIcCheckboxElementEventMap { "icCheck": void; } interface HTMLIcCheckboxElement extends Components.IcCheckbox, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcCheckboxElement, ev: IcCheckboxCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcCheckboxElement, ev: IcCheckboxCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcCheckboxElement: { prototype: HTMLIcCheckboxElement; new (): HTMLIcCheckboxElement; }; interface HTMLIcCheckboxGroupElementEventMap { "icChange": IcChangeEventDetail; } interface HTMLIcCheckboxGroupElement extends Components.IcCheckboxGroup, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcCheckboxGroupElement, ev: IcCheckboxGroupCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcCheckboxGroupElement, ev: IcCheckboxGroupCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcCheckboxGroupElement: { prototype: HTMLIcCheckboxGroupElement; new (): HTMLIcCheckboxGroupElement; }; interface HTMLIcChipElementEventMap { "icDismiss": void; } interface HTMLIcChipElement extends Components.IcChip, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcChipElement, ev: IcChipCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcChipElement, ev: IcChipCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcChipElement: { prototype: HTMLIcChipElement; new (): HTMLIcChipElement; }; interface HTMLIcClassificationBannerElement extends Components.IcClassificationBanner, HTMLStencilElement { } var HTMLIcClassificationBannerElement: { prototype: HTMLIcClassificationBannerElement; new (): HTMLIcClassificationBannerElement; }; interface HTMLIcDataListElement extends Components.IcDataList, HTMLStencilElement { } var HTMLIcDataListElement: { prototype: HTMLIcDataListElement; new (): HTMLIcDataListElement; }; interface HTMLIcDataRowElement extends Components.IcDataRow, HTMLStencilElement { } var HTMLIcDataRowElement: { prototype: HTMLIcDataRowElement; new (): HTMLIcDataRowElement; }; interface HTMLIcDialogElementEventMap { "icDialogCancelled": void; "icDialogClosed": void; "icDialogConfirmed": void; "icDialogOpened": void; } interface HTMLIcDialogElement extends Components.IcDialog, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcDialogElement, ev: IcDialogCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcDialogElement, ev: IcDialogCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcDialogElement: { prototype: HTMLIcDialogElement; new (): HTMLIcDialogElement; }; interface HTMLIcDividerElement extends Components.IcDivider, HTMLStencilElement { } var HTMLIcDividerElement: { prototype: HTMLIcDividerElement; new (): HTMLIcDividerElement; }; interface HTMLIcEmptyStateElement extends Components.IcEmptyState, HTMLStencilElement { } var HTMLIcEmptyStateElement: { prototype: HTMLIcEmptyStateElement; new (): HTMLIcEmptyStateElement; }; interface HTMLIcFooterElementEventMap { "footerResized": void; } interface HTMLIcFooterElement extends Components.IcFooter, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcFooterElement, ev: IcFooterCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcFooterElement, ev: IcFooterCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcFooterElement: { prototype: HTMLIcFooterElement; new (): HTMLIcFooterElement; }; interface HTMLIcFooterLinkElement extends Components.IcFooterLink, HTMLStencilElement { } var HTMLIcFooterLinkElement: { prototype: HTMLIcFooterLinkElement; new (): HTMLIcFooterLinkElement; }; interface HTMLIcFooterLinkGroupElement extends Components.IcFooterLinkGroup, HTMLStencilElement { } var HTMLIcFooterLinkGroupElement: { prototype: HTMLIcFooterLinkGroupElement; new (): HTMLIcFooterLinkGroupElement; }; interface HTMLIcHeroElement extends Components.IcHero, HTMLStencilElement { } var HTMLIcHeroElement: { prototype: HTMLIcHeroElement; new (): HTMLIcHeroElement; }; interface HTMLIcHorizontalScrollElement extends Components.IcHorizontalScroll, HTMLStencilElement { } var HTMLIcHorizontalScrollElement: { prototype: HTMLIcHorizontalScrollElement; new (): HTMLIcHorizontalScrollElement; }; interface HTMLIcInputComponentContainerElement extends Components.IcInputComponentContainer, HTMLStencilElement { } var HTMLIcInputComponentContainerElement: { prototype: HTMLIcInputComponentContainerElement; new (): HTMLIcInputComponentContainerElement; }; interface HTMLIcInputContainerElement extends Components.IcInputContainer, HTMLStencilElement { } var HTMLIcInputContainerElement: { prototype: HTMLIcInputContainerElement; new (): HTMLIcInputContainerElement; }; interface HTMLIcInputLabelElement extends Components.IcInputLabel, HTMLStencilElement { } var HTMLIcInputLabelElement: { prototype: HTMLIcInputLabelElement; new (): HTMLIcInputLabelElement; }; interface HTMLIcInputValidationElement extends Components.IcInputValidation, HTMLStencilElement { } var HTMLIcInputValidationElement: { prototype: HTMLIcInputValidationElement; new (): HTMLIcInputValidationElement; }; interface HTMLIcLinkElement extends Components.IcLink, HTMLStencilElement { } var HTMLIcLinkElement: { prototype: HTMLIcLinkElement; new (): HTMLIcLinkElement; }; interface HTMLIcLoadingIndicatorElement extends Components.IcLoadingIndicator, HTMLStencilElement { } var HTMLIcLoadingIndicatorElement: { prototype: HTMLIcLoadingIndicatorElement; new (): HTMLIcLoadingIndicatorElement; }; interface HTMLIcMenuElementEventMap { "icClear": void; "menuKeyPress": { isNavKey: boolean; key: string }; "menuOptionId": IcMenuOptionIdEventDetail; "menuOptionSelect": IcOptionSelectEventDetail; "menuOptionSelectAll": { select: boolean }; "menuStateChange": IcMenuChangeEventDetail; "retryButtonClicked": IcMultiValueEventDetail; "timeoutBlur": { ev: FocusEvent }; "ungroupedOptionsSet": { options: IcMenuOption[] }; } interface HTMLIcMenuElement extends Components.IcMenu, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcMenuElement, ev: IcMenuCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcMenuElement, ev: IcMenuCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcMenuElement: { prototype: HTMLIcMenuElement; new (): HTMLIcMenuElement; }; interface HTMLIcMenuGroupElement extends Components.IcMenuGroup, HTMLStencilElement { } var HTMLIcMenuGroupElement: { prototype: HTMLIcMenuGroupElement; new (): HTMLIcMenuGroupElement; }; interface HTMLIcMenuItemElementEventMap { "childBlur": void; "handleMenuItemClick": HTMLIcMenuItemElement; "icToggleChecked": { checked: boolean; }; "triggerPopoverMenuInstance": void; } interface HTMLIcMenuItemElement extends Components.IcMenuItem, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcMenuItemElement, ev: IcMenuItemCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcMenuItemElement, ev: IcMenuItemCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcMenuItemElement: { prototype: HTMLIcMenuItemElement; new (): HTMLIcMenuItemElement; }; interface HTMLIcNavigationButtonElement extends Components.IcNavigationButton, HTMLStencilElement { } var HTMLIcNavigationButtonElement: { prototype: HTMLIcNavigationButtonElement; new (): HTMLIcNavigationButtonElement; }; interface HTMLIcNavigationGroupElementEventMap { "navigationGroupOpened": IcNavigationOpenEventDetail; "navigationGroupExpanded": IcNavigationExpandEventDetail; } interface HTMLIcNavigationGroupElement extends Components.IcNavigationGroup, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcNavigationGroupElement, ev: IcNavigationGroupCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcNavigationGroupElement, ev: IcNavigationGroupCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcNavigationGroupElement: { prototype: HTMLIcNavigationGroupElement; new (): HTMLIcNavigationGroupElement; }; interface HTMLIcNavigationItemElementEventMap { "childBlur": void; "navItemClicked": void; } interface HTMLIcNavigationItemElement extends Components.IcNavigationItem, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcNavigationItemElement, ev: IcNavigationItemCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcNavigationItemElement, ev: IcNavigationItemCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcNavigationItemElement: { prototype: HTMLIcNavigationItemElement; new (): HTMLIcNavigationItemElement; }; interface HTMLIcNavigationMenuElementEventMap { "icNavigationMenuClose": void; } interface HTMLIcNavigationMenuElement extends Components.IcNavigationMenu, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcNavigationMenuElement, ev: IcNavigationMenuCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcNavigationMenuElement, ev: IcNavigationMenuCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcNavigationMenuElement: { prototype: HTMLIcNavigationMenuElement; new (): HTMLIcNavigationMenuElement; }; interface HTMLIcPageHeaderElement extends Components.IcPageHeader, HTMLStencilElement { } var HTMLIcPageHeaderElement: { prototype: HTMLIcPageHeaderElement; new (): HTMLIcPageHeaderElement; }; interface HTMLIcPaginationElementEventMap { "icPageChange": IcChangeEventDetail1; } interface HTMLIcPaginationElement extends Components.IcPagination, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcPaginationElement, ev: IcPaginationCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcPaginationElement, ev: IcPaginationCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcPaginationElement: { prototype: HTMLIcPaginationElement; new (): HTMLIcPaginationElement; }; interface HTMLIcPaginationItemElementEventMap { "paginationItemClick": { page: number | null }; } interface HTMLIcPaginationItemElement extends Components.IcPaginationItem, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcPaginationItemElement, ev: IcPaginationItemCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcPaginationItemElement, ev: IcPaginationItemCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcPaginationItemElement: { prototype: HTMLIcPaginationItemElement; new (): HTMLIcPaginationItemElement; }; interface HTMLIcPopoverMenuElementEventMap { "icPopoverClosed": HTMLIcMenuItemElement; } interface HTMLIcPopoverMenuElement extends Components.IcPopoverMenu, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcPopoverMenuElement, ev: IcPopoverMenuCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcPopoverMenuElement, ev: IcPopoverMenuCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcPopoverMenuElement: { prototype: HTMLIcPopoverMenuElement; new (): HTMLIcPopoverMenuElement; }; interface HTMLIcRadioGroupElementEventMap { "icChange": IcChangeEventDetail2; } interface HTMLIcRadioGroupElement extends Components.IcRadioGroup, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcRadioGroupElement, ev: IcRadioGroupCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcRadioGroupElement, ev: IcRadioGroupCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcRadioGroupElement: { prototype: HTMLIcRadioGroupElement; new (): HTMLIcRadioGroupElement; }; interface HTMLIcRadioOptionElementEventMap { "icCheck": IcValueEventDetail; "icSelectedChange": void; } interface HTMLIcRadioOptionElement extends Components.IcRadioOption, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcRadioOptionElement, ev: IcRadioOptionCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcRadioOptionElement, ev: IcRadioOptionCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcRadioOptionElement: { prototype: HTMLIcRadioOptionElement; new (): HTMLIcRadioOptionElement; }; interface HTMLIcSearchBarElementEventMap { "icChange": IcValueEventDetail; "icClear": void; "icInput": IcValueEventDetail; "icOptionSelect": IcOptionSelectEventDetail; "icMenuChange": IcMenuChangeEventDetail; "icClearBlur": IcBlurEventDetail; "icRetryLoad": IcMultiValueEventDetail; "icSubmitSearch": IcValueEventDetail; "icSubmitSearchBlur": IcBlurEventDetail; "icSearchBarBlur": IcSearchBarBlurEventDetail; "icSearchBarFocus": IcValueEventDetail; "icKeydown": { event: KeyboardEvent }; } interface HTMLIcSearchBarElement extends Components.IcSearchBar, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcSearchBarElement, ev: IcSearchBarCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcSearchBarElement, ev: IcSearchBarCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcSearchBarElement: { prototype: HTMLIcSearchBarElement; new (): HTMLIcSearchBarElement; }; interface HTMLIcSectionContainerElement extends Components.IcSectionContainer, HTMLStencilElement { } var HTMLIcSectionContainerElement: { prototype: HTMLIcSectionContainerElement; new (): HTMLIcSectionContainerElement; }; interface HTMLIcSelectElementEventMap { "icBlur": void; "icChange": IcMultiValueEventDetail; "icClear": void; "icClose": void; "icFocus": void; "icInput": IcMultiValueEventDetail; "icOpen": void; "icOptionSelect": IcOptionSelectEventDetail; "icOptionDeselect": IcOptionSelectEventDetail; "icRetryLoad": IcMultiValueEventDetail; } interface HTMLIcSelectElement extends Components.IcSelect, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcSelectElement, ev: IcSelectCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcSelectElement, ev: IcSelectCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcSelectElement: { prototype: HTMLIcSelectElement; new (): HTMLIcSelectElement; }; interface HTMLIcSideNavigationElementEventMap { "icSideNavExpanded": IcExpandedDetail; } interface HTMLIcSideNavigationElement extends Components.IcSideNavigation, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcSideNavigationElement, ev: IcSideNavigationCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcSideNavigationElement, ev: IcSideNavigationCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcSideNavigationElement: { prototype: HTMLIcSideNavigationElement; new (): HTMLIcSideNavigationElement; }; interface HTMLIcSkeletonElement extends Components.IcSkeleton, HTMLStencilElement { } var HTMLIcSkeletonElement: { prototype: HTMLIcSkeletonElement; new (): HTMLIcSkeletonElement; }; interface HTMLIcSkipLinkElement extends Components.IcSkipLink, HTMLStencilElement { } var HTMLIcSkipLinkElement: { prototype: HTMLIcSkipLinkElement; new (): HTMLIcSkipLinkElement; }; interface HTMLIcStatusTagElement extends Components.IcStatusTag, HTMLStencilElement { } var HTMLIcStatusTagElement: { prototype: HTMLIcStatusTagElement; new (): HTMLIcStatusTagElement; }; interface HTMLIcStepElement extends Components.IcStep, HTMLStencilElement { } var HTMLIcStepElement: { prototype: HTMLIcStepElement; new (): HTMLIcStepElement; }; interface HTMLIcStepperElement extends Components.IcStepper, HTMLStencilElement { } var HTMLIcStepperElement: { prototype: HTMLIcStepperElement; new (): HTMLIcStepperElement; }; interface HTMLIcSwitchElementEventMap { "icBlur": void; "icChange": IcSwitchChangeEventDetail; "icFocus": void; } interface HTMLIcSwitchElement extends Components.IcSwitch, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcSwitchElement, ev: IcSwitchCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcSwitchElement, ev: IcSwitchCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcSwitchElement: { prototype: HTMLIcSwitchElement; new (): HTMLIcSwitchElement; }; interface HTMLIcTabElementEventMap { "tabClick": IcTabClickEventDetail; "tabCreated": HTMLIcTabElement; "tabEnabled": void; "tabFocus": IcTabClickEventDetail; "tabRemoved": void; } interface HTMLIcTabElement extends Components.IcTab, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcTabElement, ev: IcTabCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcTabElement, ev: IcTabCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcTabElement: { prototype: HTMLIcTabElement; new (): HTMLIcTabElement; }; interface HTMLIcTabContextElementEventMap { "icTabSelect": IcTabSelectEventDetail; } interface HTMLIcTabContextElement extends Components.IcTabContext, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcTabContextElement, ev: IcTabContextCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcTabContextElement, ev: IcTabContextCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcTabContextElement: { prototype: HTMLIcTabContextElement; new (): HTMLIcTabContextElement; }; interface HTMLIcTabGroupElement extends Components.IcTabGroup, HTMLStencilElement { } var HTMLIcTabGroupElement: { prototype: HTMLIcTabGroupElement; new (): HTMLIcTabGroupElement; }; interface HTMLIcTabPanelElementEventMap { "tabPanelCreated": HTMLIcTabPanelElement; "tabPanelRemoved": void; } interface HTMLIcTabPanelElement extends Components.IcTabPanel, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcTabPanelElement, ev: IcTabPanelCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcTabPanelElement, ev: IcTabPanelCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcTabPanelElement: { prototype: HTMLIcTabPanelElement; new (): HTMLIcTabPanelElement; }; interface HTMLIcTextFieldElementEventMap { "getValidationText": IcValueEventDetail; "icBlur": IcValueEventDetail; "icChange": IcValueEventDetail; "icFocus": IcValueEventDetail; "icInput": IcValueEventDetail; "icKeydown": { event: KeyboardEvent }; "icScroll": any; } interface HTMLIcTextFieldElement extends Components.IcTextField, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcTextFieldElement, ev: IcTextFieldCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcTextFieldElement, ev: IcTextFieldCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcTextFieldElement: { prototype: HTMLIcTextFieldElement; new (): HTMLIcTextFieldElement; }; interface HTMLIcThemeElementEventMap { "brandChange": IcBrand; "icThemeChange": IcThemeSettings; } interface HTMLIcThemeElement extends Components.IcTheme, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcThemeElement, ev: IcThemeCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcThemeElement, ev: IcThemeCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcThemeElement: { prototype: HTMLIcThemeElement; new (): HTMLIcThemeElement; }; interface HTMLIcToastElementEventMap { "icDismiss": void; } interface HTMLIcToastElement extends Components.IcToast, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcToastElement, ev: IcToastCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcToastElement, ev: IcToastCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcToastElement: { prototype: HTMLIcToastElement; new (): HTMLIcToastElement; }; interface HTMLIcToastRegionElement extends Components.IcToastRegion, HTMLStencilElement { } var HTMLIcToastRegionElement: { prototype: HTMLIcToastRegionElement; new (): HTMLIcToastRegionElement; }; interface HTMLIcToggleButtonElementEventMap { "icToggleChecked": { checked: boolean; }; } interface HTMLIcToggleButtonElement extends Components.IcToggleButton, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcToggleButtonElement, ev: IcToggleButtonCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcToggleButtonElement, ev: IcToggleButtonCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcToggleButtonElement: { prototype: HTMLIcToggleButtonElement; new (): HTMLIcToggleButtonElement; }; interface HTMLIcToggleButtonGroupElementEventMap { "icChange": IcChangeEventDetail3; } interface HTMLIcToggleButtonGroupElement extends Components.IcToggleButtonGroup, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcToggleButtonGroupElement, ev: IcToggleButtonGroupCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcToggleButtonGroupElement, ev: IcToggleButtonGroupCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcToggleButtonGroupElement: { prototype: HTMLIcToggleButtonGroupElement; new (): HTMLIcToggleButtonGroupElement; }; interface HTMLIcTooltipElement extends Components.IcTooltip, HTMLStencilElement { } var HTMLIcTooltipElement: { prototype: HTMLIcTooltipElement; new (): HTMLIcTooltipElement; }; interface HTMLIcTopNavigationElementEventMap { "icNavigationMenuClosed": void; "icNavigationMenuOpened": void; "icTopNavResized": { size: number }; } interface HTMLIcTopNavigationElement extends Components.IcTopNavigation, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcTopNavigationElement, ev: IcTopNavigationCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcTopNavigationElement, ev: IcTopNavigationCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcTopNavigationElement: { prototype: HTMLIcTopNavigationElement; new (): HTMLIcTopNavigationElement; }; interface HTMLIcTypographyElementEventMap { "typographyTruncationExpandToggle": { expanded: boolean; typographyEl: HTMLIcTypographyElement; }; } interface HTMLIcTypographyElement extends Components.IcTypography, HTMLStencilElement { addEventListener(type: K, listener: (this: HTMLIcTypographyElement, ev: IcTypographyCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLIcTypographyElement, ev: IcTypographyCustomEvent) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLIcTypographyElement: { prototype: HTMLIcTypographyElement; new (): HTMLIcTypographyElement; }; interface HTMLElementTagNameMap { "ic-accordion": HTMLIcAccordionElement; "ic-accordion-group": HTMLIcAccordionGroupElement; "ic-alert": HTMLIcAlertElement; "ic-back-to-top": HTMLIcBackToTopElement; "ic-badge": HTMLIcBadgeElement; "ic-breadcrumb": HTMLIcBreadcrumbElement; "ic-breadcrumb-group": HTMLIcBreadcrumbGroupElement; "ic-button": HTMLIcButtonElement; "ic-card-vertical": HTMLIcCardVerticalElement; "ic-checkbox": HTMLIcCheckboxElement; "ic-checkbox-group": HTMLIcCheckboxGroupElement; "ic-chip": HTMLIcChipElement; "ic-classification-banner": HTMLIcClassificationBannerElement; "ic-data-list": HTMLIcDataListElement; "ic-data-row": HTMLIcDataRowElement; "ic-dialog": HTMLIcDialogElement; "ic-divider": HTMLIcDividerElement; "ic-empty-state": HTMLIcEmptyStateElement; "ic-footer": HTMLIcFooterElement; "ic-footer-link": HTMLIcFooterLinkElement; "ic-footer-link-group": HTMLIcFooterLinkGroupElement; "ic-hero": HTMLIcHeroElement; "ic-horizontal-scroll": HTMLIcHorizontalScrollElement; "ic-input-component-container": HTMLIcInputComponentContainerElement; "ic-input-container": HTMLIcInputContainerElement; "ic-input-label": HTMLIcInputLabelElement; "ic-input-validation": HTMLIcInputValidationElement; "ic-link": HTMLIcLinkElement; "ic-loading-indicator": HTMLIcLoadingIndicatorElement; "ic-menu": HTMLIcMenuElement; "ic-menu-group": HTMLIcMenuGroupElement; "ic-menu-item": HTMLIcMenuItemElement; "ic-navigation-button": HTMLIcNavigationButtonElement; "ic-navigation-group": HTMLIcNavigationGroupElement; "ic-navigation-item": HTMLIcNavigationItemElement; "ic-navigation-menu": HTMLIcNavigationMenuElement; "ic-page-header": HTMLIcPageHeaderElement; "ic-pagination": HTMLIcPaginationElement; "ic-pagination-item": HTMLIcPaginationItemElement; "ic-popover-menu": HTMLIcPopoverMenuElement; "ic-radio-group": HTMLIcRadioGroupElement; "ic-radio-option": HTMLIcRadioOptionElement; "ic-search-bar": HTMLIcSearchBarElement; "ic-section-container": HTMLIcSectionContainerElement; "ic-select": HTMLIcSelectElement; "ic-side-navigation": HTMLIcSideNavigationElement; "ic-skeleton": HTMLIcSkeletonElement; "ic-skip-link": HTMLIcSkipLinkElement; "ic-status-tag": HTMLIcStatusTagElement; "ic-step": HTMLIcStepElement; "ic-stepper": HTMLIcStepperElement; "ic-switch": HTMLIcSwitchElement; "ic-tab": HTMLIcTabElement; "ic-tab-context": HTMLIcTabContextElement; "ic-tab-group": HTMLIcTabGroupElement; "ic-tab-panel": HTMLIcTabPanelElement; "ic-text-field": HTMLIcTextFieldElement; "ic-theme": HTMLIcThemeElement; "ic-toast": HTMLIcToastElement; "ic-toast-region": HTMLIcToastRegionElement; "ic-toggle-button": HTMLIcToggleButtonElement; "ic-toggle-button-group": HTMLIcToggleButtonGroupElement; "ic-tooltip": HTMLIcTooltipElement; "ic-top-navigation": HTMLIcTopNavigationElement; "ic-typography": HTMLIcTypographyElement; } } declare namespace LocalJSX { interface IcAccordion { /** * If `true`, the accordion will be disabled. */ "disabled"?: boolean; /** * If `true`, the accordion appears expanded. */ "expanded"?: boolean; /** * The section header outlining section content. */ "heading"?: string; /** * The main body message of the accordion. */ "message"?: string; /** * The size of the accordion. */ "size"?: IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcAccordionGroup { /** * The accessible button label to provide more context to the 'See all/Hide all' button for screen reader users. */ "accessibleButtonLabel"?: string; /** * If `true`, the accordion will load in an expanded state. */ "expanded"?: boolean; /** * The header for the accordion group. */ "label"?: string; /** * If `true`, only one accordion will open at a time. */ "singleExpansion"?: boolean; /** * The size of the accordion. */ "size"?: IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcAlert { /** * If `true`, the alert will have the 'alert' ARIA role and will be announced to screen readers. */ "announced"?: boolean; /** * If `true`, the alert will have a close icon at the end to dismiss it. */ "dismissible"?: boolean; /** * The optional title to display at the start of the alert. */ "heading"?: string; /** * The main body message of the alert. */ "message"?: string; /** * Is emitted when the user dismisses the alert. */ "onIcDismiss"?: (event: IcAlertCustomEvent) => void; /** * If `true`, the default icon for the neutral variant will appear on the left of the alert. */ "showDefaultIcon"?: boolean; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * If `true`, the title and message will appear above and below instead of inline. */ "titleAbove"?: boolean; /** * The variant of the alert which will be rendered. */ "variant"?: IcStatusVariants; } interface IcBackToTop { /** * The horizontal position of the element. */ "position"?: IcBackToTopPositions; /** * The ID of the element to jump back to when the link is clicked. */ "target": string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The variant of the button to render */ "variant"?: IcBackToTopVariants; } interface IcBadge { /** * The accessible label of the badge component to provide context for screen reader users. */ "accessibleLabel"?: string; /** * The custom badge colour. This will only style the badge component if variant="custom". Can be a hex value e.g. "#ff0000", RGB e.g. "rgb(255, 0, 0)", or RGBA e.g. "rgba(255, 0, 0, 1)". */ "customColor"?: IcColor; /** * The text displayed in the badge. This will only be displayed if type="text". */ "label"?: string; /** * The maximum number shown on the badge appended with a +. This will only be displayed if type="text" and label is not empty. */ "maxNumber"?: number; /** * The positioning of the badge in reference to the parent element. */ "position"?: IcBadgePositions; /** * The size of the badge to be displayed. */ "size"?: IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The type of badge to be displayed. */ "type"?: IcBadgeTypes; /** * The variant of the badge to be displayed. */ "variant"?: IcBadgeVariants; /** * If `true`, the badge will be displayed. */ "visible"?: boolean; } interface IcBreadcrumb { /** * If `true`, aria-current will be set on the breadcrumb. */ "current"?: boolean; /** * The URL that the breadcrumb link points to. */ "href"?: string; /** * The title of the breadcrumb. */ "pageTitle": string; } interface IcBreadcrumbGroup { /** * If `true`, display only a single breadcrumb for the parent page with a back icon. */ "backBreadcrumbOnly"?: boolean; /** * If `true`, all breadcrumbs between the first and last breadcrumb will be collapsed. */ "collapsed"?: boolean; /** * If `true`, the breadcrumb group will display as black in the light theme, and white in the dark theme. */ "monochrome"?: boolean; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcButton { /** * If `fileUpload` is set to `true`, this is the accepted list of file types. */ "accept"?: string; /** * If `true`, the ic-tooltip which is shown for icon variant will be disabled. Title or aria-label must be set if this prop is not applied. */ "disableTooltip"?: boolean; /** * If `true`, the button will be in disabled state. */ "disabled"?: boolean; /** * If `true`, the user can save the linked URL instead of navigating to it. */ "download"?: string | boolean; /** * If `true`, the button will show a dropdown icon. */ "dropdown"?: boolean; /** * If `true`, the aria-expanded value will be set to true. This is only applied if the dropdown prop is also true. */ "dropdownExpanded"?: boolean; /** * The name of the control for the file input, which is submitted with the form data. */ "fileInputName"?: string; /** * If `true`, when the button is clicked the native file explorer will be launched. */ "fileUpload"?: boolean; /** * The element to associate the button with. */ "form"?: string; /** * The URL that processes the information submitted by the button. It overrides the action attribute of the button's form owner. Does nothing if there is no form owner. */ "formaction"?: string; /** * The way the submitted form data is encoded. */ "formenctype"?: string; /** * The HTTP method used to submit the form. */ "formmethod"?: string; /** * If `true`, the form will not be validated when submitted. */ "formnovalidate"?: boolean; /** * The place to display the response from submitting the form. It overrides the target attribute of the button's form owner. */ "formtarget"?: string; /** * If `true`, the button will fill the width of the container. */ "fullWidth"?: boolean; /** * The URL that the link points to. This will render the button as an "a" tag. */ "href"?: string; /** * The human language of the linked URL. */ "hreflang"?: string; /** * If `true`, the button will be in loading state. */ "loading"?: boolean; /** * If `true`, the button will display as monochromatic in either `light` or `dark` theme. */ "monochrome"?: boolean; /** * If `fileUpload` is set to `true`, this boolean determines whether multiple files are accepted. */ "multiple"?: boolean; /** * Emitted when button has blur */ "onIcBlur"?: (event: IcButtonCustomEvent) => void; /** * If `fileUpload` is set to `true`, this will be emitted when a file is selected in the native explorer. */ "onIcFileSelection"?: (event: IcButtonCustomEvent) => void; /** * Emitted when button has focus */ "onIcFocus"?: (event: IcButtonCustomEvent) => void; /** * How much of the referrer to send when following the link. */ "referrerpolicy"?: ReferrerPolicy; /** * The relationship of the linked URL as space-separated link types. */ "rel"?: string; /** * The list of the files that have been selected by a user. */ "selectedFiles"?: FileList; /** * The size of the button to be displayed. */ "size"?: IcSizes; /** * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe). */ "target"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The position of the tooltip in relation to the button. */ "tooltipPlacement"?: IcButtonTooltipPlacement; /** * If `true`, the secondary & tertiary variants of button will have a transparent background when not hovered, pressed or loading. */ "transparentBackground"?: boolean; /** * The type of the button. */ "type"?: IcButtonTypes; /** * The variant of the button to be displayed. */ "variant"?: IcButtonVariants; } interface IcCardVertical { /** * If `true`, the card will be a clickable variant, instead of static. */ "clickable"?: boolean; /** * If `true`, the card will be disabled if it is clickable. */ "disabled"?: boolean; /** * If `true`, the card will have an expandable area and expansion toggle button. */ "expandable"?: boolean; /** * If `true`, the card will fill the width of the container. */ "fullWidth"?: boolean; /** * The heading for the card. This is required, unless a slotted heading is used. */ "heading"?: string; /** * The URL that the clickable card link points to. If set, the clickable card will render as an "a" tag, otherwise it will render as a button. */ "href"?: string; /** * The human language of the linked URL. */ "hreflang"?: string; /** * The main body message of the card. */ "message"?: string; /** * How much of the referrer to send when following the link. */ "referrerpolicy"?: ReferrerPolicy; /** * The relationship of the linked URL as space-separated link types. */ "rel"?: string; /** * The subheading for the card. */ "subheading"?: string; /** * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe). */ "target"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcCheckbox { /** * The style of additionalField that will be displayed if used. */ "additionalFieldDisplay"?: IcAdditionalFieldTypes; /** * If `true`, the checkbox will be set to the checked state. This is only the initial state and will be updated to unchecked if the checkbox is clicked. */ "checked"?: boolean; /** * If `true`, the checkbox will be set to the disabled state. */ "disabled"?: boolean; /** * The text to be displayed when dynamic. */ "dynamicText"?: string; /** * The element to associate the checkbox with. */ "form"?: string; /** * The group label for the checkbox. */ "groupLabel"?: string; /** * If `true`, the label will be hidden and the required label value will be applied as an aria-label. */ "hideLabel"?: boolean; /** * If `true`, the indeterminate state will be displayed when checked. */ "indeterminate"?: boolean; /** * The label for the checkbox. */ "label": string; /** * The name for the checkbox. If not set when used in a checkbox group, the name will be based on the group name. */ "name"?: string; /** * If `true`, the checkbox will behave like a native checkbox where the `indeterminate` prop sets the indeterminate visual styling, independent of the `checked` state. */ "nativeIndeterminateBehaviour"?: boolean; /** * Emitted when a checkbox has been checked. */ "onIcCheck"?: (event: IcCheckboxCustomEvent) => void; /** * The size of the checkbox to be displayed. This does not affect the font size of the label. If a checkbox is contained in a checkbox group, this will override the size set on checkbox group. */ "size"?: IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The value for the checkbox. */ "value"?: string; } interface IcCheckboxGroup { /** * If `true`, the checkbox group will be set to the disabled state. */ "disabled"?: boolean; /** * The helper text that will be displayed for additional field guidance. */ "helperText"?: string; /** * If `true`, the label will be hidden and the required label value will be applied as an aria-label. */ "hideLabel"?: boolean; /** * The label for the checkbox group to be displayed. */ "label": string; /** * The name for the checkbox group to differentiate from other groups. */ "name": string; /** * Emitted when a checkbox is checked. */ "onIcChange"?: (event: IcCheckboxGroupCustomEvent) => void; /** * If `true`, the checkbox group will require a value. */ "required"?: boolean; /** * The size of the checkboxes to be displayed. This does not affect the font size of the label. */ "size"?: IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The validation status - e.g. 'error' | 'warning' | 'success'. */ "validationStatus"?: IcInformationStatusOrEmpty; /** * The text to display as the validation message. */ "validationText"?: string; } interface IcChip { /** * The custom chip colour. This will override the theme colour. Can be a hex value e.g. "#ff0000", RGB e.g. "rgb(255, 0, 0)", or RGBA e.g. "rgba(255, 0, 0, 1)". */ "customColor"?: IcColor; /** * If `true`, the chip will appear disabled. */ "disabled"?: boolean; /** * The text in the dismiss button tooltip and aria label. Makes the user aware of the action resulting from clicking the 'Dismiss chip' button. */ "dismissLabel"?: string; /** * If `true`, the chip will have a close button at the end to dismiss it. */ "dismissible"?: boolean; /** * The text rendered within the chip. */ "label": string; /** * Is emitted when the user dismisses the chip. */ "onIcDismiss"?: (event: IcChipCustomEvent) => void; /** * The size of the chip. */ "size"?: IcSizes; /** * Sets the chip to the dark or light theme colors. "inherit" will set the color based on the system settings or ic-theme component. Setting the "customColor" prop will override this. */ "theme"?: IcThemeMode; /** * If `true`, the outlined variant of chip will have a transparent background rather than the theme defined color. */ "transparentBackground"?: boolean; /** * The emphasis of the chip. */ "variant"?: IcEmphasisType; } interface IcClassificationBanner { /** * The additional information that will be displayed after the classification. */ "additionalSelectors"?: string; /** * The classification level to be displayed - also determines the banner and text colour. */ "classification"?: IcProtectiveMarkings; /** * The optional text that will be displayed before classification to specify relevant country/countries. */ "country"?: string; /** * If `true`, the banner will appear inline with the page, instead of sticking to the bottom of the page. */ "inline"?: boolean; /** * If `true`, "Up to" will be displayed before the classification and country. */ "upTo"?: boolean; } interface IcDataList { /** * The title for the data list. */ "heading"?: string; /** * The size of the data list component. */ "size"?: IcSizesNoLarge; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcDataRow { /** * The label in the leftmost cell of the row. */ "label"?: string; /** * The size of the data row component. */ "size"?: IcSizesNoLarge; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The value of the middle (right if no end-component supplied) cell of the row. */ "value"?: string; } interface IcDialog { /** * If set to `false`, the dialog will not close when the backdrop is clicked. */ "closeOnBackdropClick"?: boolean; /** * If 'true', sets the 'primary' or rightmost button to the destructive variant. Stops initial focus being set on the 'primary' or rightmost default or slotted button. */ "destructive"?: boolean; /** * If set to `true`, the content area max height and overflow properties are removed allowing the dialog to stretch below the fold. This prop also prevents popover elements from being cut off within the content area. */ "disableHeightConstraint"?: boolean; /** * If set to `true`, the content area width property is removed, allowing content to take the full width of the dialog when using the large variant. */ "disableWidthConstraint"?: boolean; /** * Sets the dismiss label tooltip and aria label. */ "dismissLabel"?: string; /** * Sets the heading for the dialog. */ "heading"?: string; /** * If `true`, the close button will not be displayed. */ "hideCloseButton"?: boolean; /** * If set to `true`, default button controls will not be shown, but slotted dialog controls will still be displayed. */ "hideDefaultControls"?: boolean; /** * Sets the optional label for the dialog which appears above the heading. */ "label"?: string; /** * Cancelation event emitted when default 'Cancel' button clicked or 'cancelDialog' method is called. */ "onIcDialogCancelled"?: (event: IcDialogCustomEvent) => void; /** * Emitted when dialog has closed. */ "onIcDialogClosed"?: (event: IcDialogCustomEvent) => void; /** * Confirmation event emitted when default 'Confirm' primary button clicked or 'confirmDialog' method is called. */ "onIcDialogConfirmed"?: (event: IcDialogCustomEvent) => void; /** * Emitted when dialog has opened. */ "onIcDialogOpened"?: (event: IcDialogCustomEvent) => void; /** * If `true`, the dialog will be displayed. */ "open"?: boolean; /** * Sets the maximum and minimum height and width for the dialog. */ "size"?: "small" | "medium" | "large"; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcDivider { /** * The line style of the divider. */ "borderStyle"?: IcDividerStyles; /** * The label for the divider. The label placement will need to be set for the label to be displayed correctly. */ "label"?: string; /** * The position the label is placed on the divider. `Left` and `right` placement is only applicable when orientation is set to `horizontal`. `Top` and `bottom` placement is only applicable when orientation is set to `vertical`. `Center` placement is applicable for both orientations. */ "labelPlacement"?: IcDividerLabelPlacement; /** * If `true`, the divider will be displayed in a grey colour. */ "monochrome"?: boolean; /** * The orientation of the divider. */ "orientation"?: IcOrientation; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode | IcBrandForeground; /** * The thickness of the divider. */ "weight"?: IcDividerWeights; } interface IcEmptyState { /** * The alignment of the empty state container. */ "aligned"?: IcEmptyStateAlignment; /** * The body text rendered in the empty state container. */ "body"?: string; /** * The title rendered in the empty state container. */ "heading"?: string; /** * The size of the image or icon used in the image slot. */ "imageSize"?: IcSizes; /** * The number of lines of body text to display before truncating. */ "maxLines"?: number; /** * The subtitle rendered in the empty state container. */ "subheading"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcFooter { /** * The alignment of the section containers used within the footer. */ "aligned"?: IcAlignment; /** * The screen size breakpoint at which to switch to the small layout. */ "breakpoint"?: IcFooterBreakpoints; /** * The caption displayed at the bottom of the footer. */ "caption"?: string; /** * If `true`, the footer will display the crown copyright at the bottom. */ "copyright"?: boolean; /** * The description displayed at the top of the footer. */ "description"?: string; /** * If `true`, the footer will be set up to handle link groups instead of standalone links. */ "groupLinks"?: boolean; } interface IcFooterLink { /** * If `true`, the user can save the linked URL instead of navigating to it. */ "download"?: string | boolean; /** * The URL that the link points to. */ "href"?: string; /** * The human language of the linked URL. */ "hreflang"?: string; /** * How much of the referrer to send when following the link. */ "referrerpolicy"?: ReferrerPolicy; /** * The relationship of the linked URL as space-separated link types. */ "rel"?: string; /** * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe). */ "target"?: string; } interface IcFooterLinkGroup { /** * The title of the link group to be displayed. */ "label": string; } interface IcHero { /** * The alignment of the hero. */ "aligned"?: IcAlignment; /** * The optional background image. */ "backgroundImage"?: string; /** * The alignment of the hero content. */ "contentAligned"?: IcHeroContentAlignments; /** * If `true`, the background image (if set) will not scroll using a parallax effect. */ "disableBackgroundParallax"?: boolean; /** * The heading of the hero. An

level heading. */ "heading"?: string; /** * The optional secondary heading, an

level heading. Replaced by slotted right content. */ "secondaryHeading"?: string; /** * The optional secondary subheading, replaced by slotted right content. */ "secondarySubheading"?: string; /** * The size of the hero component. */ "size"?: IcSizesNoLarge; /** * The description for the hero. */ "subheading"?: string; } interface IcHorizontalScroll { /** * The appearance of the horizontal scroll, e.g. dark, light or the default. */ "appearance"?: IcBrandForeground; } interface IcInputComponentContainer { /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * If `true`, the input component container will fill the width of the container it is in. */ "fullWidth"?: boolean; /** * If `true`, the input component container will allow for multiple lines. */ "multiLine"?: boolean; /** * If `true`, the readonly state will be set. */ "readonly"?: boolean; /** * The size of the input component container component. */ "size"?: IcSizes; /** * If `true`, the validation will display inline. */ "validationInline"?: boolean; /** * The validation status of the input component container - e.g. 'error' | 'warning' | 'success'. */ "validationStatus"?: IcInformationStatusOrEmpty; } interface IcInputContainer { /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * If `true`, the readonly state will be set. */ "readonly"?: boolean; } interface IcInputLabel { /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * The ID of the form element the label is bound to. */ "for"?: string; /** * The helper text that will be displayed. */ "helperText"?: string; /** * The label will be visually hidden. */ "hideLabel"?: boolean; /** * The text content of the label. */ "label": string; /** * If `true`, the readonly state will be set. */ "readonly"?: boolean; /** * If `true`, the input label will require a value. */ "required"?: boolean; /** * The status of the label - e.g. 'error'. */ "status"?: "error" | ""; } interface IcInputValidation { /** * The ARIA live mode to apply to the message. */ "ariaLiveMode"?: IcAriaLiveModeVariants; /** * The ID of the form element the validation is bound to. */ "for"?: string; /** * If `true`, the input validation will fill the width of the container. */ "fullWidth"?: boolean; /** * The validation message to display. */ "message": string; /** * The status of the validation - e.g. 'error' | 'warning' | 'success'. */ "status"?: IcInformationStatusOrEmpty; } interface IcLink { /** * If `true`, the user can save the linked URL instead of navigating to it. If the value is a string, it will be used as the filename for the download. */ "download"?: string | boolean; /** * The URL that the link points to. */ "href"?: string; /** * The human language of the linked URL. */ "hreflang"?: string; /** * If `true`, the link will display as black in the light theme, and white in the dark theme. */ "monochrome"?: boolean; /** * How much of the referrer to send when following the link. */ "referrerpolicy"?: ReferrerPolicy; /** * The relationship of the linked URL as space-separated link types. */ "rel"?: string; /** * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe). */ "target"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcLoadingIndicator { /** * The description that will be set as the aria-label of the loading indicator when not using a visible label. */ "description"?: string; /** * If `true`, when linear, the full-width variant (i.e. without a border radius) will be displayed. */ "fullWidth"?: boolean; /** * The label to be displayed beneath the loading indicator. Display a changing label by supplying an array of messages. */ "label"?: string | string[]; /** * The time in milliseconds before the label changes. */ "labelDuration"?: number; /** * The maximum value that the progress value can take. Used to calculate the proportional width of the progress bar. */ "max"?: number; /** * The minimum value that the progress value can take. Used to calculate the proportional width of the progress bar. */ "min"?: number; /** * If `true`, the element will display as black and white. */ "monochrome"?: boolean; /** * The current amount of progress made. If not provided, component acts as an indeterminate loading indicator. */ "progress"?: number; /** * The size of the loading indicator. */ "size"?: IcLoadingSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The type of indicator, either linear or circular. */ "type"?: IcLoadingTypes; } interface IcMenu { /** * Determines whether options manually set as values (by pressing 'Enter') when they receive focus using keyboard navigation. */ "activationType"?: IcActivationTypes; /** * The reference to an anchor element the menu will position itself from when rendered. */ "anchorEl"?: HTMLElement; /** * If `true`, the menu will close when an option is selected. */ "closeOnSelect"?: boolean; /** * If `true`, the menu will fill the width of the container. */ "fullWidth"?: boolean; /** * The reference to the input element. */ "inputEl"?: HTMLElement; /** * The label for the input element. */ "inputLabel": string; /** * The custom name for the label field for IcMenuOption. */ "labelField"?: string; /** * The ID of the menu. */ "menuId": string; /** * Emitted when the clear all button is clicked. */ "onIcClear"?: (event: IcMenuCustomEvent) => void; /** * If `true`, the menu will be displayed open. */ "open": boolean; /** * The possible menu selection options. */ "options": IcMenuOption[]; /** * Specify the mode search bar uses to search. `navigation` allows for quick lookups of a set of values, `query` allows for more general searches. */ "searchMode"?: IcSearchBarSearchModes; /** * The size of the menu. */ "size"?: IcSizes; /** * The value of the currently selected option - or array of values (if multiple options allowed). */ "value": string | string[]; /** * The custom name for the value field for IcMenuOption. */ "valueField"?: string; } interface IcMenuGroup { /** * The label to display as the title of the menu group. */ "label"?: string; } interface IcMenuItem { /** * If `true`, the menu item will be in a checked state. This is only applicable when variant is set to `toggle`. */ "checked"?: boolean; /** * The description displayed in the menu item, below the label. */ "description"?: string; /** * If `true`, the menu item will be in disabled state. */ "disabled"?: boolean; /** * The URL that the link points to. This will render the menu item as an "a" tag. */ "href"?: string; /** * The human language of the linked URL. */ "hreflang"?: string; /** * The label describing the keyboard shortcut for a menu item's action. */ "keyboardShortcutLabel"?: string; /** * The label to display in the menu item. */ "label": string; /** * Emitted when the user clicks a menu item that is set to the toggle variant. */ "onIcToggleChecked"?: (event: IcMenuItemCustomEvent<{ checked: boolean; }>) => void; /** * How much of the referrer to send when following the link. */ "referrerpolicy"?: ReferrerPolicy; /** * The relationship of the linked URL as space-separated link types. */ "rel"?: string; /** * This references the popover menu instance that the menu item is a trigger for. If this prop is set, then the variant will always be default. */ "submenuTriggerFor"?: string; /** * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe). */ "target"?: string; /** * The variant of the menu item. */ "variant"?: IcMenuItemVariants; } interface IcNavigationButton { /** * If `true`, the user can save the linked URL instead of navigating to it. */ "download"?: string | boolean; /** * The URL that the link points to. This will render the button as an "a" tag. */ "href"?: string; /** * The human language of the linked URL. */ "hreflang"?: string; /** * The label info to display. */ "label": string; /** * How much of the referrer to send when following the link. */ "referrerpolicy"?: ReferrerPolicy; /** * The relationship of the linked URL as space-separated link types. */ "rel"?: string; /** * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe). */ "target"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcNavigationGroup { /** * If `true`, the group will be expandable when in an ic-side-navigation component, or, when in an ic-top-navigation component, in the side menu displayed at small screen sizes. */ "expandable"?: boolean; /** * If `true`, the expandable group will be expanded by default when in an ic-side-navigation component. To enable this prop, `expandable` must also be set to `true`. */ "expanded"?: boolean; /** * The label to display on the group. */ "label": string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcNavigationItem { /** * If `true`, the user can save the linked URL instead of navigating to it. */ "download"?: string | boolean; /** * The destination of the navigation item. */ "href"?: string; /** * The human language of the linked URL. */ "hreflang"?: string; /** * The label of the navigation item. */ "label"?: string; /** * How much of the referrer to send when following the link. */ "referrerpolicy"?: ReferrerPolicy; /** * The relationship of the linked URL as space-separated link types. */ "rel"?: string; /** * If `true`, the navigation item will be set in a selected state. */ "selected"?: boolean; /** * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe). */ "target"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcNavigationMenu { /** * The status info to display. */ "status"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The version info to display. */ "version"?: string; } interface IcPageHeader { /** * The alignment of the page header. */ "aligned"?: IcAlignment; /** * If `true`, a border will be displayed along the bottom of the page header. */ "border"?: boolean; /** * The title to render on the page header. */ "heading"?: string; /** * If `true`, the reading pattern and tab order will change in the action area for viewport widths of above 576px and when actions have not wrapped. */ "reverseOrder"?: boolean; /** * The size of the page header component. */ "size"?: IcSizesNoLarge; /** * If `true`, the page header will be sticky at all breakpoints. */ "sticky"?: boolean; /** * If `true`, the page header will only be sticky for viewport widths of 992px and above. */ "stickyDesktopOnly"?: boolean; /** * The subtitle to render on the page header. */ "subheading"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcPagination { /** * The number of pages displayed adjacent to the current page when using 'complex' type pagination. Accepted values are 0, 1 & 2. */ "adjacentPageCount"?: number; /** * The number of pages displayed as boundary items to the current page when using 'complex' type pagination. Accepted values are 0, 1 & 2. */ "boundaryPageCount"?: number; /** * The current page displayed by the pagination. */ "currentPage"?: number; /** * The default page to display. */ "defaultPage"?: number; /** * If `true`, the pagination will not allow interaction. */ "disabled"?: boolean; /** * If `true`, the current page of the simple pagination will not be displayed. */ "hideCurrentPage"?: boolean; /** * If `true`, the first and last page buttons will not be displayed. */ "hideFirstAndLastPageButton"?: boolean; /** * The label for the pagination item (applicable when simple pagination is being used). */ "label"?: string; /** * If `true`, the pagination will display as black in the light theme, and white in dark theme. */ "monochrome"?: boolean; /** * Emitted when a page is selected. */ "onIcPageChange"?: (event: IcPaginationCustomEvent) => void; /** * The total number of pages. */ "pages": number; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The type of pagination to be used. */ "type"?: IcPaginationTypes; } interface IcPaginationItem { /** * If `true`, the pagination item will be disabled. */ "disabled"?: boolean; /** * The label for the pagination item (applicable when simple pagination is being used). */ "label"?: string; /** * If `true`, the pagination item will display as black in the light theme, and white in dark theme. */ "monochrome"?: boolean; /** * The current page number. */ "page"?: number; /** * If `true`, the pagination item will be selected. */ "selected"?: boolean; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The type of pagination item - 'page' or 'ellipsis'. */ "type"?: IcPaginationItemType; } interface IcPopoverMenu { /** * The ID of the element the popover menu will anchor itself to. This is required unless the popover is a submenu. */ "anchor"?: string; /** * Emitted when the popover menu is closed. */ "onIcPopoverClosed"?: (event: IcPopoverMenuCustomEvent) => void; /** * If `true`, the popover menu will be displayed. */ "open"?: boolean | undefined; /** * The unique identifier for a popover submenu. */ "submenuId"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcRadioGroup { /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * The helper text that will be displayed for additional field guidance. */ "helperText"?: string; /** * If `true`, the label will be hidden and the required label value will be applied as an aria-label. */ "hideLabel"?: boolean; /** * The label for the radio group to be displayed. */ "label": string; /** * The name for the radio group to differentiate from other groups. */ "name": string; /** * Emitted when a user selects a radio. */ "onIcChange"?: (event: IcRadioGroupCustomEvent) => void; /** * The orientation of the radio buttons in the radio group. If there are more than two radio buttons in a radio group or either of the radio buttons use the `additional-field` slot, then the orientation will always be vertical. */ "orientation"?: IcOrientation; /** * If `true`, the radio group will require a value. */ "required"?: boolean; /** * The size of the radio group component. */ "size"?: IcSizesNoLarge; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The validation status - e.g. 'error' | 'warning' | 'success'. */ "validationStatus"?: IcInformationStatusOrEmpty; /** * The text to display as the validation message. */ "validationText"?: string; } interface IcRadioOption { /** * The style of additionalField that will be displayed if used. */ "additionalFieldDisplay"?: IcAdditionalFieldTypes; /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * The text to be displayed when dynamic. */ "dynamicText"?: string; /** * The element to associate the radio with. */ "form"?: string; /** * The group label for the radio option. */ "groupLabel"?: string; /** * The label for the radio option. */ "label"?: string; /** * The name for the radio option. */ "name"?: string; /** * Emitted when the radio option is selected. */ "onIcCheck"?: (event: IcRadioOptionCustomEvent) => void; /** * Emitted when the radio option is selected or deselected. */ "onIcSelectedChange"?: (event: IcRadioOptionCustomEvent) => void; /** * If `true`, the radio option will be displayed in a selected state. */ "selected"?: boolean; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The value for the radio option. */ "value": string; } interface IcSearchBar { /** * The hint text for the hidden assistive description element. */ "assistiveHintText"?: string; /** * The automatic capitalisation of the text value as it is entered/edited by the user. Available options: "off", "none", "on", "sentences", "words", "characters". */ "autocapitalize"?: string; /** * The state of autocompletion the browser can apply on the text value. */ "autocomplete"?: IcAutocompleteTypes; /** * The state of autocorrection the browser can apply when the user is entering/editing the text value. */ "autocorrect"?: IcAutocorrectStates; /** * If `true`, the form control will have input focus when the page loads. */ "autofocus"?: boolean; /** * The number of characters until suggestions appear. The submit button will be disabled until the inputted value is equal to or greater than this number. */ "charactersUntilSuggestion"?: number; /** * The amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke. */ "debounce"?: number; /** * Specify whether to disable the built in filtering. For example, if options will already be filtered from external source. If `true`, all options provided will be displayed. */ "disableAutoFiltering"?: boolean; /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * The text displayed when there are no options in the option list. */ "emptyOptionListText"?: string; /** * If `true`, the search bar will be focused when component loaded. */ "focusOnLoad"?: boolean; /** * Specify whether the search bar fills the full width of the container. If `true`, this overrides the --input-width CSS variable. */ "fullWidth"?: boolean; /** * The helper text that will be displayed for additional field guidance. */ "helperText"?: string; /** * If `true`, the label will be hidden and the required label value will be applied as an aria-label. */ "hideLabel"?: boolean; /** * The label for the search bar. */ "label": string; /** * The custom name for the label field to correspond with the IcMenuOption type. */ "labelField"?: string; /** * Trigger loading state when fetching options asynchronously */ "loading"?: boolean; /** * Change the message displayed when external loading times out. */ "loadingErrorLabel"?: string; /** * Change the message displayed whilst the options are being loaded externally. */ "loadingLabel"?: string; /** * The name of the control, which is submitted with the form data. */ "name"?: string; /** * Emitted when the value has changed. */ "onIcChange"?: (event: IcSearchBarCustomEvent) => void; /** * Emitted when value is cleared with clear button */ "onIcClear"?: (event: IcSearchBarCustomEvent) => void; /** * Emitted when a keyboard input occurred. */ "onIcInput"?: (event: IcSearchBarCustomEvent) => void; /** * Emitted when a keydown event occurred. */ "onIcKeydown"?: (event: IcSearchBarCustomEvent<{ event: KeyboardEvent }>) => void; /** * Emitted when the state of the menu changes (i.e. open or close) */ "onIcMenuChange"?: (event: IcSearchBarCustomEvent) => void; /** * Emitted when option is highlighted within the menu */ "onIcOptionSelect"?: (event: IcSearchBarCustomEvent) => void; /** * Emitted when the 'retry loading' button is clicked */ "onIcRetryLoad"?: (event: IcSearchBarCustomEvent) => void; /** * Emitted when blur is invoked from ic-search-bar */ "onIcSearchBarBlur"?: (event: IcSearchBarCustomEvent) => void; /** * Emitted when focus is invoked from ic-search-bar */ "onIcSearchBarFocus"?: (event: IcSearchBarCustomEvent) => void; /** * Emitted when the search value has been submitted */ "onIcSubmitSearch"?: (event: IcSearchBarCustomEvent) => void; /** * The suggested search options. */ "options"?: IcMenuOption[]; /** * The placeholder value to display. */ "placeholder"?: string; /** * If `true` the parent form will not submit when the icSubmitSearch event fires. */ "preventFormSubmitOnSearch"?: boolean; /** * If `true`, the readonly state will be set. */ "readonly"?: boolean; /** * If `true`, the search bar will require a value. */ "required"?: boolean; /** * Specify the mode search bar uses to search. `navigation` allows for quick lookups of a set of values, `query` allows for more general searches. */ "searchMode"?: IcSearchBarSearchModes; /** * The size of the search bar component. */ "size"?: IcSizesNoLarge; /** * If `true`, the value of the search will have its spelling and grammar checked. */ "spellcheck"?: boolean; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * If using external filtering, set a timeout for when loading takes too long. */ "timeout"?: number; /** * The value of the search input. */ "value"?: string; /** * The custom name for the value field to correspond with the IcMenuOption type. */ "valueField"?: string; } interface IcSectionContainer { /** * The alignment of the container. */ "aligned"?: IcAlignment; /** * If `true`, the standard vertical padding from the container will be removed. */ "fullHeight"?: boolean; } interface IcSelect { /** * The amount of time, in milliseconds, to wait to trigger the `icInput` event after each keystroke. */ "debounce"?: number; /** * If `true`, the built in filtering will be disabled for a searchable variant. For example, if options will already be filtered from external source. */ "disableAutoFiltering"?: boolean; /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * The text displayed when there are no options in the option list. */ "emptyOptionListText"?: string; /** * The element to associate the select with. */ "form"?: string; /** * If `true`, the select will fill the width of the container. */ "fullWidth"?: boolean; /** * The helper text that will be displayed for additional field guidance. */ "helperText"?: string; /** * If `true`, the label will be hidden and the required label value will be applied as an aria-label. */ "hideLabel"?: boolean; /** * If `true`, descriptions of options will be included when filtering options in a searchable select. Only applies to built in filtering. */ "includeDescriptionsInSearch"?: boolean; /** * If `true`, group titles of grouped options will be included when filtering options in a searchable select. Only applies to built in filtering. */ "includeGroupTitlesInSearch"?: boolean; /** * The label for the select. */ "label": string; /** * If `true`, the loading state will be triggered when fetching options asynchronously. */ "loading"?: boolean; /** * The message displayed when external loading times out. */ "loadingErrorLabel"?: string; /** * The message displayed whilst the options are being loaded externally. */ "loadingLabel"?: string; /** * If `true`, multiple options can be selected. */ "multiple"?: boolean; /** * The name of the control, which is submitted with the form data. */ "name"?: string; /** * Emitted when the select loses focus. */ "onIcBlur"?: (event: IcSelectCustomEvent) => void; /** * Emitted when the value changes. */ "onIcChange"?: (event: IcSelectCustomEvent) => void; /** * Emitted when the clear or clear all button is clicked. */ "onIcClear"?: (event: IcSelectCustomEvent) => void; /** * Emitted when the select options menu is closed. */ "onIcClose"?: (event: IcSelectCustomEvent) => void; /** * Emitted when the select gains focus. */ "onIcFocus"?: (event: IcSelectCustomEvent) => void; /** * Emitted when a keyboard input occurred. */ "onIcInput"?: (event: IcSelectCustomEvent) => void; /** * Emitted when the select options menu is opened. */ "onIcOpen"?: (event: IcSelectCustomEvent) => void; /** * Emitted when `multiple` is `true` and an option is deselected. */ "onIcOptionDeselect"?: (event: IcSelectCustomEvent) => void; /** * Emitted when an option is selected. Selecting an option will also trigger an `icChange/onIcChange` due to the value being updated. */ "onIcOptionSelect"?: (event: IcSelectCustomEvent) => void; /** * Emitted when the 'retry loading' button is clicked for a searchable variant. */ "onIcRetryLoad"?: (event: IcSelectCustomEvent) => void; /** * The possible selection options. */ "options"?: IcMenuOption[]; /** * The placeholder value to be displayed. */ "placeholder"?: string; /** * If `true`, the readonly state will be set. */ "readonly"?: boolean; /** * If `true`, the select will require a value. */ "required"?: boolean; /** * Whether the search string of the searchable select should match the start of or anywhere in the options. Only applies to built in filtering. */ "searchMatchPosition"?: IcSearchMatchPositions; /** * If `true`, a searchable variant of the select will be displayed which can be typed in to filter options. This functionality is only available on the single-select variant of the select component. */ "searchable"?: boolean; /** * If `true`, the icOptionSelect event will be fired on enter instead of ArrowUp and ArrowDown on the single select. */ "selectOnEnter"?: boolean; /** * If `true`, a button which clears the select input when clicked will be displayed. The button will always appear on the searchable select. */ "showClearButton"?: boolean; /** * The size of the select. */ "size"?: IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * If using external filtering, set a timeout for when loading takes too long. */ "timeout"?: number; /** * The validation status - e.g. 'error' | 'warning' | 'success'. */ "validationStatus"?: IcInformationStatusOrEmpty; /** * The text to display as the validation message. */ "validationText"?: string; /** * The value of the select, reflected by the value of the currently selected option. For the searchable variant, the value is also reflected by the user input. For the multi-select variant, the value must be an array of option values. */ "value"?: string | string[] | null; } interface IcSideNavigation { /** * The app title to be displayed. This is required, unless a slotted app title link is used. */ "appTitle"?: string; /** * If `true`, the side navigation will close when a navigation item is clicked. This behaviour is only applicable on larger device sizes. */ "closeOnNavItemClick"?: boolean; /** * If `true`, the icon and label will appear when side navigation is collapsed. */ "collapsedIconLabels"?: boolean; /** * If `true`, automatic parent wrapper styling will be disabled. */ "disableAutoParentStyling"?: boolean; /** * If `true`, the side navigation will not display as a top bar on small devices. */ "disableTopBarBehaviour"?: boolean; /** * If `true`, the side navigation will display in an expanded state. */ "expanded"?: boolean; /** * The URL that the app title link points to. */ "href"?: string; /** * Emitted when the side navigation is collapsed and expanded. */ "onIcSideNavExpanded"?: (event: IcSideNavigationCustomEvent) => void; /** * The short title of the app to be displayed at small screen sizes in place of the app title. */ "shortAppTitle"?: string; /** * If `true`, the menu expand button will be removed (PLEASE NOTE: This takes effect on screen sizes 992px and above). */ "static"?: boolean; /** * The status of the app to be displayed. */ "status"?: string; /** * The version of the app to be displayed. */ "version"?: string; } interface IcSkeleton { /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The variant of the skeleton that will be displayed. */ "variant"?: IcSkeletonVariants; } interface IcSkipLink { /** * If `true`, the skip link will fill the width of the page. */ "fullWidth"?: boolean; /** * If `true`, the skip link will appear inline with surrounding page content when focused. */ "inline"?: boolean; /** * The label displayed when the skip link is focused. */ "label"?: string; /** * If `true`, the skip link will display as black in the light theme, and white in the dark theme. */ "monochrome"?: boolean; /** * The target ID for the element which should receive focus when triggering the skip link. */ "target": string; /** * Sets the theme color to the dark or light theme color. `inherit` will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * If `true`, the background will be hidden. */ "transparentBackground"?: boolean; } interface IcStatusTag { /** * If `true`, role='status' is added to the component and it will act as an 'aria-live' region. Screen readers will announce changes to the `label`, but not the initial value. */ "announced"?: boolean; /** * The content rendered within the status tag. */ "label": string; /** * The size of the status tag component. */ "size"?: IcSizes; /** * The colour of the status tag. */ "status"?: IcStatusTagStatuses; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: "dark" | "light" | "inherit"; /** * The letter case of the status tag's label. */ "uppercase"?: boolean; /** * The emphasis of the status tag. */ "variant"?: IcEmphasisType; } interface IcStep { /** * The title of the step within the stepper. */ "heading"?: string; /** * The status of the step. Use this prop to display a status message on the step if it is required or optional. */ "status"?: IcStepStatuses; /** * Additional information about the step. Use this prop to override the default step status messaging displayed when selecting a step type or step status. */ "subheading"?: string; /** * The state of the step within the stepper. */ "type"?: IcStepTypes; } interface IcStepper { /** * The alignment of the default stepper within its container. */ "aligned"?: IcStepperAlignment; /** * The length of the connector between each step in pixels. Minimum length is 100px. */ "connectorWidth"?: number; /** * If `true`, the information about each step, i.e. step title, step subtitle and step status, will be hidden on all default steps. The information about each step will still be visible in the compact variant of the stepper. */ "hideStepInfo"?: boolean; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The variant of the stepper. */ "variant"?: IcStepVariants; } interface IcSwitch { /** * If `true`, the switch will display as checked. */ "checked"?: boolean; /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * The helper text that will be displayed for additional field guidance. */ "helperText"?: string; /** * If `true`, the label will be hidden and the required label value will be applied as an aria-label. */ "hideLabel"?: boolean; /** * The aria-label applied to the switch when no visual 'name' is provided. */ "label": string; /** * The name of the control, which is submitted with the form data. */ "name"?: string; /** * Emitted when the toggle loses focus. */ "onIcBlur"?: (event: IcSwitchCustomEvent) => void; /** * Emitted when the value property has changed. */ "onIcChange"?: (event: IcSwitchCustomEvent) => void; /** * Emitted when the toggle has focus. */ "onIcFocus"?: (event: IcSwitchCustomEvent) => void; /** * The size of the switch component. */ "size"?: IcSizesNoLarge; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The value of the toggle does not mean if it's checked or not, use the `checked` property for that. The value of a toggle is analogous to the value of a ``, it's only used when the toggle participates in a native ``. */ "value"?: string | null; } interface IcTab { /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; } interface IcTabContext { /** * Determines whether tabs have to be manually activated (by pressing 'Enter' or 'Space') when they receive focus using keyboard navigation. */ "activationType"?: IcActivationTypes; /** * The unique context needed if using multiple tabs inside one another i.e. rendering another set of tabs inside a tab panel. */ "contextId"?: string; /** * If `true`, the tabs will display as black in the light theme. */ "monochrome"?: boolean; /** * Emitted when a user selects a tab. */ "onIcTabSelect"?: (event: IcTabContextCustomEvent) => void; /** * The selected tab to be controlled by the user. Must be used alongside the icTabSelect event to manage tab selection. */ "selectedTabIndex"?: number; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcTabGroup { /** * If `true`, the tabs and tab panels will be positioned separately. */ "inline"?: boolean; /** * The label to describe the purpose of the set of tabs to screen reader users. */ "label": string; } interface IcTabPanel { } interface IcTextField { /** * The automatic capitalisation of the text value as it is entered/edited by the user. Available options: "off", "none", "on", "sentences", "words", "characters". */ "autocapitalize"?: string; /** * The state of autocompletion the browser can apply on the text value. */ "autocomplete"?: IcAutocompleteTypes; /** * The state of autocorrection the browser can apply when the user is entering/editing the text value. */ "autocorrect"?: IcAutocorrectStates; /** * If `true`, the form control will have input focus when the page loads. */ "autofocus"?: boolean; /** * The amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke. */ "debounce"?: number; /** * If `true`, the disabled state will be set. */ "disabled"?: boolean; /** * Specify whether the text field fills the full width of the container. If `true`, this overrides the --input-width CSS variable. */ "fullWidth"?: boolean; /** * The helper text that will be displayed for additional field guidance. */ "helperText"?: string; /** * If `true`, the character count which is displayed when `maxCharacters` is set will be visually hidden. */ "hideCharCount"?: boolean; /** * If `true`, the label will be hidden and the required label value will be applied as an aria-label. */ "hideLabel"?: boolean; /** * The ID for the input. */ "inputId"?: string; /** * A hint to the browser for which keyboard to display. Possible values: `"none"`, `"text"`, `"tel"`, `"url"`, `"email"`, `"numeric"`, `"decimal"`, and `"search"`. */ "inputmode"?: IcTextFieldInputModes; /** * The label for the input. */ "label": string; /** * The maximum number that can be accepted as a value, when `type` is `number` and `rows` is `1`. (NOTE: Ensure to include visual indication of max value in `helperText` or `label`) */ "max"?: string | number; /** * The count of characters in the field. Will display a warning if the bound is reached. (NOTE: If the value of the text field has been set using the `value` prop, it will be truncated to this number of characters) */ "maxCharacters"?: number; /** * The text to display as the warning message when the maximum number of characters (the `maxCharacters` prop value) is reached. */ "maxCharactersMessage"?: string; /** * The text to display as the error message when the maximum value (the `max` prop value) has been exceeded. */ "maxMessage"?: string; /** * The minimum number that can be accepted as a value, when `type` is `number` and `rows` is `1`. (NOTE: Ensure to include visual indication of min value in `helperText` or `label`) */ "min"?: string | number; /** * The minimum number of characters that can be entered in the field. */ "minCharacters"?: number; /** * The text to display as the error message when the minimum number of characters (the `minCharacters` prop value) has not been met. */ "minCharactersMessage"?: string; /** * The text to display as the error message when the minimum value (the `min` prop value) has not been met. */ "minMessage"?: string; /** * The name of the control, which is submitted with the form data. */ "name"?: string; /** * Emitted when input loses focus. */ "onIcBlur"?: (event: IcTextFieldCustomEvent) => void; /** * Emitted when the value has changed. */ "onIcChange"?: (event: IcTextFieldCustomEvent) => void; /** * Emitted when input gains focus. */ "onIcFocus"?: (event: IcTextFieldCustomEvent) => void; /** * Emitted when a keyboard input occurred. */ "onIcInput"?: (event: IcTextFieldCustomEvent) => void; /** * Emitted when a keydown event occurred. */ "onIcKeydown"?: (event: IcTextFieldCustomEvent<{ event: KeyboardEvent }>) => void; /** * Emitted when the textarea variant is scrolled. */ "onIcScroll"?: (event: IcTextFieldCustomEvent) => void; /** * The placeholder value to be displayed. */ "placeholder"?: string; /** * If `true`, the read only state will be set. */ "readonly"?: boolean; /** * If `true`, the input will require a value. */ "required"?: boolean; /** * If `true`, the multiline text area will be resizeable. */ "resize"?: boolean; /** * The number of rows to transform the text field into a text area with a specific height. */ "rows"?: number; /** * The size of the text field component. */ "size"?: IcSizesNoLarge; /** * If `true`, the value of the text field will have its spelling and grammar checked. */ "spellcheck"?: boolean; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The type of control to display. The default type is text. */ "type"?: IcTextFieldTypes; /** * If `true`, the icon in input control will be displayed - only applies when validationStatus ='success'. */ "validationInline"?: boolean; /** * The validation state - e.g. 'error' | 'warning' | 'success'. */ "validationStatus"?: IcInformationStatusOrEmpty; /** * The text to display as the validation message. */ "validationText"?: string; /** * The value of the text field. */ "value"?: string; } interface IcTheme { /** * The brand colour. Can be a hex value e.g. "#ff0000", RGB e.g. "rgb(255, 0, 0)", or RGBA e.g. "rgba(255, 0, 0, 1)". */ "brandColor"?: IcColor | null; /** * Emitted when the theme is changed. */ "onIcThemeChange"?: (event: IcThemeCustomEvent) => void; /** * The theme mode. Can be "dark", "light", or "system". "system" will use the device or browser settings. */ "theme"?: IcThemeSettings; } interface IcToast { /** * If toast dismissMode is set to `automatic`, use this prop to define the time before the toast dismisses (in MILLISECONDS) (NOTE: Has a minimum value of `5000ms`) */ "autoDismissTimeout"?: number | undefined; /** * If toast can be manually dismissed, this prop sets a custom aria-label for the ic-button component */ "dismissButtonAriaLabel"?: string | undefined; /** * How the toast will be dismissed. If manual will display a dismiss button. */ "dismissMode"?: IcActivationTypes; /** * The title to display at the start of the toast. (NOTE: Should be no more than `70` characters) */ "heading": string; /** * The main body message of the toast. (NOTE: Should be no more than `140` characters) */ "message"?: string; /** * Provides a custom alt-text to be announced to screen readers, if slotting a custom neutral icon */ "neutralIconAriaLabel"?: string; /** * Is emitted when the user dismisses the toast */ "onIcDismiss"?: (event: IcToastCustomEvent) => void; /** * The variant of the toast being rendered */ "variant"?: IcStatusVariants; } interface IcToastRegion { /** * The toast element to be displayed. */ "openToast"?: HTMLIcToastElement; } interface IcToggleButton { /** * The accessible label that will be applied to the toggle button. This is required for the icon variant of toggle buttons. */ "accessibleLabel"?: string; /** * If `true`, the toggle button will be in a checked state. */ "checked"?: boolean; /** * If `true`, the toggle button will be in disabled state. */ "disabled"?: boolean; /** * If `true`, the toggle button will fill the width of the container. */ "fullWidth"?: boolean; /** * The placement of the icon in relation to the toggle button label. */ "iconPlacement"?: IcIconPlacementOptions; /** * The label to display in the toggle button. This is required for the default variant of toggle buttons. */ "label"?: string; /** * If `true`, the toggle button will be in loading state. */ "loading"?: boolean; /** * If `true`, the toggle button will display as black in the light theme, and white in dark theme. */ "monochrome"?: boolean; /** * Emitted when the user clicks a toggle button. */ "onIcToggleChecked"?: (event: IcToggleButtonCustomEvent<{ checked: boolean; }>) => void; /** * The size of the toggle button to be displayed. */ "size"?: IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The position of the tooltip in relation to the toggle button. */ "tooltipPlacement"?: IcButtonTooltipPlacement; /** * The variant of the toggle button. */ "variant"?: "default" | "icon"; } interface IcToggleButtonGroup { /** * The accessible label of the toggle button group component to provide context for screen reader users. */ "accessibleLabel"?: string; /** * If `true`, the toggle button group will be set to the disabled state. */ "disabled"?: boolean; /** * If `true`, the toggle button group will fill the width of the container. */ "fullWidth"?: boolean; /** * The placement of the icons in relation to the toggle button labels. */ "iconPlacement"?: IcIconPlacementOptions; /** * If `true`, the toggle button group will be in loading state. */ "loading"?: boolean; /** * If `true`, the toggle button group will display as black in the light theme, and white in dark theme. */ "monochrome"?: boolean; /** * Emitted when a toggle button is selected. */ "onIcChange"?: (event: IcToggleButtonGroupCustomEvent) => void; /** * If `auto`, controls are toggled automatically when navigated to. If `manual`, the controls must be actioned to change their toggled state. The value of this prop is ignored if `selectType` is set to`multi`. */ "selectMethod"?: IcSelectMethodTypes; /** * Sets whether single or multiple options can be toggled. If `multi`, then the `selectMethod` is always `manual`. */ "selectType"?: IcSelectTypes; /** * The size of the toggle buttons to be displayed. This does not affect the font size of the accessible label. */ "size"?: IcSizes; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The position of the tooltip in relation to the toggle buttons. */ "tooltipPlacement"?: IcButtonTooltipPlacement; /** * The variant of the toggle button. */ "variant"?: "default" | "icon"; } interface IcTooltip { /** * If `true`, the tooltip will not be displayed on click, it will require hover or using the display method. */ "disableClick"?: boolean; /** * If `true`, the tooltip will not be displayed on hover, it will require a click. */ "disableHover"?: boolean; /** * The text to display on the tooltip. */ "label": string; /** * The number of lines to display before truncating the text. */ "maxLines"?: number; /** * The position of the tooltip in relation to the parent element. */ "placement"?: IcTooltipPlacements; /** * The ID of the element the tooltip is describing - for when aria-labelledby or aria-describedby is used. */ "target"?: string; /** * Sets the tooltip to the dark or light theme colors. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; } interface IcTopNavigation { /** * The app title to be displayed. This is required, unless a slotted app title link is used. */ "appTitle"?: string; /** * The alignment of the top navigation content. */ "contentAligned"?: IcAlignment; /** * Can set a custom breakpoint for the top navigation to switch to mobile mode. Must be one of our specified breakpoints in px: `0`, `576`, `768`, `992`, `1200`. */ "customMobileBreakpoint"?: IcDeviceSizes; /** * The URL to navigate to when the app title is clicked. */ "href"?: string; /** * If `true`, the flyout navigation menu on small devices will be contained by the parent element. */ "inline"?: boolean; /** * Emitted when the top navigation is resized. */ "onIcTopNavResized"?: (event: IcTopNavigationCustomEvent<{ size: number }>) => void; /** * The short title of the app to be displayed at small screen sizes in place of the app title. */ "shortAppTitle"?: string; /** * The status info to be displayed. */ "status"?: string; /** * Sets the theme color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * The version info to be displayed. */ "version"?: string; } interface IcTypography { /** * If `true`, appropriate top and bottom margins will be applied to the typography. */ "applyVerticalMargins"?: boolean; /** * If `true`, the typography will have a bold font weight. Note: This will have no impact on variants that already use an equivalent or higher font weight (h1, h2, and subtitle-large). */ "bold"?: boolean; /** * If `true`, the typography will have an italic font style. */ "italic"?: boolean; /** * The number of lines to display before truncating the text, only used for the 'body' variant. */ "maxLines"?: number; /** * If `true`, the typography will have a line through it. */ "strikethrough"?: boolean; /** * Sets the text color to the dark or light theme color. "inherit" will set the color based on the system settings or ic-theme component. */ "theme"?: IcThemeMode; /** * If `true`, the typography will have a line under it. */ "underline"?: boolean; /** * The ICDS typography style to use. */ "variant"?: IcTypographyVariants; } interface IntrinsicElements { "ic-accordion": IcAccordion; "ic-accordion-group": IcAccordionGroup; "ic-alert": IcAlert; "ic-back-to-top": IcBackToTop; "ic-badge": IcBadge; "ic-breadcrumb": IcBreadcrumb; "ic-breadcrumb-group": IcBreadcrumbGroup; "ic-button": IcButton; "ic-card-vertical": IcCardVertical; "ic-checkbox": IcCheckbox; "ic-checkbox-group": IcCheckboxGroup; "ic-chip": IcChip; "ic-classification-banner": IcClassificationBanner; "ic-data-list": IcDataList; "ic-data-row": IcDataRow; "ic-dialog": IcDialog; "ic-divider": IcDivider; "ic-empty-state": IcEmptyState; "ic-footer": IcFooter; "ic-footer-link": IcFooterLink; "ic-footer-link-group": IcFooterLinkGroup; "ic-hero": IcHero; "ic-horizontal-scroll": IcHorizontalScroll; "ic-input-component-container": IcInputComponentContainer; "ic-input-container": IcInputContainer; "ic-input-label": IcInputLabel; "ic-input-validation": IcInputValidation; "ic-link": IcLink; "ic-loading-indicator": IcLoadingIndicator; "ic-menu": IcMenu; "ic-menu-group": IcMenuGroup; "ic-menu-item": IcMenuItem; "ic-navigation-button": IcNavigationButton; "ic-navigation-group": IcNavigationGroup; "ic-navigation-item": IcNavigationItem; "ic-navigation-menu": IcNavigationMenu; "ic-page-header": IcPageHeader; "ic-pagination": IcPagination; "ic-pagination-item": IcPaginationItem; "ic-popover-menu": IcPopoverMenu; "ic-radio-group": IcRadioGroup; "ic-radio-option": IcRadioOption; "ic-search-bar": IcSearchBar; "ic-section-container": IcSectionContainer; "ic-select": IcSelect; "ic-side-navigation": IcSideNavigation; "ic-skeleton": IcSkeleton; "ic-skip-link": IcSkipLink; "ic-status-tag": IcStatusTag; "ic-step": IcStep; "ic-stepper": IcStepper; "ic-switch": IcSwitch; "ic-tab": IcTab; "ic-tab-context": IcTabContext; "ic-tab-group": IcTabGroup; "ic-tab-panel": IcTabPanel; "ic-text-field": IcTextField; "ic-theme": IcTheme; "ic-toast": IcToast; "ic-toast-region": IcToastRegion; "ic-toggle-button": IcToggleButton; "ic-toggle-button-group": IcToggleButtonGroup; "ic-tooltip": IcTooltip; "ic-top-navigation": IcTopNavigation; "ic-typography": IcTypography; } } export { LocalJSX as JSX }; declare module "@stencil/core" { export namespace JSX { interface IntrinsicElements { "ic-accordion": LocalJSX.IcAccordion & JSXBase.HTMLAttributes; "ic-accordion-group": LocalJSX.IcAccordionGroup & JSXBase.HTMLAttributes; "ic-alert": LocalJSX.IcAlert & JSXBase.HTMLAttributes; "ic-back-to-top": LocalJSX.IcBackToTop & JSXBase.HTMLAttributes; "ic-badge": LocalJSX.IcBadge & JSXBase.HTMLAttributes; "ic-breadcrumb": LocalJSX.IcBreadcrumb & JSXBase.HTMLAttributes; "ic-breadcrumb-group": LocalJSX.IcBreadcrumbGroup & JSXBase.HTMLAttributes; "ic-button": LocalJSX.IcButton & JSXBase.HTMLAttributes; "ic-card-vertical": LocalJSX.IcCardVertical & JSXBase.HTMLAttributes; "ic-checkbox": LocalJSX.IcCheckbox & JSXBase.HTMLAttributes; "ic-checkbox-group": LocalJSX.IcCheckboxGroup & JSXBase.HTMLAttributes; "ic-chip": LocalJSX.IcChip & JSXBase.HTMLAttributes; "ic-classification-banner": LocalJSX.IcClassificationBanner & JSXBase.HTMLAttributes; "ic-data-list": LocalJSX.IcDataList & JSXBase.HTMLAttributes; "ic-data-row": LocalJSX.IcDataRow & JSXBase.HTMLAttributes; "ic-dialog": LocalJSX.IcDialog & JSXBase.HTMLAttributes; "ic-divider": LocalJSX.IcDivider & JSXBase.HTMLAttributes; "ic-empty-state": LocalJSX.IcEmptyState & JSXBase.HTMLAttributes; "ic-footer": LocalJSX.IcFooter & JSXBase.HTMLAttributes; "ic-footer-link": LocalJSX.IcFooterLink & JSXBase.HTMLAttributes; "ic-footer-link-group": LocalJSX.IcFooterLinkGroup & JSXBase.HTMLAttributes; "ic-hero": LocalJSX.IcHero & JSXBase.HTMLAttributes; "ic-horizontal-scroll": LocalJSX.IcHorizontalScroll & JSXBase.HTMLAttributes; "ic-input-component-container": LocalJSX.IcInputComponentContainer & JSXBase.HTMLAttributes; "ic-input-container": LocalJSX.IcInputContainer & JSXBase.HTMLAttributes; "ic-input-label": LocalJSX.IcInputLabel & JSXBase.HTMLAttributes; "ic-input-validation": LocalJSX.IcInputValidation & JSXBase.HTMLAttributes; "ic-link": LocalJSX.IcLink & JSXBase.HTMLAttributes; "ic-loading-indicator": LocalJSX.IcLoadingIndicator & JSXBase.HTMLAttributes; "ic-menu": LocalJSX.IcMenu & JSXBase.HTMLAttributes; "ic-menu-group": LocalJSX.IcMenuGroup & JSXBase.HTMLAttributes; "ic-menu-item": LocalJSX.IcMenuItem & JSXBase.HTMLAttributes; "ic-navigation-button": LocalJSX.IcNavigationButton & JSXBase.HTMLAttributes; "ic-navigation-group": LocalJSX.IcNavigationGroup & JSXBase.HTMLAttributes; "ic-navigation-item": LocalJSX.IcNavigationItem & JSXBase.HTMLAttributes; "ic-navigation-menu": LocalJSX.IcNavigationMenu & JSXBase.HTMLAttributes; "ic-page-header": LocalJSX.IcPageHeader & JSXBase.HTMLAttributes; "ic-pagination": LocalJSX.IcPagination & JSXBase.HTMLAttributes; "ic-pagination-item": LocalJSX.IcPaginationItem & JSXBase.HTMLAttributes; "ic-popover-menu": LocalJSX.IcPopoverMenu & JSXBase.HTMLAttributes; "ic-radio-group": LocalJSX.IcRadioGroup & JSXBase.HTMLAttributes; "ic-radio-option": LocalJSX.IcRadioOption & JSXBase.HTMLAttributes; "ic-search-bar": LocalJSX.IcSearchBar & JSXBase.HTMLAttributes; "ic-section-container": LocalJSX.IcSectionContainer & JSXBase.HTMLAttributes; "ic-select": LocalJSX.IcSelect & JSXBase.HTMLAttributes; "ic-side-navigation": LocalJSX.IcSideNavigation & JSXBase.HTMLAttributes; "ic-skeleton": LocalJSX.IcSkeleton & JSXBase.HTMLAttributes; "ic-skip-link": LocalJSX.IcSkipLink & JSXBase.HTMLAttributes; "ic-status-tag": LocalJSX.IcStatusTag & JSXBase.HTMLAttributes; "ic-step": LocalJSX.IcStep & JSXBase.HTMLAttributes; "ic-stepper": LocalJSX.IcStepper & JSXBase.HTMLAttributes; "ic-switch": LocalJSX.IcSwitch & JSXBase.HTMLAttributes; "ic-tab": LocalJSX.IcTab & JSXBase.HTMLAttributes; "ic-tab-context": LocalJSX.IcTabContext & JSXBase.HTMLAttributes; "ic-tab-group": LocalJSX.IcTabGroup & JSXBase.HTMLAttributes; "ic-tab-panel": LocalJSX.IcTabPanel & JSXBase.HTMLAttributes; "ic-text-field": LocalJSX.IcTextField & JSXBase.HTMLAttributes; "ic-theme": LocalJSX.IcTheme & JSXBase.HTMLAttributes; "ic-toast": LocalJSX.IcToast & JSXBase.HTMLAttributes; "ic-toast-region": LocalJSX.IcToastRegion & JSXBase.HTMLAttributes; "ic-toggle-button": LocalJSX.IcToggleButton & JSXBase.HTMLAttributes; "ic-toggle-button-group": LocalJSX.IcToggleButtonGroup & JSXBase.HTMLAttributes; "ic-tooltip": LocalJSX.IcTooltip & JSXBase.HTMLAttributes; "ic-top-navigation": LocalJSX.IcTopNavigation & JSXBase.HTMLAttributes; "ic-typography": LocalJSX.IcTypography & JSXBase.HTMLAttributes; } } }