/* 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 { BalConfigState } from "./utils/config"; import { AccordionState, BalAriaForm as BalAriaForm1, BalConfigState as BalConfigState1 } from "./interfaces"; import { BalCarouselItemData } from "./components/bal-carousel/bal-carousel.type"; import { BalCheckboxOption } from "./components/bal-checkbox/bal-checkbox.type"; import { BalAriaForm } from "./utils/form"; import { OverlayEventDetail } from "./components/bal-modal/bal-modal.type"; import { LevelInfo } from "./components/bal-navigation/utils/level.utils"; import { Attributes } from "./utils/attributes"; import { PopoverPresentOptions } from "./components/bal-popover/bal-popover"; import { BalRadioOption } from "./components/bal-radio/bal-radio.type"; import { BalStepOption } from "./components/bal-steps/bal-step.type"; import { BalTabOption } from "./components/bal-tabs/bal-tab.type"; export { BalConfigState } from "./utils/config"; export { AccordionState, BalAriaForm as BalAriaForm1, BalConfigState as BalConfigState1 } from "./interfaces"; export { BalCarouselItemData } from "./components/bal-carousel/bal-carousel.type"; export { BalCheckboxOption } from "./components/bal-checkbox/bal-checkbox.type"; export { BalAriaForm } from "./utils/form"; export { OverlayEventDetail } from "./components/bal-modal/bal-modal.type"; export { LevelInfo } from "./components/bal-navigation/utils/level.utils"; export { Attributes } from "./utils/attributes"; export { PopoverPresentOptions } from "./components/bal-popover/bal-popover"; export { BalRadioOption } from "./components/bal-radio/bal-radio.type"; export { BalStepOption } from "./components/bal-steps/bal-step.type"; export { BalTabOption } from "./components/bal-tabs/bal-tab.type"; export namespace Components { interface BalAccordion { /** * If `true` the accordion is open. */ "active": boolean; /** * If `true` the accordion is used on the bottom of a card */ "card": boolean; /** * BalIcon of the close trigger button */ "closeIcon": string; /** * Label of the close trigger button */ "closeLabel": string; "configChanged": (state: BalConfigState) => Promise; /** * Set the amount of time, in milliseconds, to wait to trigger the `balChange` event after each keystroke. This also impacts form bindings such as `ngModel` or `v-model`. */ "debounce": number; /** * Closes the accordion */ "dismiss": () => Promise; "humanToggle": () => Promise; /** * BalIcon of the open trigger button */ "openIcon": string; /** * Label of the open trigger button */ "openLabel": string; /** * Opens the accordion */ "present": () => Promise; /** * Triggers the accordion */ "toggle": () => Promise; "version": number; } interface BalAccordionDetails { "active": boolean; "animated": boolean; "state": AccordionState; } interface BalAccordionSummary { "active": boolean; "state": AccordionState; /** * If `true` the whole summary component acts as a trigger and can be clicked */ "trigger": boolean; } interface BalAccordionTrigger { "active": boolean; /** * Trigger will be a bal-button */ "button": boolean; /** * BalIcon of the close trigger button */ "closeIcon": string; /** * Label of the close trigger button */ "closeLabel": string; /** * The color to use from your application's color palette. */ "color": BalProps.BalButtonColor; /** * BalIcon of the open trigger button */ "openIcon": string; /** * Label of the open trigger button */ "openLabel": string; /** * Size of the button */ "size": BalProps.BalButtonSize; "state": AccordionState; } interface BalApp { /** * Disables all animation inside the bal-app. Can be used for simplify e2e testing. */ "animated": boolean; "ready": boolean; "setFocus": (elements: HTMLElement[]) => Promise; } interface BalBadge { /** * Define the color for the badge. */ "color": BalProps.BalBadgeColor; /** * Name of the icon to show. If a icon is present text should be hidden. */ "icon"?: string; /** * If `true` the badge is added to the top right corner of the card. */ "position": BalProps.BalBadgePosition; /** * Define the size of badge. Small is recommended for tabs. */ "size": BalProps.BalBadgeSize; } interface BalButton { /** * A11y attributes for the native button element. */ "aria"?: BalProps.BalButtonAria; /** * @deprecated If `true` the bottom corners get rounded */ "bottomRounded": undefined | boolean; /** * The color to use from your application's color palette. */ "color": BalProps.BalButtonColor; /** * If `true`, the user cannot interact with the button. */ "disabled": boolean; /** * This attribute instructs browsers to download a URL instead of navigating to it, so the user will be prompted to save it as a local file. If the attribute has a value, it is used as the pre-filled file name in the Save prompt (the user can still change the file name if they want). */ "download"?: string; /** * The type of button. */ "elementType": BalProps.BalButtonElementType; /** * If `true` the button has a full width */ "expanded": boolean; /** * If `true` the button has no padding and a reduced height */ "flat": boolean; /** * Specifies the URL of the page the link goes to */ "href"?: string; /** * Name of the left button icon */ "icon": string; /** * Name of the right button icon */ "iconRight": string; /** * If `true` the icon turns */ "iconTurn": boolean; /** * If `true` the button is inverted */ "inverted": boolean; /** * If `true` the button has a active theme */ "isActive": boolean; /** * If `true` the label is hidden and a loading spinner is shown instead. */ "loading": boolean; /** * The name of the button, which is submitted with the form data. */ "name"?: string; /** * The label of the button will not break */ "noWrap": boolean; /** * If `true` the button is outlined */ "outlined": boolean; /** * Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types). */ "rel"?: string; /** * If `true` the button is rounded. */ "rounded": boolean; /** * If `true` adds a box shadow to improve readability on image background */ "shadow": boolean; /** * Size of the button */ "size": BalProps.BalButtonSize; /** * If `true` the width of the buttons is limited */ "square": boolean; /** * Specifies where to display the linked URL. Only applies when an `href` is provided. */ "target": BalProps.BalButtonTarget; /** * @deprecated If `true` the top corners get rounded */ "topRounded": undefined | boolean; /** * The value of the button, which is submitted with the form data. */ "value"?: string | number; } interface BalButtonGroup { /** * `auto` will position the button items vertical and full width. `row` will force that the buttons are also horizontal on mobile. */ "direction": BalProps.BalButtonGroupDirection; /** * The value of the button, which is submitted with the form data. */ "position": BalProps.BalButtonGroupPosition; /** * If `true` the flex direction is used in reverse on mobile. */ "reverse": boolean; } interface BalCard { /** * If `true` a light blue border is added to the card. */ "border": boolean; /** * If `true` the card has a hover effect. */ "clickable": boolean; /** * Defines the color of the card. */ "color": BalProps.BalCardColor; /** * If `true` the card loses its shadow. */ "flat": boolean; /** * If `true` the card uses 100% of the available height. */ "fullheight": boolean; /** * If `true` the card background color becomes blue. */ "inverted": boolean; /** * If `true` the card gets a light background to indicate a selection. */ "selected": boolean; /** * Defines the space of the card content. */ "space": BalProps.BalCardSpace; /** * If `true` the card loses its border radius. */ "square": boolean; } interface BalCardActions { /** * The value of the button, which is submitted with the form data. */ "position": BalProps.BalCardActionsPosition; } interface BalCardButton { /** * If `true`, the user cannot interact with the button. */ "disabled": boolean; /** * The type of button. */ "elementType": BalProps.BalCardButtonElementType; /** * Specifies the URL of the page the link goes to */ "href"?: string; /** * Name of the icon like `edit`. */ "icon": string; /** * Name of the right button icon */ "iconRight": string; /** * If `true` the label is hidden and a loading spinner is shown instead. */ "loading": boolean; /** * Specifies where to display the linked URL. Only applies when an `href` is provided. */ "target": BalProps.BalCardButtonTarget; } interface BalCardContent { } interface BalCardSubtitle { /** * If `true` the card text color is bold. */ "bold": boolean; /** * If `true` the card text color becomes white. */ "color": BalProps.BalHeadingColor; /** * If `true` the card text color becomes white. */ "inverted": boolean; } interface BalCardTitle { /** * If `true` the card text color becomes white. */ "inverted": boolean; } interface BalCarousel { /** * Defines the image aspect ratio. Should be combined with the interface `product` */ "aspectRatio"?: '1by1' | '3by2' | '4by3' | '16by9'; /** * If `true` a light border is shown at the bottom. */ "border": boolean; "configChanged": (state: BalConfigState1) => Promise; /** * Defines the layout of the navigation controls. */ "controls": 'small' | 'large' | 'dots' | 'tabs' | 'none'; /** * If `true` items move under the controls, instead of having a gap */ "controlsOverflow": boolean; /** * If `true` the controls will be sticky to the top. */ "controlsSticky": boolean; /** * If `true` the carousel uses the full height */ "fullHeight": boolean; /** * Defines special looks. */ "interface": 'card' | 'image' | 'product' | ''; /** * If `true` the carousel can be used on dark background */ "inverted": boolean; /** * Defines how many slides are visible in the container for the user. `auto` will use the size of the actual item content */ "itemsPerView": 'auto' | 1 | 2 | 3 | 4; "next": (steps?: number) => Promise; /** * PUBLIC METHODS ------------------------------------------------------ */ "previous": (steps?: number) => Promise; /** * If `true` vertical scrolling on mobile is enabled. */ "scrollY": boolean; /** * When how many slides are moved when going forward or backward. */ "steps": number; /** * Defines the active slide index. */ "value": number; } interface BalCarouselItem { /** * Color of the background */ "color"?: BalProps.BalCarouselItemColor; /** * This attribute instructs browsers to download a URL instead of navigating to it, so the user will be prompted to save it as a local file. If the attribute has a value, it is used as the pre-filled file name in the Save prompt (the user can still change the file name if they want). */ "download"?: string; /** * The type of button. */ "elementType": BalProps.BalButtonElementType; "getData": () => Promise; /** * Specifies the URL of the page the link goes to */ "href"?: string; /** * Label of the slide which will be used for pagination tabs */ "label": string; /** * The name of the button, which is submitted with the form data. */ "name"?: string; /** * Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types). */ "rel"?: string; /** * Src path to the image */ "src"?: string; /** * Specifies where to display the linked URL. Only applies when an `href` is provided. */ "target": BalProps.BalButtonTarget; /** * The value of the button, which is submitted with the form data. */ "value"?: string | number; } interface BalCheckbox { /** * If `true`, in Angular reactive forms the control will not be set invalid */ "autoInvalidOff": boolean; /** * If `true`, the checkbox is selected. */ "checked": boolean; /** * If `true`, the element is not mutable, focusable, or even submitted with the form. The user can neither edit nor focus on the control, nor its form control descendants. */ "disabled": boolean; /** * If `true` the control is no padding */ "flat": boolean; /** * Returns the native `` element used under the hood. */ "getInputElement": () => Promise; /** * Options of the tab like label, value etc. */ "getOption": () => Promise; /** * @deprecated Use non-submit instead */ "hidden": boolean; "hovered": boolean; /** * If `true` the control is displayed as inline */ "inline": boolean; /** * Defines the layout of the checkbox button */ "interface": BalProps.BalCheckboxInterface; /** * If `true` the component gets a invalid style. */ "invalid": boolean; /** * If `true` the radio is invisible, but sill active */ "invisible": boolean; /** * Label of the radio item. */ "label": string; /** * If `true` the checkbox has no label */ "labelHidden": boolean; /** * The name of the control, which is submitted with the form data. */ "name": string; /** * If `true`, the value will not be send with a form submit */ "nonSubmit": boolean; "pressed": boolean; /** * If `true` the element can not mutated, meaning the user can not edit the control. */ "readonly": boolean; /** * If `true`, the user must fill in a value before submitting a form. */ "required": boolean; "setAriaForm": (ariaForm: BalAriaForm) => Promise; /** * Sets blur on the native `input`. Use this method instead of the global `input.blur()`. */ "setBlur": () => Promise; "setButtonTabindex": (value: number) => Promise; /** * Sets the focus on the checkbox input element. */ "setFocus": () => Promise; "updateState": () => Promise; /** * A DOMString representing the value of the checkbox. This is not displayed on the client-side, but on the server this is the value given to the data submitted with the checkbox's name. */ "value": string | number; } interface BalCheckboxButton { "colSize": BalProps.BalCheckboxGroupColumns; "colSizeMobile": BalProps.BalCheckboxGroupColumns; "colSizeTablet": BalProps.BalCheckboxGroupColumns; /** * If `true` the component gets a invalid red style. */ "color"?: BalProps.BalCheckboxButtonColor; /** * If `true`, the element is not mutable, focusable, or even submitted with the form. The user can neither edit nor focus on the control, nor its form control descendants. */ "disabled"?: boolean; /** * If `true` the component gets a invalid red style. */ "invalid"?: boolean; /** * If `true` the element can not mutated, meaning the user can not edit the control. */ "readonly"?: boolean; "setChecked": (checked?: boolean) => Promise; } interface BalCheckboxGroup { /** * If `true`, in Angular reactive forms the control will not be set invalid */ "autoInvalidOff": boolean; /** * Defines the column size like the grid. */ "columns": BalProps.BalCheckboxGroupColumns; /** * Defines the column size for mobile and bigger like the grid. */ "columnsMobile": BalProps.BalCheckboxGroupColumns; /** * Defines the column size for tablet and bigger like the grid. */ "columnsTablet": BalProps.BalCheckboxGroupColumns; /** * If `true` it acts as the main form control */ "control": boolean; /** * If `true`, the user cannot interact with the checkboxes. */ "disabled"?: boolean; /** * Uses the whole width */ "expanded": boolean; /** * Find the options properties by its value */ "getOptionByValue": (value: string) => Promise; /** * Defines the layout of the checkbox button */ "interface"?: BalProps.BalCheckboxGroupInterface; /** * If `true`, the element is not mutable, focusable, or even submitted with the form. The user can neither edit nor focus on the control, nor its form control descendants. */ "invalid"?: boolean; /** * The name of the control, which is submitted with the form data. */ "name": string; /** * Steps can be passed as a property or through HTML markup. */ "options"?: BalCheckboxOption[]; /** * If `true`, the user cannot interact with the checkboxes. */ "readonly"?: boolean; "setAriaForm": (ariaForm: BalAriaForm) => Promise; "setValue": (value: any[]) => Promise; /** * The value of the control. */ "value": any[]; /** * Displays the checkboxes vertically */ "vertical": boolean; /** * If `true`, the controls will be vertically on mobile devices. */ "verticalOnMobile": boolean; } interface BalClose { "configChanged": (state: BalConfigState1) => Promise; /** * If `true` it supports dark backgrounds. */ "inverted": boolean; /** * Define the size of badge. Small is recommended for tabs. */ "size": BalProps.BalCloseSize; } interface BalContent { /** * Defines the text positioning like center, end or default to start. */ "align": BalProps.BalContentAlignment; "alignment": BalProps.BalStackAlignment; "direction": BalProps.BalStackDirection; /** * Defines the position of the child elements if they are showed verticaly or horizontally. Default is verticaly. */ "layout": BalProps.BalContentLayout; /** * Defines the space between the child elements. Default is xx-small. */ "space": BalProps.BalContentSpace; } interface BalData { /** * If `true` a bottom border is added to the data-item. */ "border": boolean; /** * If `true` the data list is horizontal instead of vertical. */ "horizontal": boolean; } interface BalDataItem { /** * If `true` a bottom border is added to the data-item. */ "border": boolean; /** * If `true` the item gets a lighter font color. */ "disabled": boolean; } interface BalDataLabel { /** * If `true` an asterix is added after the label. */ "required": boolean; } interface BalDataValue { /** * If `true` the button will get disabled. */ "disabled": boolean; /** * If `true` a small button with a edit icon will be shown on the right. */ "editable": boolean; /** * If `true` the text will break and the height of the item increases. */ "multiline": boolean; } interface BalDate { /** * Callback to determine which date in the datepicker should be selectable. */ "allowedDates": BalProps.BalDateCallback | undefined; /** * If `true`, in Angular reactive forms the control will not be set invalid */ "autoInvalidOff": boolean; /** * Closes the accordion */ "close": () => Promise; /** * Closes the datepicker popover after selection */ "closeOnSelect": boolean; "configChanged": (state: BalConfigState) => Promise; /** * Set the amount of time, in milliseconds, to wait to trigger the `ionChange` event after each keystroke. This also impacts form bindings such as `ngModel` or `v-model`. */ "debounce": number; /** * The date to defines where the datepicker popup starts. The prop accepts ISO 8601 date strings (YYYY-MM-DD). */ "defaultDate"?: string; /** * If `true`, the element is not mutable, focusable, or even submitted with the form. The user can neither edit nor focus on the control, nor its form control descendants. */ "disabled": boolean; /** * If `true` there will be on trigger icon visible */ "freeSolo": boolean; /** * Returns the native `` element used under the hood. */ "getInputElement": () => Promise; /** * If `true` the component gets a invalid style. */ "invalid": boolean; /** * The maximum datetime allowed. Value must be a date string following the [ISO 8601 datetime format standard](https://www.w3.org/TR/NOTE-datetime), `1996-12-19`. The format does not have to be specific to an exact datetime. For example, the maximum could just be the year, such as `1994`. Defaults to the end of this year. */ "max"?: string; /** * Latest year available for selection */ "maxYearProp"?: number; /** * The minimum datetime allowed. Value must be a date string following the [ISO 8601 datetime format standard](https://www.w3.org/TR/NOTE-datetime), such as `1996-12-19`. The format does not have to be specific to an exact datetime. For example, the minimum could just be the year, such as `1994`. Defaults to the beginning of the year, 100 years ago from today. */ "min"?: string; /** * Earliest year available for selection */ "minYearProp"?: number; /** * The name of the control, which is submitted with the form data. */ "name": string; /** * Opens the accordion */ "open": () => Promise; /** * The text to display when the select is empty. */ "placeholder"?: string; /** * If `true` the element can not mutated, meaning the user can not edit the control. */ "readonly": boolean; /** * If `true` the attribute required is added to the native input. */ "required": boolean; /** * Selects an option */ "select": (dateString: string) => Promise; "setAriaForm": (ariaForm: BalAriaForm1) => Promise; /** * Sets blur on the native `input` in `bal-input`. Use this method instead of the global `input.blur()`. */ "setBlur": () => Promise; /** * Sets focus on the native `input` in `bal-input`. Use this method instead of the global `input.focus()`. */ "setFocus": () => Promise; /** * Triggers the accordion */ "toggle": () => Promise; /** * If `true` the datepicker only open on click of the icon */ "triggerIcon": boolean; /** * The value of the form field, which accepts ISO 8601 date strings (YYYY-MM-DD). */ "value": string | undefined; } interface BalDateCalendar { /** * Callback to determine which date in the datepicker should be selectable. */ "allowedDates": BalProps.BalDateCalendarAllowedDatesCallback | undefined; "configChanged": (state: BalConfigState) => Promise; /** * The date to defines where the calendar starts. The prop accepts ISO 8601 date strings (YYYY-MM-DD). Default is today. */ "defaultDate"?: string; /** * The maximum datetime allowed. Value must be a date string following the [ISO 8601 datetime format standard](https://www.w3.org/TR/NOTE-datetime), `1996-12-19`. The format does not have to be specific to an exact datetime. For example, the maximum could just be the year, such as `1994`. Defaults to the end of this year. */ "max"?: string; /** * Latest year available for selection */ "maxYearProp"?: number; /** * The minimum datetime allowed. Value must be a date string following the [ISO 8601 datetime format standard](https://www.w3.org/TR/NOTE-datetime), such as `1996-12-19`. The format does not have to be specific to an exact datetime. For example, the minimum could just be the year, such as `1994`. Defaults to the beginning of the year, 100 years ago from today. */ "min"?: string; /** * Earliest year available for selection */ "minYearProp"?: number; /** * The value of selected date, which accepts ISO 8601 date strings (YYYY-MM-DD). */ "value"?: string; } interface BalDateCalendarCell { /** * PUBLIC PROPERTY API ------------------------------------------------------ */ "day"?: number; "disabled": boolean; "fullDate": string; "isoDate": string; "month"?: number; "selected": boolean; "today": boolean; "year"?: number; } interface BalDatepicker { /** * Callback to determine which date in the datepicker should be selectable. */ "allowedDates": BalProps.BalDatepickerCallback | undefined; /** * If `true`, in Angular reactive forms the control will not be set invalid */ "autoInvalidOff": boolean; /** * Closes the popover */ "close": () => Promise; /** * Closes the datepicker popover after selection */ "closeOnSelect": boolean; "configChanged": (state: BalConfigState) => Promise; /** * Set the amount of time, in milliseconds, to wait to trigger the `ionChange` event after each keystroke. This also impacts form bindings such as `ngModel` or `v-model`. */ "debounce": number; /** * The date to defines where the datepicker popup starts. The prop accepts ISO 8601 date strings (YYYY-MM-DD). */ "defaultDate"?: string; /** * If `true`, the element is not mutable, focusable, or even submitted with the form. The user can neither edit nor focus on the control, nor its form control descendants. */ "disabled": boolean; /** * Returns the native `` element used under the hood. */ "getInputElement": () => Promise; /** * If `true` the component gets a invalid style. */ "invalid": boolean; /** * Defines if the select is in a loading state. */ "loading": boolean; /** * The maximum datetime allowed. Value must be a date string following the [ISO 8601 datetime format standard](https://www.w3.org/TR/NOTE-datetime), `1996-12-19`. The format does not have to be specific to an exact datetime. For example, the maximum could just be the year, such as `1994`. Defaults to the end of this year. */ "max"?: string; /** * Latest year available for selection */ "maxYearProp"?: number; /** * The minimum datetime allowed. Value must be a date string following the [ISO 8601 datetime format standard](https://www.w3.org/TR/NOTE-datetime), such as `1996-12-19`. The format does not have to be specific to an exact datetime. For example, the minimum could just be the year, such as `1994`. Defaults to the beginning of the year, 100 years ago from today. */ "min"?: string; /** * Earliest year available for selection */ "minYearProp"?: number; /** * The name of the control, which is submitted with the form data. */ "name": string; /** * Opens the popover */ "open": () => Promise; /** * The text to display when the select is empty. */ "placeholder"?: string; /** * If `true` the element can not mutated, meaning the user can not edit the control. */ "readonly": boolean; /** * If `true` the attribute required is added to the native input. */ "required": boolean; /** * Selects an option */ "select": (dateString: string) => Promise; "setAriaForm": (ariaForm: BalAriaForm) => Promise; /** * Sets blur on the native `input`. Use this method instead of the global `input.blur()`. */ "setBlur": () => Promise; /** * Sets focus on the native `input`. Use this method instead of the global `input.focus()`. */ "setFocus": () => Promise; /** * If `true` the datepicker only open on click of the icon */ "triggerIcon": boolean; /** * The value of the form field, which accepts ISO 8601 date strings (YYYY-MM-DD). */ "value"?: string; } interface BalDivider { /** * Defines the color of the separator line. */ "color": BalProps.BalDividerColor; /** * Defines the position of the child elements if they are showed verticaly or horizontally. Default is verticaly. */ "layout": BalProps.BalDividerLayout; /** * Defines the space between the child elements. Default is xx-small. */ "space": BalProps.BalDividerSpace; } interface BalField { /** * If `true`, the element is not mutable, focusable, or even submitted with the form. The user can neither edit nor focus on the control, nor its form control descendants. */ "disabled"?: boolean; /** * If true, label and input are aligned horizontally within the field component, with the message positioned in a new line below. */ "horizontal"?: boolean; /** * If `true` the component gets a invalid red style. */ "invalid"?: boolean; /** * If `true` a loading spinner is visible at the end of the input */ "loading"?: boolean; /** * If `true` the element can not mutated, meaning the user can not edit the control. */ "readonly"?: boolean; /** * If `true` the form control needs to be filled. If it is set to `false` an optional label is added to the label.. */ "required"?: boolean; /** * If `true` the component gets a valid green style. */ "valid": boolean; } interface BalFieldControl { /** * If `true` on mobile devices the form control children are aligned verticaly and expanded to the full width */ "expandedOnMobile"?: boolean; /** * @deprecated Baloise icon for the left side of the input */ "iconLeft": string; /** * @deprecated Baloise icon for the right side of the input */ "iconRight": string; /** * If `true` a loading spinner is visible at the end of the input */ "loading": boolean; } interface BalFieldHint { /** * Text for the close button. */ "closeLabel": string; /** * Disables the close button for tablet and desktop */ "small": boolean; /** * Text of the inputs label */ "subject"?: string; } interface BalFieldLabel { /** * If `true`, the element is not mutable, focusable, or even submitted with the form. The user can neither edit nor focus on the control, nor its form control descendants. */ "disabled"?: boolean; /** * The value of the for attribute must be a single id for a labeled form-related element in the same document as the