survey-react 1.9.54 → 1.9.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/survey.react.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Type definition for Survey JavaScript library for React v1.9.54
2
+ * Type definition for Survey JavaScript library for React v1.9.56
3
3
  * Copyright (c) 2015-2022 Devsoft Baltic OÜ - https://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -260,6 +260,17 @@ export interface IConditionObject {
260
260
  question: Question;
261
261
  context?: Question;
262
262
  }
263
+ export interface IQuestionPlainData {
264
+ name: string | number;
265
+ title: string;
266
+ value: any;
267
+ displayValue: any;
268
+ isNode: boolean;
269
+ isComment?: boolean;
270
+ questionType?: string;
271
+ data?: any;
272
+ getString: (val: any) => string;
273
+ }
263
274
  export interface IMatrixColumnOwner extends ILocalizableOwner {
264
275
  getRequiredText(): string;
265
276
  hasChoices(): boolean;
@@ -388,6 +399,7 @@ export interface ISurvey extends ITextProcessor, ISurveyErrorOwner {
388
399
  getQuestionByValueNameFromArray(valueName: string, name: string, index: number): IQuestion;
389
400
  canChangeChoiceItemsVisibility(): boolean;
390
401
  getChoiceItemVisibility(question: IQuestion, item: any, val: boolean): boolean;
402
+ loadQuestionChoices(options: any): void;
391
403
  matrixRowAdded(question: IQuestion, row: any): any;
392
404
  matrixBeforeRowAdded(options: any): any;
393
405
  matrixRowRemoved(question: IQuestion, rowIndex: number, row: any): any;
@@ -1459,6 +1471,7 @@ export declare class SurveyActionBarSeparator extends React.Component<any, any>
1459
1471
  export declare class SurveyElementBase<P, S> extends React.Component<P, S> {
1460
1472
  constructor(props: any);
1461
1473
  static renderLocString(locStr: any, style?: any, key?: string): JSX.Element;
1474
+ static renderQuestionDescription(question: any): JSX.Element;
1462
1475
  changedStatePropNameValue: string;
1463
1476
  componentDidMount(): void;
1464
1477
  componentWillUnmount(): void;
@@ -1484,7 +1497,6 @@ export declare class SurveyElementHeader extends React.Component<any, any> {
1484
1497
  constructor(props: any);
1485
1498
  constructor(props: any, context: any);
1486
1499
  render(): JSX.Element;
1487
- protected renderDescription(): JSX.Element;
1488
1500
  }
1489
1501
  export declare class SurveyError {
1490
1502
  constructor(text?: string, errorOwner?: ISurveyErrorOwner);
@@ -1834,6 +1846,7 @@ export declare class CalculatedValue extends Base {
1834
1846
  * titleName: "title", // Specifies which field contains display texts for choice values.
1835
1847
  * imageLinkName: "imageUrl", // Specifies which field contains image URLs. Used in Image Picker questions.
1836
1848
  * // Path to the array of choices. Specify `path` only if the array of choices is nested within the object returned by the service.
1849
+ * // The following path separators are allowed: semicolon `;`, comma `,`.
1837
1850
  * path: "myNestedArray"
1838
1851
  * }
1839
1852
  * ```
@@ -1891,7 +1904,7 @@ export declare class ChoicesRestful extends Base {
1891
1904
  get url(): string;
1892
1905
  set url(val: string);
1893
1906
  /*
1894
- * Path to the array of choices.
1907
+ * Path to the array of choices. The following path separators are allowed: semicolon `;`, comma `,`.
1895
1908
  *
1896
1909
  * Specify this property only if the array of choices is nested within the object returned by the service. For example, the service returns the following object:
1897
1910
  *
@@ -2011,18 +2024,25 @@ export declare class DragDropCore<T> extends Base {
2011
2024
  }
2012
2025
  export declare class DropdownListModel extends Base {
2013
2026
  constructor(question: Question, onSelectionChanged?: (item: IAction, ...params: any) => void);
2027
+ minPageSize: any;
2028
+ loadingItemHeight: any;
2014
2029
  _popupModel: any;
2015
2030
  focusFirstInputSelector: string;
2031
+ itemsSettings: any;
2032
+ isRunningLoadQuestionChoices: boolean;
2016
2033
  protected listModel: ListModel;
2017
2034
  protected popupCssClasses: string;
2035
+ protected popupRecalculatePosition(isResetHeight: boolean): void;
2018
2036
  protected onHidePopup(): void;
2019
2037
  protected getAvailableItems(): Array<Action>;
2020
2038
  protected createListModel(): ListModel;
2039
+ protected updateAfterListModelCreated(model: ListModel): void;
2021
2040
  protected resetFilterString(): void;
2022
2041
  protected onSetFilterString(): void;
2023
2042
  setInputHasValue(newValue: boolean): void;
2024
2043
  searchEnabled: boolean;
2025
2044
  filterString: string;
2045
+ hasScroll: boolean;
2026
2046
  get popupModel(): any;
2027
2047
  get inputReadOnly(): boolean;
2028
2048
  setSearchEnabled(newValue: boolean): void;
@@ -2031,6 +2051,7 @@ export declare class DropdownListModel extends Base {
2031
2051
  onClear(event: any): void;
2032
2052
  getSelectedAction(): Action;
2033
2053
  keyHandler(event: any): void;
2054
+ onScroll(event: any): void;
2034
2055
  onBlur(event: any): void;
2035
2056
  scrollToFocusedItem(): void;
2036
2057
  }
@@ -2283,10 +2304,12 @@ export declare class KeyDuplicationError extends SurveyError {
2283
2304
  }
2284
2305
  export declare class List extends SurveyElementBase<IListProps, any> {
2285
2306
  constructor(props: any);
2307
+ listContainerRef: any;
2286
2308
  get model(): any;
2287
2309
  handleKeydown: (event: any) => void;
2288
2310
  handleMouseMove: (event: any) => void;
2289
2311
  getStateElement(): any;
2312
+ componentDidMount(): void;
2290
2313
  renderElement(): JSX.Element;
2291
2314
  renderItems(): any;
2292
2315
  searchElementContent(): JSX.Element;
@@ -2299,6 +2322,7 @@ export declare class ListItem extends SurveyElementBase<IListItemProps, any> {
2299
2322
  handleKeydown: (event: any) => void;
2300
2323
  getStateElement(): any;
2301
2324
  render(): JSX.Element;
2325
+ componentDidMount(): void;
2302
2326
  }
2303
2327
  /*
2304
2328
  * The class represents the string that supports multi-languages and markdown.
@@ -2794,11 +2818,11 @@ export declare class PopupModel<T = any> extends Base {
2794
2818
  displayMode: "popup" | "overlay";
2795
2819
  positionMode: any;
2796
2820
  onVisibilityChanged: EventBase<PopupModel<any>>;
2797
- onTargetModified: EventBase<Base>;
2821
+ onRecalculatePosition: EventBase<Base>;
2798
2822
  get isVisible(): boolean;
2799
2823
  set isVisible(val: boolean);
2800
2824
  toggleVisibility(): void;
2801
- targetModified(): void;
2825
+ recalculatePosition(isResetHeight: boolean): void;
2802
2826
  }
2803
2827
  /*
2804
2828
  * A Model for a survey running in the Popup Window.
@@ -2861,6 +2885,8 @@ export declare class PopupSurveyModel extends Base {
2861
2885
  get cssBody(): string;
2862
2886
  get cssHeaderRoot(): string;
2863
2887
  get cssHeaderTitle(): string;
2888
+ get renderedWidth(): string;
2889
+ width: string;
2864
2890
  protected createSurvey(jsonObj: any): SurveyModel;
2865
2891
  protected onSurveyComplete(): void;
2866
2892
  }
@@ -2898,6 +2924,7 @@ export declare class QuestionMatrixDropdownRenderedTable extends Base {
2898
2924
  isRequireReset(): boolean;
2899
2925
  get headerRow(): QuestionMatrixDropdownRenderedRow;
2900
2926
  get footerRow(): QuestionMatrixDropdownRenderedRow;
2927
+ get allowRowsDragAndDrop(): boolean;
2901
2928
  protected build(): void;
2902
2929
  updateShowTableAndAddRow(): void;
2903
2930
  onAddedRow(): void;
@@ -3111,6 +3138,7 @@ export declare class SurveyElementCore extends Base implements ILocalizableOwner
3111
3138
  getTitleToolbar(): AdaptiveActionContainer;
3112
3139
  getTitleOwner(): ITitleOwner;
3113
3140
  get isTitleOwner(): boolean;
3141
+ get isTitleRenderedAsString(): boolean;
3114
3142
  toggleState(): boolean;
3115
3143
  get cssClasses(): any;
3116
3144
  get cssTitle(): string;
@@ -3119,6 +3147,7 @@ export declare class SurveyElementCore extends Base implements ILocalizableOwner
3119
3147
  get titleAriaExpanded(): boolean;
3120
3148
  get ariaLabel(): string;
3121
3149
  get titleAriaLabel(): string;
3150
+ protected getIsTitleRenderedAsString(): boolean;
3122
3151
  getLocale(): string;
3123
3152
  getMarkdownHtml(text: string, name: string): string;
3124
3153
  getRenderer(name: string): string;
@@ -3467,7 +3496,6 @@ export declare class DropdownMultiSelectListModel extends DropdownListModel {
3467
3496
  closeOnSelect: boolean;
3468
3497
  protected override: any;
3469
3498
  createListModel(): MultiSelectListModel;
3470
- protected onSetFilterString(): void;
3471
3499
  selectAllItems(): void;
3472
3500
  selectNoneItem(): void;
3473
3501
  selectItem(id: string): void;
@@ -3552,16 +3580,22 @@ export declare class ListModel extends ActionContainer {
3552
3580
  constructor(items: any, onSelectionChanged: (item: Action, ...params: any) => void, allowSelection: boolean, selectedItem?: IAction, onFilterStringChangedCallback?: (text: string) => void);
3553
3581
  onSelectionChanged: (item: Action, ...params: any) => void;
3554
3582
  allowSelection: boolean;
3583
+ listContainerHtmlElement: any;
3584
+ loadingIndicatorValue: Action;
3555
3585
  searchEnabled: boolean;
3556
3586
  showFilter: boolean;
3557
3587
  isExpanded: boolean;
3558
3588
  selectedItem: IAction;
3559
3589
  focusedItem: Action;
3560
3590
  filterString: string;
3591
+ hasVerticalScroller: boolean;
3592
+ isAllDataLoaded: boolean;
3561
3593
  static INDENT: number;
3562
3594
  static MINELEMENTCOUNT: number;
3595
+ scrollHandler: (e?: any) => void;
3563
3596
  isItemVisible(item: Action): boolean;
3564
3597
  get visibleItems(): any;
3598
+ setItems(items: any, sortByVisibleIndex?: boolean): void;
3565
3599
  protected onSet(): void;
3566
3600
  protected getDefaultCssClasses(): any;
3567
3601
  protected updateItemActiveState(): void;
@@ -3573,6 +3607,9 @@ export declare class ListModel extends ActionContainer {
3573
3607
  getItemIndent: (itemValue: any) => string;
3574
3608
  get filterStringPlaceholder(): string;
3575
3609
  get emptyMessage(): string;
3610
+ get scrollableContainer(): any;
3611
+ get loadingText(): string;
3612
+ get loadingIndicator(): Action;
3576
3613
  goToItems(event: any): void;
3577
3614
  onMouseMove(event: any): void;
3578
3615
  onKeyDown(event: any): void;
@@ -3585,6 +3622,11 @@ export declare class ListModel extends ActionContainer {
3585
3622
  focusNextVisibleItem(): void;
3586
3623
  focusPrevVisibleItem(): void;
3587
3624
  selectFocusedItem(): void;
3625
+ initListContainerHtmlElement(htmlElement: any): void;
3626
+ onLastItemRended(item: Action): void;
3627
+ scrollToFocusedItem(): void;
3628
+ addScrollEventListener(handler: (e?: any) => void): void;
3629
+ removeScrollEventListener(): void;
3588
3630
  }
3589
3631
  export declare class MatrixDropdownRowModel extends MatrixDropdownRowModelBase {
3590
3632
  constructor(name: string, item: ItemValue, data: IMatrixDropdownData, value: any);
@@ -3651,6 +3693,7 @@ export declare class PopupDropdownViewModel extends PopupBaseViewModel {
3651
3693
  popupDirection: string;
3652
3694
  pointerTarget: IPosition;
3653
3695
  updateOnShowing(): void;
3696
+ updatePosition(isResetHeight: boolean, isDelayUpdating?: boolean): void;
3654
3697
  updateOnHiding(): void;
3655
3698
  }
3656
3699
  export declare class PopupModalViewModel extends PopupBaseViewModel {
@@ -3908,7 +3951,7 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
3908
3951
  getRenderer(name: string): string;
3909
3952
  getRendererContext(locStr: LocalizableString): any;
3910
3953
  getProcessedText(text: string): string;
3911
- protected getUseDisplayValuesInTitle(): boolean;
3954
+ protected getUseDisplayValuesInDynamicTexts(): boolean;
3912
3955
  protected removeSelfFromList(list: any): void;
3913
3956
  protected get textProcessor(): ITextProcessor;
3914
3957
  protected getProcessedHtml(html: string): string;
@@ -3919,7 +3962,7 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
3919
3962
  protected moveToBase(parent: IPanel, container: IPanel, insertBefore?: any): boolean;
3920
3963
  protected setPage(parent: IPanel, newPage: IPage): void;
3921
3964
  protected getSearchableLocKeys(keys: any): void;
3922
- protected get isDefaultV2Theme(): boolean;
3965
+ get isDefaultV2Theme(): boolean;
3923
3966
  get isErrorsModeTooltip(): boolean;
3924
3967
  protected getIsErrorsModeTooltip(): boolean;
3925
3968
  protected getIsTooltipErrorSupportedByParent(): boolean;
@@ -4440,6 +4483,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
4440
4483
  * - `options.visible` - A Boolean value that specifies the item visibility. Set it to `false` to hide the item.
4441
4484
  */
4442
4485
  onShowingChoiceItem: EventBase<SurveyModel>;
4486
+ onChoicesLazyLoad: EventBase<SurveyModel>;
4443
4487
  /*
4444
4488
  * The event is fired on adding a new row in Matrix Dynamic question.
4445
4489
  * - `sender` - the survey object that fires the event
@@ -5181,7 +5225,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
5181
5225
  *
5182
5226
  * If you want to skip empty answers, pass an object with the `includeEmpty` property set to `false`.
5183
5227
  */
5184
- getPlainData(options?: any): any;
5228
+ getPlainData(options?: any): Array<IQuestionPlainData>;
5185
5229
  getFilteredValues(): any;
5186
5230
  getFilteredProperties(): any;
5187
5231
  getDataValueCore(valuesHash: any, key: string): any;
@@ -5523,6 +5567,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
5523
5567
  whenPanelFocusIn(panel: IPanel): void;
5524
5568
  canChangeChoiceItemsVisibility(): boolean;
5525
5569
  getChoiceItemVisibility(question: IQuestion, item: any, val: boolean): boolean;
5570
+ loadQuestionChoices(options: any): void;
5526
5571
  matrixBeforeRowAdded(options: any): void;
5527
5572
  matrixRowAdded(question: IQuestion, row: any): void;
5528
5573
  getQuestionByValueNameFromArray(valueName: string, name: string, index: number): IQuestion;
@@ -5790,6 +5835,8 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
5790
5835
  */
5791
5836
  get widthMode(): string;
5792
5837
  set widthMode(val: string);
5838
+ calculatedWidthModeUpdater: any;
5839
+ setCalculatedWidthModeUpdater(): void;
5793
5840
  calculatedWidthMode: string;
5794
5841
  calculateWidthMode(): string;
5795
5842
  /*
@@ -6633,15 +6680,23 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
6633
6680
  set visible(val: boolean);
6634
6681
  protected onVisibleChanged(): void;
6635
6682
  /*
6636
- * Specifies whether to use display names for question values interpolated in the title. To interpolate question values, use curly brackets (`{}`).
6637
- *
6638
- * This property is useful when interpolated question values have both the `value` and `text` properties.
6683
+ * Specifies whether to use display names for question values in placeholders.
6639
6684
  *
6640
6685
  * Default value: `true`
6686
+ *
6687
+ * This property applies to questions whose values are defined as objects with the `value` and `text` properties (for example, [choice items](https://surveyjs.io/form-library/documentation/questionradiogroupmodel#choices) in Radiogroup, Checkbox, and Dropdown questions).
6688
+ *
6689
+ * You can use question values as placeholders in the following places:
6690
+ *
6691
+ * - Survey element titles and descriptions
6692
+ * - The [`expression`](https://surveyjs.io/form-library/documentation/questionexpressionmodel#expression) property of the [Expression](https://surveyjs.io/form-library/documentation/questionexpressionmodel) question
6693
+ * - The [`html`](https://surveyjs.io/form-library/documentation/questionhtmlmodel#html) property of the [HTML](https://surveyjs.io/form-library/documentation/questionhtmlmodel) question
6694
+ *
6695
+ * To use a question value as a placeholder, specify the question `name` in curly brackets: `{questionName}`. Refer to the following help topic for more information: [Dynamic Texts - Question Values](https://surveyjs.io/form-library/documentation/design-survey-conditional-logic#question-values).
6641
6696
  */
6642
- get useDisplayValuesInTitle(): boolean;
6643
- set useDisplayValuesInTitle(val: boolean);
6644
- protected getUseDisplayValuesInTitle(): boolean;
6697
+ get useDisplayValuesInDynamicTexts(): boolean;
6698
+ set useDisplayValuesInDynamicTexts(val: boolean);
6699
+ protected getUseDisplayValuesInDynamicTexts(): boolean;
6645
6700
  /*
6646
6701
  * A Boolean expression. If it evaluates to `false`, this question becomes hidden.
6647
6702
  *
@@ -6730,6 +6785,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
6730
6785
  get titleLocation(): string;
6731
6786
  set titleLocation(val: string);
6732
6787
  getTitleOwner(): ITitleOwner;
6788
+ protected getIsTitleRenderedAsString(): boolean;
6733
6789
  /*
6734
6790
  * Returns title location calculated based on the question's `titleLocation` property and the `questionTitleLocation` property of the question's containers (survey, page, or panel).
6735
6791
  */
@@ -6995,7 +7051,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
6995
7051
  *
6996
7052
  * Pass an object with the `includeEmpty` property set to `false` if you want to skip empty answers.
6997
7053
  */
6998
- getPlainData(options?: any): any;
7054
+ getPlainData(options?: any): IQuestionPlainData;
6999
7055
  /*
7000
7056
  * A correct answer to this question. Specify this property if you want to [create a quiz](https://surveyjs.io/form-library/documentation/design-survey-create-a-quiz).
7001
7057
  */
@@ -7082,6 +7138,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
7082
7138
  protected getValidName(name: string): string;
7083
7139
  updateValueFromSurvey(newValue: any): void;
7084
7140
  updateCommentFromSurvey(newValue: any): any;
7141
+ protected onChangeQuestionValue(newValue: any): void;
7085
7142
  protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
7086
7143
  onSurveyValueChanged(newValue: any): void;
7087
7144
  setVisibleIndex(val: number): number;
@@ -7522,10 +7579,12 @@ export declare class QuestionBooleanModel extends Question {
7522
7579
  set defaultValue(val: any);
7523
7580
  getDefaultValue(): any;
7524
7581
  get locTitle(): LocalizableString;
7582
+ showTitle: boolean;
7525
7583
  get label(): string;
7526
7584
  set label(val: string);
7527
7585
  get locLabel(): LocalizableString;
7528
- get locDisplayLabel(): LocalizableString;
7586
+ get isLabelRendered(): boolean;
7587
+ get canRenderLabelDescription(): boolean;
7529
7588
  /*
7530
7589
  * Gets or sets a text label that corresponds to a positive answer.
7531
7590
  *
@@ -7543,7 +7602,6 @@ export declare class QuestionBooleanModel extends Question {
7543
7602
  get labelFalse(): any;
7544
7603
  set labelFalse(val: any);
7545
7604
  get locLabelFalse(): LocalizableString;
7546
- showTitle: boolean;
7547
7605
  /*
7548
7606
  * A value to save in survey results when respondents give a positive answer.
7549
7607
  *
@@ -7719,6 +7777,7 @@ export declare class QuestionFileModel extends Question {
7719
7777
  * - `sender` - A question instance that raised the event.
7720
7778
  * - `options.state` - Current upload state: `"empty"`, `"loading"`, `"loaded"`, or `"error"`.
7721
7779
  */
7780
+ onUploadStateChanged: EventBase<QuestionFileModel>;
7722
7781
  onStateChanged: EventBase<QuestionFileModel>;
7723
7782
  previewValue: any;
7724
7783
  currentState: string;
@@ -7829,7 +7888,6 @@ export declare class QuestionFileModel extends Question {
7829
7888
  get showRemoveButton(): any;
7830
7889
  get showRemoveButtonBottom(): any;
7831
7890
  defaultImage(data: any): boolean;
7832
- get imageWidthRendered(): string;
7833
7891
  /*
7834
7892
  * Removes a file with a specified name.
7835
7893
  */
@@ -7841,15 +7899,15 @@ export declare class QuestionFileModel extends Question {
7841
7899
  loadFiles(files: any): void;
7842
7900
  canPreviewImage(fileItem: any): boolean;
7843
7901
  protected loadPreview(newValue: any): void;
7844
- protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
7845
7902
  protected onCheckForErrors(errors: any, isOnValueChanged: boolean): void;
7846
7903
  protected stateChanged(state: string): void;
7847
- getPlainData(options?: any): any;
7904
+ getPlainData(options?: any): IQuestionPlainData;
7848
7905
  supportComment(): boolean;
7849
7906
  getChooseFileCss(): string;
7850
7907
  getReadOnlyFileCss(): string;
7851
7908
  get fileRootCss(): string;
7852
7909
  getFileDecoratorCss(): string;
7910
+ protected onChangeQuestionValue(newValue: any): void;
7853
7911
  rootElement: any;
7854
7912
  afterRender(el: any): void;
7855
7913
  dragCounter: number;
@@ -7863,7 +7921,7 @@ export declare class QuestionFileModel extends Question {
7863
7921
  doDownloadFile: (event: any, data: any) => void;
7864
7922
  }
7865
7923
  /*
7866
- * A Model for a matrix base question.
7924
+ * A base class for all matrix question types.
7867
7925
  */
7868
7926
  export declare class QuestionMatrixBaseModel<TRow, TColumn> extends Question {
7869
7927
  constructor(name: string);
@@ -7877,34 +7935,56 @@ export declare class QuestionMatrixBaseModel<TRow, TColumn> extends Question {
7877
7935
  endLoadingFromJson(): void;
7878
7936
  get isCompositeQuestion(): boolean;
7879
7937
  /*
7880
- * Set this property to false, to hide table header. The default value is true.
7938
+ * Specifies whether to display the table header that contains column captions.
7939
+ *
7940
+ * Default value: `true`
7881
7941
  */
7882
7942
  get showHeader(): boolean;
7883
7943
  set showHeader(val: boolean);
7884
7944
  /*
7885
- * The list of columns. A column has a value and an optional text
7945
+ * An array of matrix columns.
7946
+ *
7947
+ * This array can contain primitive values or objects with the `text` (display value) and `value` (value to be saved in survey results) properties.
7948
+ *
7949
+ * [View Demo](https://surveyjs.io/form-library/examples/single-selection-matrix-table-question/ (linkStyle))
7886
7950
  */
7887
7951
  get columns(): any;
7888
7952
  set columns(val: any);
7889
7953
  get visibleColumns(): any;
7890
7954
  /*
7891
- * The list of rows. A row has a value and an optional text
7955
+ * An array of matrix rows.
7956
+ *
7957
+ * This array can contain primitive values or objects with the `text` (display value) and `value` (value to be saved in survey results) properties.
7958
+ *
7959
+ * [View Demo](https://surveyjs.io/form-library/examples/single-selection-matrix-table-question/ (linkStyle))
7892
7960
  */
7893
7961
  get rows(): any;
7894
7962
  set rows(val: any);
7895
7963
  protected processRowsOnSet(newRows: any): any;
7896
7964
  protected getVisibleRows(): Array<TRow>;
7897
7965
  /*
7898
- * Returns the list of visible rows as model objects.
7966
+ * Returns an array of visible matrix rows.
7899
7967
  */
7900
7968
  get visibleRows(): any;
7901
7969
  /*
7902
- * An expression that returns true or false. It runs against each row item and if for this item it returns true, then the item is visible otherwise the item becomes invisible. Please use {item} to get the current item value in the expression.
7970
+ * A Boolean expression that is evaluated against each matrix row. If the expression evaluates to `false`, the row becomes hidden.
7971
+ *
7972
+ * A survey parses and runs all expressions on startup. If any values used in the expression change, the survey re-evaluates it.
7973
+ *
7974
+ * Use the `{item}` placeholder to reference the current row in the expression.
7975
+ *
7976
+ * Refer to the following help topic for more information: [Conditional Visibility](https://surveyjs.io/form-library/documentation/design-survey-conditional-logic#conditional-visibility).
7903
7977
  */
7904
7978
  get rowsVisibleIf(): string;
7905
7979
  set rowsVisibleIf(val: string);
7906
7980
  /*
7907
- * An expression that returns true or false. It runs against each column item and if for this item it returns true, then the item is visible otherwise the item becomes invisible. Please use {item} to get the current item value in the expression.
7981
+ * A Boolean expression that is evaluated against each matrix column. If the expression evaluates to `false`, the column becomes hidden.
7982
+ *
7983
+ * A survey parses and runs all expressions on startup. If any values used in the expression change, the survey re-evaluates it.
7984
+ *
7985
+ * Use the `{item}` placeholder to reference the current column in the expression.
7986
+ *
7987
+ * Refer to the following help topic for more information: [Conditional Visibility](https://surveyjs.io/form-library/documentation/design-survey-conditional-logic#conditional-visibility).
7908
7988
  */
7909
7989
  get columnsVisibleIf(): string;
7910
7990
  set columnsVisibleIf(val: string);
@@ -7931,7 +8011,9 @@ export declare class QuestionMatrixBaseModel<TRow, TColumn> extends Question {
7931
8011
  alternateRows: boolean;
7932
8012
  }
7933
8013
  /*
7934
- * A Model for a multiple text question.
8014
+ * A class that describes the Multiple Text question type.
8015
+ *
8016
+ * [View Demo](https://surveyjs.io/form-library/examples/questiontype-multipletext/ (linkStyle))
7935
8017
  */
7936
8018
  export declare class QuestionMultipleTextModel extends Question implements IMultipleTextData, IPanel {
7937
8019
  constructor(name: string);
@@ -7945,12 +8027,12 @@ export declare class QuestionMultipleTextModel extends Question implements IMult
7945
8027
  setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
7946
8028
  onSurveyValueChanged(newValue: any): void;
7947
8029
  /*
7948
- * The list of input items.
8030
+ * An array of `MultipleTextItemModel` objects that represent input items.
7949
8031
  */
7950
8032
  get items(): any;
7951
8033
  set items(val: any);
7952
8034
  /*
7953
- * Add a new text item.
8035
+ * Adds a new input item.
7954
8036
  */
7955
8037
  addItem(name: string, title?: string): MultipleTextItemModel;
7956
8038
  getItemByName(name: string): MultipleTextItemModel;
@@ -7959,18 +8041,17 @@ export declare class QuestionMultipleTextModel extends Question implements IMult
7959
8041
  locStrsChanged(): void;
7960
8042
  supportGoNextPageAutomatic(): boolean;
7961
8043
  /*
7962
- * The number of columns. Items are rendred in one line if the value is 0.
8044
+ * The number of columns used to arrange input items. Accepts the following values: 1, 2, 3, 4, 5.
8045
+ *
8046
+ * Default value: 1
7963
8047
  */
7964
8048
  get colCount(): number;
7965
8049
  set colCount(val: number);
7966
8050
  /*
7967
- * The default text input size.
8051
+ * A value passed on to the [`size`](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/size) attribute of the underlying `<input>` elements.
7968
8052
  */
7969
8053
  get itemSize(): number;
7970
8054
  set itemSize(val: number);
7971
- /*
7972
- * Returns the list of rendered rows.
7973
- */
7974
8055
  getRows(): Array<any>;
7975
8056
  isMultipleItemValueChanging: boolean;
7976
8057
  protected onValueChanged(): void;
@@ -8300,7 +8381,7 @@ export declare class QuestionPanelDynamicModel extends Question implements IQues
8300
8381
  isSetPanelItemData: any;
8301
8382
  setPanelItemData(item: ISurveyData, name: string, val: any): void;
8302
8383
  getRootData(): ISurveyData;
8303
- getPlainData(options?: any): any;
8384
+ getPlainData(options?: any): IQuestionPlainData;
8304
8385
  updateElementCss(reNew?: boolean): void;
8305
8386
  get progressText(): string;
8306
8387
  get progress(): string;
@@ -8324,28 +8405,49 @@ export declare class QuestionPanelDynamicModel extends Question implements IQues
8324
8405
  updateFooterActionsCallback: any;
8325
8406
  }
8326
8407
  /*
8327
- * A Model for a rating question.
8408
+ * A class that describes the Rating question type.
8409
+ *
8410
+ * [View Demo](https://surveyjs.io/form-library/examples/questiontype-rating/ (linkStyle))
8328
8411
  */
8329
8412
  export declare class QuestionRatingModel extends Question {
8330
8413
  constructor(name: string);
8331
8414
  endLoadingFromJson(): void;
8332
8415
  /*
8333
- * The list of rate items. Every item has value and text. If text is empty, the value is rendered. The item text supports markdown. If it is empty the array is generated by using rateMin, rateMax and rateStep properties.
8416
+ * A list of rate values.
8417
+ *
8418
+ * This property accepts an array of objects with the following structure:
8419
+ *
8420
+ * ```js
8421
+ * {
8422
+ * "value": any, // A value to be saved in survey results
8423
+ * "text": String, // A display text. This property supports Markdown. When `text` is undefined, `value` is used.
8424
+ * }
8425
+ * ```
8426
+ *
8427
+ * If you need to specify only the `value` property, you can set the `rateValues` property to an array of numbers, for example, `[ 3, 6, 10 ]`. These values are both saved in survey results and used as display text.
8428
+ *
8429
+ * If you do not specify the `rateValues` property, rate values are generated automatically based upon the `rateMin`, `rateMax`, and `rateStep` property values.
8334
8430
  */
8335
8431
  get rateValues(): any;
8336
8432
  set rateValues(val: any);
8337
8433
  /*
8338
- * This property is used to generate rate values if rateValues array is empty. It is the first value in the rating. The default value is 1.
8434
+ * Specifies the first rate value in the generated sequence of rate values. Applies if the `rateValues` array is empty.
8435
+ *
8436
+ * Default value: 1
8339
8437
  */
8340
8438
  get rateMin(): number;
8341
8439
  set rateMin(val: number);
8342
8440
  /*
8343
- * This property is used to generate rate values if rateValues array is empty. It is the last value in the rating. The default value is 5.
8441
+ * Specifies the last rate value in the generated sequence of rate values. Applies if the `rateValues` array is empty.
8442
+ *
8443
+ * Default value: 5
8344
8444
  */
8345
8445
  get rateMax(): number;
8346
8446
  set rateMax(val: number);
8347
8447
  /*
8348
- * This property is used to generate rate values if rateValues array is empty. It is the step value. The number of rate values are (rateMax - rateMin) / rateStep. The default value is 1.
8448
+ * Specifies a step with which to generate rate values. Applies if the `rateValues` array is empty.
8449
+ *
8450
+ * Default value: 1
8349
8451
  */
8350
8452
  get rateStep(): number;
8351
8453
  set rateStep(val: number);
@@ -8360,13 +8462,13 @@ export declare class QuestionRatingModel extends Question {
8360
8462
  supportComment(): boolean;
8361
8463
  supportOther(): boolean;
8362
8464
  /*
8363
- * The description of minimum (first) item.
8465
+ * Specifies a description for the minimum (first) rate value.
8364
8466
  */
8365
8467
  get minRateDescription(): string;
8366
8468
  set minRateDescription(val: string);
8367
8469
  get locMinRateDescription(): LocalizableString;
8368
8470
  /*
8369
- * The description of maximum (last) item.
8471
+ * Specifies a description for the maximum (last) rate value.
8370
8472
  */
8371
8473
  get maxRateDescription(): string;
8372
8474
  set maxRateDescription(val: string);
@@ -8376,8 +8478,13 @@ export declare class QuestionRatingModel extends Question {
8376
8478
  get hasMinLabel(): boolean;
8377
8479
  get hasMaxLabel(): boolean;
8378
8480
  /*
8379
- * Specifies whether a Rating question displays the [minRateDescription](https://surveyjs.io/Documentation/Library?id=questionratingmodel#minRateDescription) and [maxRateDescription](https://surveyjs.io/Documentation/Library?id=questionratingmodel#maxRateDescription) property texts as buttons that correspond to the extreme (first and last) rate items. If any of these properties is empty, the corresponding rate item's value/text is used for display.
8380
- * When the `displayRateDescriptionsAsExtremeItems` property is disabled, the texts defined through the [minRateDescription](https://surveyjs.io/Documentation/Library?id=questionratingmodel#minRateDescription) and [maxRateDescription](https://surveyjs.io/Documentation/Library?id=questionratingmodel#maxRateDescription) properties are displayed as plain non-clickable texts.
8481
+ * Specifies whether to display `minRateDescription` and `maxRateDescription` values as captions for buttons that correspond to the extreme (first and last) rate values.
8482
+ *
8483
+ * Default value: `false`
8484
+ *
8485
+ * If this property is disabled, the `minRateDescription` and `maxRateDescription` values are displayed as plain non-clickable texts.
8486
+ *
8487
+ * If any of the `minRateDescription` and `maxRateDescription` properties is empty, the corresponding rate value's `value` or `text` is displayed as a button caption.
8381
8488
  */
8382
8489
  displayRateDescriptionsAsExtremeItems: boolean;
8383
8490
  /*
@@ -8391,9 +8498,6 @@ export declare class QuestionRatingModel extends Question {
8391
8498
  */
8392
8499
  displayMode: "dropdown" | "auto" | "buttons";
8393
8500
  protected valueToData(val: any): any;
8394
- /*
8395
- * Click value again to clear.
8396
- */
8397
8501
  setValueFromClick(value: any): void;
8398
8502
  get ratingRootCss(): string;
8399
8503
  getItemClass(item: ItemValue): string;
@@ -8639,7 +8743,7 @@ export declare class QuestionSelectBase extends Question {
8639
8743
  protected canShowOptionItem(item: ItemValue, isAddAll: boolean, hasItem: boolean): boolean;
8640
8744
  isItemInList(item: ItemValue): boolean;
8641
8745
  protected get isAddDefaultItems(): boolean;
8642
- getPlainData(options?: any): any;
8746
+ getPlainData(options?: any): IQuestionPlainData;
8643
8747
  protected getDisplayValueCore(keysAsText: boolean, value: any): any;
8644
8748
  protected getDisplayValueEmpty(): string;
8645
8749
  protected getChoicesDisplayValue(items: any, val: any): any;
@@ -8726,7 +8830,9 @@ export declare class QuestionSelectBase extends Question {
8726
8830
  set itemComponent(val: string);
8727
8831
  }
8728
8832
  /*
8729
- * A Model for signature pad question.
8833
+ * A class that describes the Signature Page question type.
8834
+ *
8835
+ * [View Demo](https://surveyjs.io/form-library/examples/signature-pad-widget-javascript/ (linkStyle))
8730
8836
  */
8731
8837
  export declare class QuestionSignaturePadModel extends Question {
8732
8838
  constructor(name: string);
@@ -8739,41 +8845,45 @@ export declare class QuestionSignaturePadModel extends Question {
8739
8845
  initSignaturePad(el: any): void;
8740
8846
  destroySignaturePad(el: any): void;
8741
8847
  /*
8742
- * Use it to set the specific dataFormat for the signature pad image data.
8743
- * formats: "" (default) - png, "image/jpeg" - jpeg, "image/svg+xml" - svg
8848
+ * Specifies the format in which to store the signature image.
8849
+ *
8850
+ * Possible values:
8851
+ *
8852
+ * - `""` (default) - PNG
8853
+ * - `"image/jpeg"` - JPEG
8854
+ * - `"image/svg+xml"` - SVG
8744
8855
  */
8745
8856
  dataFormat: string;
8746
8857
  /*
8747
- * Use it to set the specific width for the signature pad.
8858
+ * Specifies the width of the signature area. Accepts positive integer numbers.
8748
8859
  */
8749
8860
  get signatureWidth(): number;
8750
8861
  set signatureWidth(val: number);
8751
8862
  /*
8752
- * Use it to set the specific height for the signature pad.
8863
+ * Specifies the height of the signature area. Accepts positive integer numbers.
8753
8864
  */
8754
8865
  get signatureHeight(): number;
8755
8866
  set signatureHeight(val: number);
8756
8867
  get height(): number;
8757
8868
  set height(val: number);
8758
8869
  /*
8759
- * Use it to clear content of the signature pad.
8870
+ * Specifies whether to display a button that clears the signature area.
8871
+ *
8872
+ * Default value: `true`
8760
8873
  */
8761
8874
  get allowClear(): boolean;
8762
8875
  set allowClear(val: boolean);
8763
8876
  get canShowClearButton(): boolean;
8764
8877
  /*
8765
- * Use it to set pen color for the signature pad.
8878
+ * Specifies a color for the pen. Accepts hexadecimal colors (`"#FF0000"`), RGB colors (`"rgb(255,0,0)"`), or color names (`"red"`).
8766
8879
  */
8767
8880
  get penColor(): string;
8768
8881
  set penColor(val: string);
8769
8882
  /*
8770
- * Use it to set background color for the signature pad.
8883
+ * Specifies a color for the signature area background. Accepts hexadecimal colors (`"#FF0000"`), RGB colors (`"rgb(255,0,0)"`), or color names (`"red"`).
8771
8884
  */
8772
8885
  get backgroundColor(): string;
8773
8886
  set backgroundColor(val: string);
8774
- /*
8775
- * The clear signature button caption.
8776
- */
8777
8887
  get clearButtonCaption(): string;
8778
8888
  needShowPlaceholder(): boolean;
8779
8889
  get placeHolderText(): string;
@@ -9003,6 +9113,7 @@ export declare class QuestionCustomModel extends QuestionCustomModelBase {
9003
9113
  export declare class QuestionDropdownModel extends QuestionSelectBase {
9004
9114
  constructor(name: string);
9005
9115
  dropdownListModel: DropdownListModel;
9116
+ lastSelectedItemValue: ItemValue;
9006
9117
  updateReadOnlyText(): void;
9007
9118
  locStrsChanged(): void;
9008
9119
  get showOptionsCaption(): boolean;
@@ -9058,11 +9169,8 @@ export declare class QuestionDropdownModel extends QuestionSelectBase {
9058
9169
  */
9059
9170
  get choicesStep(): number;
9060
9171
  set choicesStep(val: number);
9061
- /*
9062
- * An [autocomplete](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) attribute value for the underlying `<input>` element.
9063
- */
9064
- get autoComplete(): string;
9065
- set autoComplete(val: string);
9172
+ get autocomplete(): string;
9173
+ set autocomplete(val: string);
9066
9174
  /*
9067
9175
  * Specifies whether to display a button that clears the selected value.
9068
9176
  */
@@ -9073,6 +9181,8 @@ export declare class QuestionDropdownModel extends QuestionSelectBase {
9073
9181
  searchEnabled: boolean;
9074
9182
  inputHasValue: boolean;
9075
9183
  readOnlyText: string;
9184
+ choicesLazyLoadEnabled: boolean;
9185
+ choicesLazyLoadPageSize: number;
9076
9186
  getControlClass(): string;
9077
9187
  get selectedItemLocText(): LocalizableString;
9078
9188
  get inputFieldComponentName(): string;
@@ -9084,11 +9194,14 @@ export declare class QuestionDropdownModel extends QuestionSelectBase {
9084
9194
  protected onVisibleChoicesChanged(): void;
9085
9195
  protected getFirstInputElementId(): string;
9086
9196
  getInputId(): string;
9197
+ clearValue(): void;
9087
9198
  onClick(e: any): void;
9088
9199
  onKeyUp(event: any): void;
9089
9200
  }
9090
9201
  /*
9091
- * A Model for html question. Unlike other questions it doesn't have value and title.
9202
+ * A class that describes the Html question type. Unlike other question types, Html cannot have a title or value.
9203
+ *
9204
+ * [View Demo](https://surveyjs.io/form-library/examples/questiontype-html/ (linkStyle))
9092
9205
  */
9093
9206
  export declare class QuestionHtmlModel extends QuestionNonValue {
9094
9207
  constructor(name: string);
@@ -9097,7 +9210,9 @@ export declare class QuestionHtmlModel extends QuestionNonValue {
9097
9210
  get isCompositeQuestion(): boolean;
9098
9211
  getProcessedText(text: string): string;
9099
9212
  /*
9100
- * Set html to display it
9213
+ * HTML markup to display.
9214
+ *
9215
+ * > IMPORTANT: If you get the markup from a third party, ensure that it does not contain malicious code.
9101
9216
  */
9102
9217
  get html(): string;
9103
9218
  set html(val: string);
@@ -9105,7 +9220,9 @@ export declare class QuestionHtmlModel extends QuestionNonValue {
9105
9220
  get processedHtml(): string;
9106
9221
  }
9107
9222
  /*
9108
- * A Model for image question. This question hasn't any functionality and can be used to improve the appearance of the survey.
9223
+ * A class that describes the Image question type. Unlike other question types, Image cannot have a title or value.
9224
+ *
9225
+ * [View Demo](https://surveyjs.io/form-library/examples/questiontype-image/ (linkStyle))
9109
9226
  */
9110
9227
  export declare class QuestionImageModel extends QuestionNonValue {
9111
9228
  constructor(name: string);
@@ -9113,48 +9230,65 @@ export declare class QuestionImageModel extends QuestionNonValue {
9113
9230
  get isCompositeQuestion(): boolean;
9114
9231
  onSurveyLoad(): void;
9115
9232
  /*
9116
- * The image URL.
9233
+ * Specifies an image or video URL.
9117
9234
  */
9118
9235
  get imageLink(): string;
9119
9236
  set imageLink(val: string);
9120
9237
  get locImageLink(): LocalizableString;
9121
9238
  /*
9122
- * The image alt text.
9239
+ * Specifies a value for the `alt` attribute of the underlying `<img>` element.
9123
9240
  */
9124
9241
  get altText(): string;
9125
9242
  set altText(val: string);
9126
9243
  get locAltText(): LocalizableString;
9127
9244
  /*
9128
- * The image height.
9245
+ * Specifies the height of a container for the image or video. Accepts positive numbers and CSS values.
9246
+ *
9247
+ * Default value: 150
9248
+ *
9249
+ * Use the `imageFit` property to specify how to fit the image or video into the container.
9129
9250
  */
9130
9251
  get imageHeight(): string;
9131
9252
  set imageHeight(val: string);
9132
9253
  get renderedHeight(): string;
9133
9254
  /*
9134
- * The image width.
9255
+ * Specifies the width of a container for the image or video. Accepts positive numbers and CSS values.
9256
+ *
9257
+ * Default value: 200
9258
+ *
9259
+ * Use the `imageFit` property to specify how to fit the image or video into the container.
9135
9260
  */
9136
9261
  get imageWidth(): string;
9137
9262
  set imageWidth(val: string);
9138
9263
  get renderedWidth(): string;
9139
9264
  /*
9140
- * The image fit mode.
9265
+ * Specifies how to resize the image or video to fit it into its container.
9266
+ *
9267
+ * Refer to the [`object-fit`](https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit) CSS property description for information on accepted values.
9141
9268
  */
9142
9269
  get imageFit(): string;
9143
9270
  set imageFit(val: string);
9144
9271
  /*
9145
- * The content mode.
9272
+ * Specifies the type of content that the Image question displays.
9273
+ *
9274
+ * Possible values:
9275
+ *
9276
+ * - `"image"` - An image in one of the following formats: JPEG, GIF, PNG, APNG, SVG, BMP, ICO.
9277
+ * - `"video"` - A video in one of the following formats: MP4, MOV, WMV, FLV, AVI, MKV.
9278
+ * - `"youtube"` - A link to a YouTube video.
9279
+ * - `"auto"` (default) - Selects one of the above based on the [`imageLink`](https://surveyjs.io/form-library/documentation/questionimagemodel#imageLink) property.
9146
9280
  */
9147
9281
  get contentMode(): string;
9148
9282
  set contentMode(val: string);
9149
9283
  /*
9150
- * The rendered mode.
9284
+ * Returns the type of content that the Image question displays: `"image"`, `"video"`, or `"youtube"`.
9151
9285
  */
9152
9286
  get renderedMode(): string;
9153
9287
  getImageCss(): string;
9154
9288
  protected calculateRenderedMode(): void;
9155
9289
  }
9156
9290
  /*
9157
- * A base class for matrix dropdown and matrix dynamic questions.
9291
+ * A base class for the [QuestionMatrixDropdownModel](https://surveyjs.io/form-library/documentation/questionmatrixdropdownmodel) and [QuestionMatrixDynamicModel](https://surveyjs.io/form-library/documentation/questionmatrixdynamicmodel) classes.
9158
9292
  */
9159
9293
  export declare class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseModel<MatrixDropdownRowModelBase, MatrixDropdownColumn> implements IMatrixDropdownData {
9160
9294
  constructor(name: string);
@@ -9210,34 +9344,53 @@ export declare class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseM
9210
9344
  protected updateColumnsAndRows(): void;
9211
9345
  itemValuePropertyChanged(item: ItemValue, name: string, oldValue: any, newValue: any): void;
9212
9346
  /*
9213
- * Set columnLayout to 'vertical' to place columns vertically and rows horizontally. It makes sense when we have many columns and few rows.
9347
+ * Specifies the matrix layout. Set this property to `"vertical"` if you want to display columns instead of rows and rows instead of columns.
9348
+ *
9349
+ * Default value: `"horizontal"`
9214
9350
  */
9215
9351
  get columnLayout(): string;
9216
9352
  set columnLayout(val: string);
9217
9353
  get columnsLocation(): string;
9218
9354
  set columnsLocation(val: string);
9219
9355
  /*
9220
- * Returns true if columns are located horizontally
9356
+ * Returns `true` if columns are placed in the horizontal direction and rows in the vertical direction.
9357
+ *
9358
+ * To specify the layout, use the `columnLayout` property. If you set it to `"vertical"`, the survey applies it only when the screen has enough space. Otherwise, the survey falls back to the horizontal layout, but the `columnLayout` property remains set to `"vertical"`. Unlike `columnLayout`, the `isColumnLayoutHorizontal` property always indicates the current layout.
9221
9359
  */
9222
9360
  get isColumnLayoutHorizontal(): boolean;
9223
9361
  /*
9224
- * Set this property to true if you want to differ case sensitive values in unique columns, for example to allow enter "ABC" into the first row and "abc" into the second.
9225
- * It doesn't allow by default.
9362
+ * Enables case-sensitive comparison in columns with the `isUnique` property set to `true`.
9363
+ *
9364
+ * When this property is `true`, `"ABC"` and `"abc"` are considered different values.
9365
+ *
9366
+ * Default value: `false`
9226
9367
  */
9227
9368
  get isUniqueCaseSensitive(): boolean;
9228
9369
  set isUniqueCaseSensitive(val: boolean);
9229
9370
  /*
9230
- * Set the value to "underRow" to show the detailPanel under the row.
9371
+ * Specifies the location of detail sections.
9372
+ *
9373
+ * Possible values:
9374
+ *
9375
+ * - `"underRow"` - Displays detail sections under their respective rows. Users can expand any number of detail sections.
9376
+ * - `"underRowSingle"` - Displays detail sections under their respective rows, but only one detail section can be expanded at a time.
9377
+ * - `"none"` (default) - Hides detail sections.
9378
+ *
9379
+ * Use the `detailElements` property to specify content of detail sections.
9231
9380
  */
9232
9381
  get detailPanelMode(): string;
9233
9382
  set detailPanelMode(val: string);
9234
9383
  /*
9235
- * The detail template Panel. This panel is used as a template on creating detail panel for a row.
9384
+ * Contains a [`PanelModel`](https://surveyjs.io/form-library/documentation/panelmodel) instance that represents a detail section template.
9236
9385
  */
9237
9386
  get detailPanel(): PanelModel;
9238
9387
  getPanel(): IPanel;
9239
9388
  /*
9240
- * The template Panel elements, questions and panels.
9389
+ * An array of survey elements (questions and panels) to be displayed in detail sections.
9390
+ *
9391
+ * Detail sections are expandable panels displayed under each matrix row. You can use them to display questions that do not fit into the row.
9392
+ *
9393
+ * Set the `detailPanelMode` property to `"underRow"` or `"underRowSingle"` to display detail sections.
9241
9394
  */
9242
9395
  get detailElements(): any;
9243
9396
  protected createNewDetailPanel(): PanelModel;
@@ -9259,12 +9412,27 @@ export declare class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseM
9259
9412
  protected createRenderedTable(): QuestionMatrixDropdownRenderedTable;
9260
9413
  protected onMatrixRowCreated(row: MatrixDropdownRowModelBase): void;
9261
9414
  /*
9262
- * Use this property to change the default cell type.
9415
+ * Specifies the type of matrix cells. You can override this property for individual columns.
9416
+ *
9417
+ * Possible values:
9418
+ *
9419
+ * - `"dropdown"`
9420
+ * - `"checkbox"`
9421
+ * - `"radiogroup"`
9422
+ * - `"text"`
9423
+ * - `"comment"`
9424
+ * - `"boolean"`
9425
+ * - `"expression"`
9426
+ * - `"rating"`
9427
+ *
9428
+ * Default value: "dropdown" (inherited from [`settings.matrixDefaultCellType`](https://surveyjs.io/form-library/documentation/settings#matrixDefaultCellType))
9263
9429
  */
9264
9430
  get cellType(): string;
9265
9431
  set cellType(val: string);
9266
9432
  /*
9267
- * The default column count for radiogroup and checkbox cell types.
9433
+ * Specifies the number of columns in Radiogroup and Checkbox cells.
9434
+ *
9435
+ * Default value: 0 (the number of columns is selected automatically based on the available column width)
9268
9436
  */
9269
9437
  get columnColCount(): number;
9270
9438
  set columnColCount(val: number);
@@ -9273,14 +9441,8 @@ export declare class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseM
9273
9441
  */
9274
9442
  get columnMinWidth(): string;
9275
9443
  set columnMinWidth(val: string);
9276
- /*
9277
- * Set this property to true to show the horizontal scroll.
9278
- */
9279
9444
  get horizontalScroll(): boolean;
9280
9445
  set horizontalScroll(val: boolean);
9281
- /*
9282
- * The Matrix toolbar and inner panel toolbars get adaptive if the property is set to true.
9283
- */
9284
9446
  get allowAdaptiveActions(): boolean;
9285
9447
  set allowAdaptiveActions(val: boolean);
9286
9448
  getRequiredText(): string;
@@ -9308,21 +9470,29 @@ export declare class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseM
9308
9470
  protected runTotalsCondition(values: any, properties: any): void;
9309
9471
  locStrsChanged(): void;
9310
9472
  /*
9311
- * Returns the column by it's name. Returns null if a column with this name doesn't exist.
9473
+ * Returns a matrix column with a given `name` or `null` if a column with this is not found.
9312
9474
  */
9313
9475
  getColumnByName(columnName: string): MatrixDropdownColumn;
9314
9476
  getColumnName(columnName: string): MatrixDropdownColumn;
9315
- /*
9316
- * Returns the column width.
9317
- */
9318
9477
  getColumnWidth(column: MatrixDropdownColumn): string;
9319
9478
  /*
9320
- * The default choices for dropdown, checkbox and radiogroup cell types.
9479
+ * Gets or sets choice items for Dropdown, Checkbox, and Radiogroup matrix cells. You can override this property for individual columns.
9480
+ *
9481
+ * This property accepts an array of objects with the following structure:
9482
+ *
9483
+ * ```js
9484
+ * {
9485
+ * "value": any, // A value to be saved in survey results
9486
+ * "text": String, // A display text. This property supports Markdown. When `text` is undefined, `value` is used.
9487
+ * }
9488
+ * ```
9489
+ *
9490
+ * If you need to specify only the `value` property, you can set the `choices` property to an array of primitive values, for example, `[ "item1", "item2", "item3" ]`. These values are both saved in survey results and used as display text.
9321
9491
  */
9322
9492
  get choices(): any;
9323
9493
  set choices(val: any);
9324
9494
  /*
9325
- * The default placeholder for dropdown cell type.
9495
+ * A placeholder for Dropdown matrix cells.
9326
9496
  */
9327
9497
  get placeholder(): string;
9328
9498
  set placeholder(val: string);
@@ -9330,7 +9500,9 @@ export declare class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseM
9330
9500
  get optionsCaption(): string;
9331
9501
  set optionsCaption(val: string);
9332
9502
  /*
9333
- * The duplication value error text. Set it to show the text different from the default.
9503
+ * An error message displayed when users enter a duplicate value into a column that accepts only unique values (`isUnique` is set to `true` or `keyName` is specified).
9504
+ *
9505
+ * A default value for this property is taken from a [localization dictionary](https://github.com/surveyjs/survey-library/tree/master/src/localization). Refer to the following help topic for more information: [Localization & Globalization](https://surveyjs.io/form-library/documentation/localization).
9334
9506
  */
9335
9507
  get keyDuplicationError(): string;
9336
9508
  set keyDuplicationError(val: string);
@@ -9343,12 +9515,12 @@ export declare class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseM
9343
9515
  get visibleTotalRow(): MatrixDropdownRowModelBase;
9344
9516
  onSurveyLoad(): void;
9345
9517
  /*
9346
- * Returns the row value. If the row value is empty, the object is empty: {}.
9518
+ * Returns an object with row values. If a row has no answers, this method returns an empty object.
9347
9519
  */
9348
9520
  getRowValue(rowIndex: number): any;
9349
9521
  checkIfValueInRowDuplicated(checkedRow: MatrixDropdownRowModelBase, cellQuestion: Question): boolean;
9350
9522
  /*
9351
- * Set the row value.
9523
+ * Assigns values to a row.
9352
9524
  */
9353
9525
  setRowValue(rowIndex: number, rowValue: any): any;
9354
9526
  protected generateRows(): Array<MatrixDropdownRowModelBase>;
@@ -9357,7 +9529,7 @@ export declare class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseM
9357
9529
  protected getRowValueCore(row: MatrixDropdownRowModelBase, questionValue: any, create?: boolean): any;
9358
9530
  protected getRowObj(row: MatrixDropdownRowModelBase): any;
9359
9531
  protected getRowDisplayValue(keysAsText: boolean, row: MatrixDropdownRowModelBase, rowValue: any): any;
9360
- getPlainData(options?: any): any;
9532
+ getPlainData(options?: any): IQuestionPlainData;
9361
9533
  addConditionObjectsByContext(objects: any, context: any): void;
9362
9534
  protected getConditionObjectRowName(index: number): string;
9363
9535
  protected getConditionObjectRowText(index: number): string;
@@ -9415,7 +9587,9 @@ export declare class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseM
9415
9587
  protected getIsTooltipErrorInsideSupported(): boolean;
9416
9588
  }
9417
9589
  /*
9418
- * A Model for a simple matrix question.
9590
+ * A class that describes the Single-Choice Matrix question type.
9591
+ *
9592
+ * [View Demo](https://surveyjs.io/form-library/examples/single-selection-matrix-table-question/ (linkStyle))
9419
9593
  */
9420
9594
  export declare class QuestionMatrixModel extends QuestionMatrixBaseModel<MatrixRowModel, ItemValue> implements IMatrixData, IMatrixCellsOwner {
9421
9595
  constructor(name: string);
@@ -9424,21 +9598,23 @@ export declare class QuestionMatrixModel extends QuestionMatrixBaseModel<MatrixR
9424
9598
  getType(): string;
9425
9599
  get hasSingleInput(): boolean;
9426
9600
  /*
9427
- * Set this property to true, if you want a user to answer all rows.
9601
+ * Specifies whether each row requires an answer. If a respondent skips a row, the question displays a validation error.
9428
9602
  */
9429
9603
  get isAllRowRequired(): boolean;
9430
9604
  set isAllRowRequired(val: boolean);
9431
- /*
9432
- * Returns true, if there is at least one row.
9433
- */
9434
9605
  get hasRows(): boolean;
9435
9606
  /*
9436
- * Use this property to render items in a specific order: "random" or "initial". Default is "initial".
9607
+ * Specifies a sort order for matrix rows.
9608
+ *
9609
+ * Possible values:
9610
+ *
9611
+ * - "initial" (default) - Preserves the original order of the `rows` array.
9612
+ * - "random" - Arranges matrix rows in random order each time the question is displayed.
9437
9613
  */
9438
9614
  get rowsOrder(): string;
9439
9615
  set rowsOrder(val: string);
9440
9616
  /*
9441
- * Set this property to true to hide the question if there is no visible rows in the matrix.
9617
+ * Specifies whether to hide the question when the matrix has no visible rows.
9442
9618
  */
9443
9619
  get hideIfRowsEmpty(): boolean;
9444
9620
  set hideIfRowsEmpty(val: boolean);
@@ -9453,9 +9629,6 @@ export declare class QuestionMatrixModel extends QuestionMatrixBaseModel<MatrixR
9453
9629
  protected sortVisibleRows(array: any): Array<MatrixRowModel>;
9454
9630
  endLoadingFromJson(): void;
9455
9631
  protected processRowsOnSet(newRows: any): any;
9456
- /*
9457
- * Returns the list of visible rows as model objects.
9458
- */
9459
9632
  get visibleRows(): any;
9460
9633
  get cells(): MatrixCells;
9461
9634
  set cells(val: MatrixCells);
@@ -9474,7 +9647,7 @@ export declare class QuestionMatrixModel extends QuestionMatrixBaseModel<MatrixR
9474
9647
  protected onMatrixRowCreated(row: MatrixRowModel): void;
9475
9648
  protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
9476
9649
  protected getDisplayValueCore(keysAsText: boolean, value: any): any;
9477
- getPlainData(options?: any): any;
9650
+ getPlainData(options?: any): IQuestionPlainData;
9478
9651
  addConditionObjectsByContext(objects: any, context: any): void;
9479
9652
  getConditionJson(operator?: string, path?: string): any;
9480
9653
  protected clearValueIfInvisibleCore(): void;
@@ -9488,7 +9661,9 @@ export declare class QuestionMatrixModel extends QuestionMatrixBaseModel<MatrixR
9488
9661
  getRowHeaderWrapperComponentData(cell: ItemValue): any;
9489
9662
  }
9490
9663
  /*
9491
- * A Model for an input text question.
9664
+ * A class that describes the Text question type.
9665
+ *
9666
+ * [View Demo](https://surveyjs.io/form-library/examples/questiontype-text/ (linkStyle))
9492
9667
  */
9493
9668
  export declare class QuestionTextModel extends QuestionTextBase {
9494
9669
  constructor(name: string);
@@ -9499,7 +9674,7 @@ export declare class QuestionTextModel extends QuestionTextBase {
9499
9674
  getType(): string;
9500
9675
  onSurveyLoad(): void;
9501
9676
  /*
9502
- * Use this property to change the default input type.
9677
+ * A value passed on to the [`type`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#input_types) attribute of the underlying `<input>` element.
9503
9678
  */
9504
9679
  get inputType(): string;
9505
9680
  set inputType(val: string);
@@ -9507,7 +9682,7 @@ export declare class QuestionTextModel extends QuestionTextBase {
9507
9682
  getValidators(): Array<SurveyValidator>;
9508
9683
  isLayoutTypeSupported(layoutType: string): boolean;
9509
9684
  /*
9510
- * The text input size
9685
+ * A value passed on to the [`size`](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/size) attribute of the underlying `<input>` element.
9511
9686
  */
9512
9687
  get size(): number;
9513
9688
  set size(val: number);
@@ -9517,52 +9692,52 @@ export declare class QuestionTextModel extends QuestionTextBase {
9517
9692
  get inputWidth(): string;
9518
9693
  updateInputSize(): void;
9519
9694
  /*
9520
- * Text auto complete
9695
+ * A value passed on to the [`autocomplete`](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) attribute of the underlying `<input>` element.
9521
9696
  */
9522
- get autoComplete(): string;
9523
- set autoComplete(val: string);
9697
+ get autocomplete(): string;
9698
+ set autocomplete(val: string);
9524
9699
  /*
9525
- * The minimum value
9700
+ * A value passed on to the [`min`](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/min) attribute of the underlying `<input>` element.
9526
9701
  */
9527
9702
  get min(): string;
9528
9703
  set min(val: string);
9529
9704
  /*
9530
- * The maximum value
9705
+ * A value passed on to the [`max`](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/max) attribute of the underlying `<input>` element.
9531
9706
  */
9532
9707
  get max(): string;
9533
9708
  set max(val: string);
9534
9709
  /*
9535
- * The minimum value that you can setup as expression, for example today(-1) = yesterday;
9710
+ * The minimum value specified as an expression. For example, `"minValueExpression": "today(-1)"` sets the minimum value to yesterday.
9536
9711
  */
9537
9712
  get minValueExpression(): string;
9538
9713
  set minValueExpression(val: string);
9539
9714
  /*
9540
- * The maximum value that you can setup as expression, for example today(1) = tomorrow;
9715
+ * The maximum value specified as an expression. For example, `"maxValueExpression": "today(1)"` sets the maximum value to tomorrow.
9541
9716
  */
9542
9717
  get maxValueExpression(): string;
9543
9718
  set maxValueExpression(val: string);
9544
9719
  get renderedMin(): any;
9545
9720
  get renderedMax(): any;
9546
9721
  /*
9547
- * The text that shows when value is less than min property.
9722
+ * An error message to display when the question value is less than the minimum accepted value.
9548
9723
  */
9549
9724
  get minErrorText(): string;
9550
9725
  set minErrorText(val: string);
9551
9726
  get locMinErrorText(): LocalizableString;
9552
9727
  /*
9553
- * The text that shows when value is greater than man property.
9728
+ * An error message to display when the question value exceeds the maximum accepted value.
9554
9729
  */
9555
9730
  get maxErrorText(): string;
9556
9731
  set maxErrorText(val: string);
9557
9732
  get locMaxErrorText(): LocalizableString;
9558
9733
  /*
9559
- * Readonly property that returns true if the current inputType allows to set min and max properties
9734
+ * Returns `true` if the specified `inputType` supports the `min` and `max` properties.
9560
9735
  */
9561
9736
  get isMinMaxType(): boolean;
9562
9737
  protected onCheckForErrors(errors: any, isOnValueChanged: boolean): void;
9563
9738
  protected canSetValueToSurvey(): boolean;
9564
9739
  /*
9565
- * The step value
9740
+ * A value passed on to the [`step`](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/step) attribute of the underlying `<input>` element.
9566
9741
  */
9567
9742
  get step(): string;
9568
9743
  set step(val: string);
@@ -9570,7 +9745,7 @@ export declare class QuestionTextModel extends QuestionTextBase {
9570
9745
  supportGoNextPageAutomatic(): boolean;
9571
9746
  supportGoNextPageError(): boolean;
9572
9747
  /*
9573
- * The list of recommended options available to choose.
9748
+ * An array of predefined options from which users can select. This property configures an HTML [`<datalist>`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/datalist) element and associates it with the underlying `input` element.
9574
9749
  */
9575
9750
  get dataList(): any;
9576
9751
  set dataList(val: any);
@@ -9696,7 +9871,9 @@ export declare class QuestionCheckboxModel extends QuestionCheckboxBase {
9696
9871
  get checkBoxSvgPath(): string;
9697
9872
  }
9698
9873
  /*
9699
- * A Model for a select image question.
9874
+ * A class that describes the Image Picker question type.
9875
+ *
9876
+ * [View Demo](https://surveyjs.io/form-library/examples/image-picker-question/ (linkStyle))
9700
9877
  */
9701
9878
  export declare class QuestionImagePickerModel extends QuestionCheckboxBase {
9702
9879
  constructor(name: string);
@@ -9709,18 +9886,17 @@ export declare class QuestionImagePickerModel extends QuestionCheckboxBase {
9709
9886
  supportNone(): boolean;
9710
9887
  isAnswerCorrect(): boolean;
9711
9888
  /*
9712
- * Multi select option. If set to true, then allows to select multiple images.
9889
+ * Specifies whether users can select multiple images or videos.
9890
+ *
9891
+ * Default value: `false`
9713
9892
  */
9714
9893
  get multiSelect(): boolean;
9715
9894
  set multiSelect(val: boolean);
9716
- /*
9717
- * Returns true if item is checked
9718
- */
9719
9895
  isItemSelected(item: ItemValue): boolean;
9720
9896
  clearIncorrectValues(): void;
9721
9897
  protected getDisplayValueCore(keysAsText: boolean, value: any): any;
9722
9898
  /*
9723
- * Show label under the image.
9899
+ * Specifies whether to display labels under images or videos. Labels text are taken from the `text` property of each object in the `choices` array.
9724
9900
  */
9725
9901
  get showLabel(): boolean;
9726
9902
  set showLabel(val: boolean);
@@ -9729,26 +9905,43 @@ export declare class QuestionImagePickerModel extends QuestionCheckboxBase {
9729
9905
  protected renderedValueFromDataCore(val: any): any;
9730
9906
  protected rendredValueToDataCore(val: any): any;
9731
9907
  /*
9732
- * The image height.
9908
+ * Specifies the height of containers for images or videos. Accepts positive numbers and CSS values.
9909
+ *
9910
+ * Default value: undefined
9911
+ *
9912
+ * Use the `imageFit` property to specify how to fit the images or videos into their containers.
9733
9913
  */
9734
9914
  get imageHeight(): number;
9735
9915
  set imageHeight(val: number);
9736
9916
  responsiveImageHeight: number;
9737
9917
  get renderedImageHeight(): string;
9738
9918
  /*
9739
- * The image width.
9919
+ * Specifies the width of containers for images or videos. Accepts positive numbers and CSS values.
9920
+ *
9921
+ * Default value: 200
9922
+ *
9923
+ * Use the `imageFit` property to specify how to fit the images or videos into their containers.
9740
9924
  */
9741
9925
  get imageWidth(): number;
9742
9926
  set imageWidth(val: number);
9743
9927
  responsiveImageWidth: number;
9744
9928
  get renderedImageWidth(): string;
9745
9929
  /*
9746
- * The image fit mode.
9930
+ * Specifies how to resize images or videos to fit them into their containers.
9931
+ *
9932
+ * Refer to the [`object-fit`](https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit) CSS property description for information on accepted values.
9747
9933
  */
9748
9934
  get imageFit(): string;
9749
9935
  set imageFit(val: string);
9750
9936
  /*
9751
- * The content mode.
9937
+ * Specifies the type of content that choice items display.
9938
+ *
9939
+ * Possible values:
9940
+ *
9941
+ * - `"image"` - Images in one of the following formats: JPEG, GIF, PNG, APNG, SVG, BMP, ICO.
9942
+ * - `"video"` - Videos in one of the following formats: MP4, MOV, WMV, FLV, AVI, MKV.
9943
+ * - `"youtube"` - Links to YouTube videos.
9944
+ * - `"auto"` (default) - Selects one of the above based on the `imageLink` property value of each choice item.
9752
9945
  */
9753
9946
  get contentMode(): string;
9754
9947
  set contentMode(val: string);
@@ -9773,26 +9966,28 @@ export declare class QuestionImagePickerModel extends QuestionCheckboxBase {
9773
9966
  afterRender(el: any): void;
9774
9967
  }
9775
9968
  /*
9776
- * A Model for a matrix dropdown question. You may use a dropdown, checkbox, radiogroup, text and comment questions as a cell editors.
9969
+ * A class that describes the Multiple-Choice Matrix question type. Multiple-Choice Matrix allows you to use the [Dropdown](https://surveyjs.io/form-library/documentation/questiondropdownmodel), [Checkbox](https://surveyjs.io/form-library/documentation/questioncheckboxmodel), [Radiogroup](https://surveyjs.io/form-library/documentation/questionradiogroupmodel), [Text](https://surveyjs.io/form-library/documentation/questiontextmodel), and [Comment](https://surveyjs.io/form-library/documentation/questioncommentmodel) question types as cell editors.
9970
+ *
9971
+ * [View Demo](https://surveyjs.io/form-library/examples/questiontype-matrixdropdown/ (linkStyle))
9777
9972
  */
9778
9973
  export declare class QuestionMatrixDropdownModel extends QuestionMatrixDropdownModelBase implements IMatrixDropdownData {
9779
9974
  constructor(name: string);
9780
9975
  getType(): string;
9781
9976
  /*
9782
- * Set this property to show it on the first column for the total row.
9977
+ * A title for the total row. Applies if at least one column displays total values.
9783
9978
  */
9784
9979
  get totalText(): string;
9785
9980
  set totalText(val: string);
9786
9981
  get locTotalText(): LocalizableString;
9787
9982
  getFooterText(): LocalizableString;
9788
9983
  /*
9789
- * The column width for the first column, row title column.
9984
+ * A width for the column that displays row titles (first column). Accepts CSS values.
9790
9985
  */
9791
9986
  get rowTitleWidth(): string;
9792
9987
  set rowTitleWidth(val: string);
9793
9988
  getRowTitleWidth(): string;
9794
9989
  /*
9795
- * Set this property to true to hide the question if there is no visible rows in the matrix.
9990
+ * Specifies whether to hide the question when the matrix has no visible rows.
9796
9991
  */
9797
9992
  get hideIfRowsEmpty(): boolean;
9798
9993
  set hideIfRowsEmpty(val: boolean);
@@ -9809,8 +10004,11 @@ export declare class QuestionMatrixDropdownModel extends QuestionMatrixDropdownM
9809
10004
  protected updateProgressInfoByValues(res: IProgressInfo): void;
9810
10005
  }
9811
10006
  /*
9812
- * A Model for a matrix dymanic question. You may use a dropdown, checkbox, radiogroup, text and comment questions as a cell editors.
9813
- * An end-user may dynamically add/remove rows, unlike in matrix dropdown question.
10007
+ * A class that describes the Dynamic Matrix question type.
10008
+ *
10009
+ * Dynamic Matrix allows respondents to add and delete matrix rows. You can use the [Dropdown](https://surveyjs.io/form-library/documentation/questiondropdownmodel), [Checkbox](https://surveyjs.io/form-library/documentation/questioncheckboxmodel), [Radiogroup](https://surveyjs.io/form-library/documentation/questionradiogroupmodel), [Text](https://surveyjs.io/form-library/documentation/questiontextmodel), and [Comment](https://surveyjs.io/form-library/documentation/questioncommentmodel) question types as cell editors.
10010
+ *
10011
+ * [View Demo](https://surveyjs.io/form-library/examples/questiontype-matrixdynamic/ (linkStyle))
9814
10012
  */
9815
10013
  export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownModelBase implements IMatrixDropdownData {
9816
10014
  constructor(name: string);
@@ -9826,12 +10024,12 @@ export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownMo
9826
10024
  getType(): string;
9827
10025
  get isRowsDynamic(): boolean;
9828
10026
  /*
9829
- * Set it to true, to show a confirmation dialog on removing a row
10027
+ * Specifies whether to display a confirmation dialog when a respondent wants to delete a row.
9830
10028
  */
9831
10029
  get confirmDelete(): boolean;
9832
10030
  set confirmDelete(val: boolean);
9833
10031
  /*
9834
- * Set it to a column name and the library shows duplication error, if there are same values in different rows in the column.
10032
+ * Specifies a key column. Set this property to a column name, and the question will display `keyDuplicationError` if a user tries to enter a duplicate value in this column.
9835
10033
  */
9836
10034
  get keyName(): string;
9837
10035
  set keyName(val: string);
@@ -9841,8 +10039,9 @@ export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownMo
9841
10039
  get defaultRowValue(): any;
9842
10040
  set defaultRowValue(val: any);
9843
10041
  /*
9844
- * Set it to true to copy the value into new added row from the last row. If defaultRowValue is set and this property equals to true,
9845
- * then the value for new added row is merging.
10042
+ * Specifies whether default values for a new row/column should be copied from the last row/column.
10043
+ *
10044
+ * If you also specify `defaultValue`, it will be merged with the copied values.
9846
10045
  */
9847
10046
  get defaultValueFromLastRow(): boolean;
9848
10047
  set defaultValueFromLastRow(val: boolean);
@@ -9857,39 +10056,61 @@ export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownMo
9857
10056
  set rowCount(val: number);
9858
10057
  protected updateProgressInfoByValues(res: IProgressInfo): void;
9859
10058
  /*
9860
- * Set this property to true, to allow rows drag and drop.
10059
+ * Specifies whether users can drag and drop matrix rows to reorder them.
10060
+ *
10061
+ * Default value: `false`
9861
10062
  */
9862
10063
  get allowRowsDragAndDrop(): boolean;
9863
10064
  set allowRowsDragAndDrop(val: boolean);
9864
10065
  get iconDragElement(): string;
9865
10066
  protected createRenderedTable(): QuestionMatrixDropdownRenderedTable;
9866
10067
  /*
9867
- * The minimum row count. A user could not delete a row if the rowCount equals to minRowCount
10068
+ * A minimum number of rows in the matrix. Users cannot delete rows if `rowCount` equals `minRowCount`.
10069
+ *
10070
+ * Default value: 0
9868
10071
  */
9869
10072
  get minRowCount(): number;
9870
10073
  set minRowCount(val: number);
9871
10074
  /*
9872
- * The maximum row count. A user could not add a row if the rowCount equals to maxRowCount
10075
+ * A maximum number of rows in the matrix. Users cannot add new rows if `rowCount` equals `maxRowCount`.
10076
+ *
10077
+ * Default value: 1000 (inherited from [`settings.matrixMaximumRowCount`](https://surveyjs.io/form-library/documentation/settings#matrixMaximumRowCount))
9873
10078
  */
9874
10079
  get maxRowCount(): number;
9875
10080
  set maxRowCount(val: number);
9876
10081
  /*
9877
- * Set this property to false to disable ability to add new rows. "Add new Row" button becomes invsible in UI
10082
+ * Specifies whether users are allowed to add new rows.
10083
+ *
10084
+ * Default value: `true`
9878
10085
  */
9879
10086
  get allowAddRows(): boolean;
9880
10087
  set allowAddRows(val: boolean);
9881
10088
  /*
9882
- * Set this property to false to disable ability to remove rows. "Remove" row buttons become invsible in UI
10089
+ * Specifies whether users are allowed to delete rows.
10090
+ *
10091
+ * Default value: `true`
9883
10092
  */
9884
10093
  get allowRemoveRows(): boolean;
9885
10094
  set allowRemoveRows(val: boolean);
9886
10095
  /*
9887
- * Returns true, if a new row can be added.
10096
+ * Indicates whether it is possible to add a new row.
10097
+ *
10098
+ * This property returns `true` when all of the following conditions apply:
10099
+ *
10100
+ * - Users are allowed to add new rows (`allowAddRows` is `true`).
10101
+ * - The question, panel, or survey is not in read-only state.
10102
+ * - `rowCount` does not exceed `maxRowCount`
9888
10103
  */
9889
10104
  get canAddRow(): boolean;
9890
10105
  canRemoveRowsCallback: (allow: boolean) => boolean;
9891
10106
  /*
9892
- * Returns true, if row can be removed.
10107
+ * Indicates whether it is possible to delete rows.
10108
+ *
10109
+ * This property returns `true` when all of the following conditions apply:
10110
+ *
10111
+ * - Users are allowed to delete rows (`allowRemoveRows` is `true`).
10112
+ * - The question, panel, or survey is not in read-only state.
10113
+ * - `rowCount` exceeds `minRowCount`
9893
10114
  */
9894
10115
  get canRemoveRows(): boolean;
9895
10116
  canRemoveRow(row: MatrixDropdownRowModelBase): boolean;
@@ -9902,7 +10123,7 @@ export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownMo
9902
10123
  */
9903
10124
  addRow(): void;
9904
10125
  /*
9905
- * Set this property to true to show detail panel immediately on adding a new row.
10126
+ * Specifies whether to expand the detail section immediately when a respondent adds a new row.
9906
10127
  */
9907
10128
  get detailPanelShowOnAdding(): boolean;
9908
10129
  set detailPanelShowOnAdding(val: boolean);
@@ -9919,26 +10140,35 @@ export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownMo
9919
10140
  */
9920
10141
  removeRow(index: number): void;
9921
10142
  /*
9922
- * Use this property to change the default text showing in the confirmation delete dialog on removing a row.
10143
+ * A message displayed in a confirmation dialog that appears when a respondent wants to delete a row.
9923
10144
  */
9924
10145
  get confirmDeleteText(): string;
9925
10146
  set confirmDeleteText(val: string);
9926
10147
  get locConfirmDeleteText(): LocalizableString;
9927
10148
  /*
9928
- * Use this property to change the default value of add row button text.
10149
+ * A caption for the Add Row button.
9929
10150
  */
9930
10151
  get addRowText(): string;
9931
10152
  set addRowText(val: string);
9932
10153
  get locAddRowText(): LocalizableString;
9933
10154
  /*
9934
- * By default the 'Add Row' button is shown on bottom if columnLayout is horizontal and on top if columnLayout is vertical.
9935
- * You may set it to "top", "bottom" or "topBottom" (to show on top and bottom).
10155
+ * Specifies the location of the Add Row button.
10156
+ *
10157
+ * Possible values:
10158
+ *
10159
+ * - `"top"` - Displays the Add Row button at the top of the matrix.
10160
+ * - `"bottom"` - Displays the Add Row button at the bottom of the matrix.
10161
+ * - `"topBottom"` - Displays the Add Row button at the top and bottom of the matrix.
10162
+ *
10163
+ * Default value: `"top"` if `columnLayout` is `vertical`; `"bottom"` if `columnLayout` is `"horizontal"` or the matrix is in compact mode.
9936
10164
  */
9937
10165
  get addRowLocation(): string;
9938
10166
  set addRowLocation(val: string);
9939
10167
  getAddRowLocation(): string;
9940
10168
  /*
9941
- * Set this property to true to hide matrix columns when there is no any row.
10169
+ * Specifies whether to hide columns when the matrix does not contain any rows. If you enable this property, the matrix displays the `emptyRowsText` message and the Add Row button.
10170
+ *
10171
+ * Default value: `false`
9942
10172
  */
9943
10173
  get hideColumnsIfEmpty(): boolean;
9944
10174
  set hideColumnsIfEmpty(val: boolean);
@@ -9950,7 +10180,7 @@ export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownMo
9950
10180
  set removeRowText(val: string);
9951
10181
  get locRemoveRowText(): LocalizableString;
9952
10182
  /*
9953
- * Use this property to change the default value of remove row button text.
10183
+ * A message displayed when the matrix does not contain any rows. Applies only if `hideColumnsIfEmpty` is enabled.
9954
10184
  */
9955
10185
  get emptyRowsText(): string;
9956
10186
  set emptyRowsText(val: string);
@@ -9973,7 +10203,9 @@ export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownMo
9973
10203
  getRootCss(): string;
9974
10204
  }
9975
10205
  /*
9976
- * A Model for a radiogroup question.
10206
+ * A class that describes the Radiogroup question type.
10207
+ *
10208
+ * [View Demo](https://surveyjs.io/form-library/examples/questiontype-radiogroup/ (linkStyle))
9977
10209
  */
9978
10210
  export declare class QuestionRadiogroupModel extends QuestionCheckboxBase {
9979
10211
  constructor(name: string);
@@ -9983,11 +10215,13 @@ export declare class QuestionRadiogroupModel extends QuestionCheckboxBase {
9983
10215
  get titleAriaLabel(): string;
9984
10216
  protected getFirstInputElementId(): string;
9985
10217
  /*
9986
- * Return the selected item in the radio group. Returns null if the value is empty
10218
+ * Returns the selected choice item. If no item is selected, returns `null`.
9987
10219
  */
9988
10220
  get selectedItem(): ItemValue;
9989
10221
  /*
9990
- * Show "clear button" flag.
10222
+ * Specifies whether to display a button that clears the question value.
10223
+ *
10224
+ * Default value: `false`
9991
10225
  */
9992
10226
  get showClearButton(): boolean;
9993
10227
  set showClearButton(val: boolean);
@@ -9998,7 +10232,9 @@ export declare class QuestionRadiogroupModel extends QuestionCheckboxBase {
9998
10232
  protected getDefaultTitleActions(): Array<Action>;
9999
10233
  }
10000
10234
  /*
10001
- * A Model for a ranking question
10235
+ * A class that describes the Ranking question type.
10236
+ *
10237
+ * [View Demo](https://surveyjs.io/form-library/examples/questiontype-ranking/ (linkStyle))
10002
10238
  */
10003
10239
  export declare class QuestionRankingModel extends QuestionCheckboxModel {
10004
10240
  constructor(name: string);
@@ -10039,7 +10275,11 @@ export declare class QuestionRankingModel extends QuestionCheckboxModel {
10039
10275
  getIconHoverCss(): string;
10040
10276
  getIconFocusCss(): string;
10041
10277
  /*
10042
- * For mobile devices. Set this property to false, to disable the "long tap" before drag start. Default is true.
10278
+ * Specifies whether to use a long tap (press and hold) gesture to start dragging.
10279
+ *
10280
+ * Default value: `true`
10281
+ *
10282
+ * Disable this property if you want to start dragging when users perform a scroll gesture.
10043
10283
  */
10044
10284
  get longTap(): boolean;
10045
10285
  set longTap(val: boolean);
@@ -10065,6 +10305,8 @@ export declare class QuestionTagboxModel extends QuestionCheckboxModel {
10065
10305
  * Specifies whether to remove selected items from the drop-down list.
10066
10306
  */
10067
10307
  hideSelectedItems: boolean;
10308
+ choicesLazyLoadEnabled: boolean;
10309
+ choicesLazyLoadPageSize: number;
10068
10310
  /*
10069
10311
  * A text displayed in the input field when it doesn't have a value.
10070
10312
  */
@@ -10351,6 +10593,7 @@ export declare var defaultActionBarCss: {
10351
10593
  export declare var defaultListCss: {
10352
10594
  root: string,
10353
10595
  item: string,
10596
+ loadingIndicator: string,
10354
10597
  itemSelected: string,
10355
10598
  itemWithIcon: string,
10356
10599
  itemDisabled: string,
@@ -10737,6 +10980,7 @@ export declare var matrixDropdownColumnTypes: {
10737
10980
  radiogroup: {
10738
10981
  onCellQuestionUpdate: (cellQuestion: any, column: any, question: any, data: any) => void,
10739
10982
  },
10983
+ tagbox: any,
10740
10984
  text: any,
10741
10985
  comment: any,
10742
10986
  boolean: {
@@ -10919,6 +11163,7 @@ export declare var defaultBootstrapCss: {
10919
11163
  root: string,
10920
11164
  selectWrapper: string,
10921
11165
  control: string,
11166
+ controlValue: string,
10922
11167
  other: string,
10923
11168
  cleanButton: string,
10924
11169
  cleanButtonSvg: string,
@@ -11257,6 +11502,7 @@ export declare var defaultBootstrapMaterialCss: {
11257
11502
  root: string,
11258
11503
  selectWrapper: string,
11259
11504
  control: string,
11505
+ controlValue: string,
11260
11506
  other: string,
11261
11507
  cleanButton: string,
11262
11508
  cleanButtonSvg: string,