survey-react 1.9.80 → 1.9.82

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
@@ -10,6 +10,16 @@ declare module "settings" {
10
10
  * ```
11
11
  */
12
12
  export var settings: {
13
+ /**
14
+ * Specifies an action to perform when users press the Enter key within a survey.
15
+ *
16
+ * Possible values:
17
+ *
18
+ * - `"moveToNextEditor"` - Moves focus to the next editor.
19
+ * - `"loseFocus"` - Removes focus from the current editor.
20
+ * - `"default"` - Behaves as a standard `<input>` element.
21
+ */
22
+ enterKeyAction: "default" | "moveToNextEditor" | "loseFocus";
13
23
  /**
14
24
  * An object that configures string comparison.
15
25
  *
@@ -369,6 +379,23 @@ declare module "settings" {
369
379
  inputTypes: string[];
370
380
  dataList: string[];
371
381
  };
382
+ /**
383
+ * Contains properties that apply to [Single-Choice](https://surveyjs.io/form-library/documentation/api-reference/matrix-table-question-model), [Multiple-Choice](https://surveyjs.io/form-library/documentation/api-reference/matrix-table-with-dropdown-list), and [Dynamic Matrix](https://surveyjs.io/form-library/documentation/api-reference/dynamic-matrix-table-question-model) questions.
384
+ *
385
+ * Nested properties:
386
+ *
387
+ * - `columnWidthsByType`: `Object`\
388
+ * An object that specifies fixed and minimum column width based on the column type.\
389
+ * Example: `settings.matrix.columnWidthsByType = { "tagbox": { minWidth: "240px", width: "300px" } }`
390
+ */
391
+ matrix: {
392
+ columnWidthsByType: {
393
+ [index: string]: {
394
+ minWidth?: string;
395
+ width?: string;
396
+ };
397
+ };
398
+ };
372
399
  };
373
400
  }
374
401
  declare module "helpers" {
@@ -422,6 +449,7 @@ declare module "localization/english" {
422
449
  progressText: string;
423
450
  indexText: string;
424
451
  panelDynamicProgressText: string;
452
+ panelDynamicTabTextFormat: string;
425
453
  questionsProgressText: string;
426
454
  emptySurvey: string;
427
455
  completingSurvey: string;
@@ -530,6 +558,7 @@ declare module "surveyStrings" {
530
558
  progressText: string;
531
559
  indexText: string;
532
560
  panelDynamicProgressText: string;
561
+ panelDynamicTabTextFormat: string;
533
562
  questionsProgressText: string;
534
563
  emptySurvey: string;
535
564
  completingSurvey: string;
@@ -650,6 +679,7 @@ declare module "localizablestring" {
650
679
  sharedData: LocalizableString;
651
680
  searchText: string;
652
681
  searchIndex: number;
682
+ disableLocalization: boolean;
653
683
  constructor(owner: ILocalizableOwner, useMarkdown?: boolean, name?: string);
654
684
  getIsMultiple(): boolean;
655
685
  get locale(): string;
@@ -670,6 +700,7 @@ declare module "localizablestring" {
670
700
  getLocaleText(loc: string): string;
671
701
  private getLocaleTextWithDefault;
672
702
  setLocaleText(loc: string, value: string): void;
703
+ private get curLocale();
673
704
  private canRemoveLocValue;
674
705
  private fireStrChanged;
675
706
  hasNonDefaultText(): boolean;
@@ -821,7 +852,6 @@ declare module "jsonobject" {
821
852
  settingValue(obj: any, value: any): any;
822
853
  setValue(obj: any, value: any, jsonConv: JsonObject): void;
823
854
  getObjType(objType: string): string;
824
- getClassName(className: string): string;
825
855
  /**
826
856
  * Depricated, please use getChoices
827
857
  */
@@ -987,6 +1017,7 @@ declare module "jsonobject" {
987
1017
  private removePosFromObj;
988
1018
  private isValueArray;
989
1019
  private createNewObj;
1020
+ private getClassNameForNewObj;
990
1021
  private checkNewObjectOnErrors;
991
1022
  private getRequiredError;
992
1023
  private addNewError;
@@ -2011,6 +2042,7 @@ declare module "survey-element" {
2011
2042
  get ariaTitleId(): string;
2012
2043
  get titleTabIndex(): number;
2013
2044
  get titleAriaExpanded(): any;
2045
+ get titleAriaRole(): any;
2014
2046
  get ariaLabel(): string;
2015
2047
  get titleAriaLabel(): string | null;
2016
2048
  protected getIsTitleRenderedAsString(): boolean;
@@ -2139,6 +2171,7 @@ declare module "survey-element" {
2139
2171
  get hasTitleEvents(): boolean;
2140
2172
  get titleTabIndex(): number;
2141
2173
  get titleAriaExpanded(): any;
2174
+ get titleAriaRole(): any;
2142
2175
  setSurveyImpl(value: ISurveyImpl, isLight?: boolean): void;
2143
2176
  protected canRunConditions(): boolean;
2144
2177
  getDataFilteredValues(): any;
@@ -2346,6 +2379,8 @@ declare module "survey-element" {
2346
2379
  get clickTitleFunction(): any;
2347
2380
  protected needClickTitleFunction(): boolean;
2348
2381
  protected processTitleClick(): void;
2382
+ get additionalTitleToolbar(): ActionContainer;
2383
+ protected getAdditionalTitleToolbar(): ActionContainer | null;
2349
2384
  protected getCssTitle(cssClasses: any): string;
2350
2385
  localeChanged(): void;
2351
2386
  }
@@ -2453,6 +2488,18 @@ declare module "questionfactory" {
2453
2488
  createElement(elementType: string, name: string): IElement;
2454
2489
  }
2455
2490
  }
2491
+ declare module "drag-drop-helper-v1" {
2492
+ import { IElement, ISurveyElement } from "base-interfaces";
2493
+ export class DragDropInfo {
2494
+ source: IElement;
2495
+ target: IElement;
2496
+ nestedPanelDepth: number;
2497
+ constructor(source: IElement, target: IElement, nestedPanelDepth?: number);
2498
+ destination: ISurveyElement;
2499
+ isBottom: boolean;
2500
+ isEdge: boolean;
2501
+ }
2502
+ }
2456
2503
  declare module "defaultCss/defaultV2Css" {
2457
2504
  export var surveyCss: any;
2458
2505
  export var defaultV2Css: {
@@ -2525,6 +2572,8 @@ declare module "defaultCss/defaultV2Css" {
2525
2572
  root: string;
2526
2573
  navigation: string;
2527
2574
  title: string;
2575
+ header: string;
2576
+ headerTab: string;
2528
2577
  button: string;
2529
2578
  buttonRemove: string;
2530
2579
  buttonAdd: string;
@@ -2901,6 +2950,7 @@ declare module "defaultCss/defaultV2Css" {
2901
2950
  itemText: string;
2902
2951
  maxText: string;
2903
2952
  itemDisabled: string;
2953
+ itemFixedSize: string;
2904
2954
  control: string;
2905
2955
  controlValue: string;
2906
2956
  controlDisabled: string;
@@ -3696,6 +3746,8 @@ declare module "question_baseselect" {
3696
3746
  protected onAfterRunItemsEnableCondition(): void;
3697
3747
  protected onEnableItemCallBack(item: ItemValue): boolean;
3698
3748
  protected onSelectedItemValuesChangedHandler(newValue: any): void;
3749
+ protected getSingleSelectedItem(): ItemValue;
3750
+ protected onGetSingleSelectedItem(selectedItemByValue: ItemValue): void;
3699
3751
  private setConditionalChoicesRunner;
3700
3752
  private setConditionalEnableChoicesRunner;
3701
3753
  private canSurveyChangeItemVisibility;
@@ -4307,6 +4359,7 @@ declare module "question_paneldynamic" {
4307
4359
  private setValueAfterPanelsCreating;
4308
4360
  protected getValueCore(): any;
4309
4361
  protected setValueCore(newValue: any): void;
4362
+ protected setIsMobile(val: boolean): void;
4310
4363
  /**
4311
4364
  * The number of panels in Dynamic Panel.
4312
4365
  * @see minPanelCount
@@ -4411,7 +4464,11 @@ declare module "question_paneldynamic" {
4411
4464
  */
4412
4465
  get renderMode(): string;
4413
4466
  set renderMode(val: string);
4467
+ get tabAlign(): "center" | "left" | "right";
4468
+ set tabAlign(val: "center" | "left" | "right");
4414
4469
  get isRenderModeList(): boolean;
4470
+ get isRenderModeTab(): boolean;
4471
+ get hasTitleOnLeftTop(): boolean;
4415
4472
  setVisibleIndex(value: number): number;
4416
4473
  private setPanelVisibleIndex;
4417
4474
  /**
@@ -4572,6 +4629,7 @@ declare module "question_paneldynamic" {
4572
4629
  get progressText(): string;
4573
4630
  get progress(): string;
4574
4631
  getRootCss(): string;
4632
+ get cssHeader(): string;
4575
4633
  getPanelWrapperCss(): string;
4576
4634
  getPanelRemoveButtonCss(): string;
4577
4635
  getAddButtonCss(): string;
@@ -4585,12 +4643,20 @@ declare module "question_paneldynamic" {
4585
4643
  get locNoEntriesText(): LocalizableString;
4586
4644
  getShowNoEntriesPlaceholder(): boolean;
4587
4645
  needResponsiveWidth(): boolean;
4646
+ private additionalTitleToolbarValue;
4647
+ protected getAdditionalTitleToolbar(): ActionContainer | null;
4588
4648
  private footerToolbarValue;
4589
4649
  get footerToolbar(): ActionContainer;
4590
4650
  legacyNavigation: boolean;
4591
4651
  private updateFooterActionsCallback;
4592
4652
  private updateFooterActions;
4593
4653
  private initFooterToolbar;
4654
+ private createTabByPanel;
4655
+ private getAdditionalTitleToolbarCss;
4656
+ private updateTabToolbarItemsPressedState;
4657
+ private updateTabToolbar;
4658
+ private addTabFromToolbar;
4659
+ private removeTabFromToolbar;
4594
4660
  private get showLegacyNavigation();
4595
4661
  }
4596
4662
  }
@@ -5683,21 +5749,9 @@ declare module "survey-events-api" {
5683
5749
  * Call this method to indicate that the save operation is in progress. You can use the `text` parameter to display a custom message.
5684
5750
  */
5685
5751
  showSaveInProgress: (text?: string) => void;
5686
- /**
5687
- * @deprecated Use the `showSaveInProgress()` method instead.
5688
- */
5689
5752
  showDataSaving: (text?: string) => void;
5690
- /**
5691
- * @deprecated Use the `showSaveError()` method instead.
5692
- */
5693
5753
  showDataSavingError: (text?: string) => void;
5694
- /**
5695
- * @deprecated Use the `showSaveSuccess()` method instead.
5696
- */
5697
5754
  showDataSavingSuccess: (text?: string) => void;
5698
- /**
5699
- * @deprecated Use the `clearSaveMessages()` method instead.
5700
- */
5701
5755
  showDataSavingClear: (text?: string) => void;
5702
5756
  }
5703
5757
  export interface ShowingPreviewEvent {
@@ -5705,9 +5759,6 @@ declare module "survey-events-api" {
5705
5759
  * Set this property to `false` if you want to cancel the preview.
5706
5760
  */
5707
5761
  allow: boolean;
5708
- /**
5709
- * @deprecated Use the `allow` property instead.
5710
- */
5711
5762
  allowShowPreview: boolean;
5712
5763
  }
5713
5764
  export interface NavigateToUrlEvent {
@@ -5722,13 +5773,21 @@ declare module "survey-events-api" {
5722
5773
  }
5723
5774
  export interface CurrentPageChangedEvent {
5724
5775
  /**
5725
- * Returns `true` if the respondent is going backwards, that is, `newCurrentPage` is earlier in the survey than `oldCurrentPage`.
5776
+ * Returns `true` if the respondent is switching to the previous page.
5726
5777
  */
5727
5778
  isPrevPage: boolean;
5728
5779
  /**
5729
- * Returns `true` if the respondent is going forward along the survey.
5780
+ * Returns `true` if the respondent is switching to the next page.
5730
5781
  */
5731
5782
  isNextPage: boolean;
5783
+ /**
5784
+ * Returns `true` if the respondent is going backward, that is, `newCurrentPage` is earlier in the survey than `oldCurrentPage`.
5785
+ */
5786
+ isGoingBackward: boolean;
5787
+ /**
5788
+ * Returns `true` if the respondent is going forward along the survey.
5789
+ */
5790
+ isGoingForward: boolean;
5732
5791
  /**
5733
5792
  * The current page.
5734
5793
  */
@@ -5743,9 +5802,6 @@ declare module "survey-events-api" {
5743
5802
  * Set this property to `false` if you do not want to switch the current page.
5744
5803
  */
5745
5804
  allow: boolean;
5746
- /**
5747
- * @deprecated Use the `allow` property instead.
5748
- */
5749
5805
  allowChanging: boolean;
5750
5806
  }
5751
5807
  export interface ValueChangeBaseEvent extends QuestionEventMixin {
@@ -5844,7 +5900,7 @@ declare module "survey-events-api" {
5844
5900
  }
5845
5901
  export interface SettingQuestionErrorsEvent extends QuestionEventMixin {
5846
5902
  /**
5847
- * An array of errors. The array is empty if the validated question satisfy all validation rules.
5903
+ * An array of errors. The array is empty if the validated question satisfies all validation rules.
5848
5904
  */
5849
5905
  errors: Array<SurveyError>;
5850
5906
  }
@@ -6944,9 +7000,10 @@ declare module "survey" {
6944
7000
  */
6945
7001
  onComplete: EventBase<SurveyModel, CompleteEvent>;
6946
7002
  /**
6947
- * An event that is raised before the survey displays a [preview](https://surveyjs.io/form-library/documentation/design-survey/create-a-multi-page-survey#preview-page). Use this event to cancel the preview.
6948
- *
7003
+ * An event that is raised before the survey displays a [preview of given answers](https://surveyjs.io/form-library/documentation/design-survey/create-a-multi-page-survey#preview-page). Use this event to cancel the preview.
6949
7004
  * @see showPreviewBeforeComplete
7005
+ * @see showPreview
7006
+ * @see cancelPreview
6950
7007
  */
6951
7008
  onShowingPreview: EventBase<SurveyModel, ShowingPreviewEvent>;
6952
7009
  /**
@@ -7232,7 +7289,6 @@ declare module "survey" {
7232
7289
  * For information on event handler parameters, refer to descriptions within the interface.
7233
7290
  *
7234
7291
  * [View Demo](https://surveyjs.io/form-library/examples/file-delayed-upload/ (linkStyle))
7235
- * @see clearFiles
7236
7292
  * @see onDownloadFile
7237
7293
  * @see onUploadFiles
7238
7294
  */
@@ -7530,9 +7586,10 @@ declare module "survey" {
7530
7586
  getType(): string;
7531
7587
  protected onPropertyValueChanged(name: string, oldValue: any, newValue: any): void;
7532
7588
  /**
7533
- * Returns a list of all pages in the survey, including invisible pages.
7589
+ * Returns an array of all pages in the survey.
7590
+ *
7591
+ * To get an array of only visible pages, use the [`visiblePages`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#visiblePages) array.
7534
7592
  * @see PageModel
7535
- * @see visiblePages
7536
7593
  */
7537
7594
  get pages(): Array<PageModel>;
7538
7595
  renderCallback: () => void;
@@ -7578,39 +7635,41 @@ declare module "survey" {
7578
7635
  get triggers(): Array<SurveyTrigger>;
7579
7636
  set triggers(val: Array<SurveyTrigger>);
7580
7637
  /**
7581
- * Gets or sets a list of calculated values in the survey.
7582
- * @see CalculatedValue
7583
- *
7584
- * For more information, refer to [Calculated Values](https://surveyjs.io/form-library/documentation/design-survey-conditional-logic#calculated-values).
7585
- *
7638
+ * An array of [calculated values](https://surveyjs.io/form-library/documentation/design-survey-conditional-logic#calculated-values).
7586
7639
  */
7587
7640
  get calculatedValues(): Array<CalculatedValue>;
7588
7641
  set calculatedValues(val: Array<CalculatedValue>);
7589
7642
  /**
7590
- * Gets or sets an identifier of a survey model loaded from the [api.surveyjs.io](https://api.surveyjs.io) service. When specified, the survey JSON is automatically loaded from [api.surveyjs.io](https://api.surveyjs.io) service.
7643
+ * The identifier of a survey JSON schema to load from the [SurveyJS Service](https://api.surveyjs.io).
7644
+ *
7645
+ * Refer to the following help topic for more information: [Store Survey Results in the SurveyJS Service](https://surveyjs.io/form-library/documentation/handle-survey-results-store#store-survey-results-in-the-surveyjs-service).
7591
7646
  * @see loadSurveyFromService
7592
7647
  * @see onLoadedSurveyFromService
7593
7648
  */
7594
7649
  get surveyId(): string;
7595
7650
  set surveyId(val: string);
7596
7651
  /**
7597
- * Gets or sets an identifier of a survey model saved to the [api.surveyjs.io](https://api.surveyjs.io) service. When specified, the survey data is automatically saved to the [api.surveyjs.io](https://api.surveyjs.io) service.
7652
+ * An identifier used to save survey results to the [SurveyJS Service](https://api.surveyjs.io).
7653
+ *
7654
+ * Refer to the following help topic for more information: [Store Survey Results in the SurveyJS Service](https://surveyjs.io/form-library/documentation/handle-survey-results-store#store-survey-results-in-the-surveyjs-service).
7598
7655
  * @see onComplete
7599
7656
  * @see surveyShowDataSaving
7600
7657
  */
7601
7658
  get surveyPostId(): string;
7602
7659
  set surveyPostId(val: string);
7603
7660
  /**
7604
- * Gets or sets user's identifier (e.g., e-mail or unique customer id) in your web application.
7605
- * If you load survey or post survey results from/to [api.surveyjs.io](https://api.surveyjs.io) service, then the library do not allow users to run the same survey the second time.
7606
- * On the second run, the user will see the survey complete page.
7661
+ * A user identifier (e-mail or other unique ID).
7662
+ *
7663
+ * If your application works with the [SurveyJS Service](https://api.surveyjs.io), the ID ensures that users do not pass the same survey twice. On the second run, they will see the [Completed Before page](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#completedBeforeHtml).
7664
+ * @see cookieName
7607
7665
  */
7608
7666
  get clientId(): string;
7609
7667
  set clientId(val: string);
7610
7668
  /**
7611
- * Gets or sets a cookie name used to save information about completing the survey.
7612
- * If the property is not empty, before starting the survey, the Survey library checks if the cookie with this name exists.
7613
- * If it is `true`, the survey goes to complete mode and a user sees the survey complete page. On completing the survey the cookie with this name is created.
7669
+ * A cookie name used to save information about survey completion.
7670
+ *
7671
+ * When this property has a value, the survey creates a cookie with the specified name on completion. This cookie helps ensure that users do not pass the same survey twice. On the second run, they will see the [Completed Before page](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#completedBeforeHtml).
7672
+ * @see cliendId
7614
7673
  */
7615
7674
  get cookieName(): string;
7616
7675
  set cookieName(val: string);
@@ -7773,43 +7832,44 @@ declare module "survey" {
7773
7832
  get maxOthersLength(): number;
7774
7833
  set maxOthersLength(val: number);
7775
7834
  /**
7776
- * Gets or ses whether user proceeds to the next page without pressing the "Next" button after answering all page questions.
7777
- * The available options:
7835
+ * Specifies whether the survey switches to the next page automatically after a user answers all questions on the current page.
7778
7836
  *
7779
- * - `true` - navigate to the next page and submit survey data automatically.
7780
- * - `autogonext` - navigate to the next page automatically but do not submit survey data.
7781
- * - `false` - do not navigate to the next page and do not submit survey data automatically.
7837
+ * Default value: `false`
7782
7838
  *
7783
- * > If any of the following questions is answered last, the survey won't be switched to the next page: Checkbox, Boolean (rendered as Checkbox), Comment, Signature Pad, Image Picker (with Multi Select), File, Single-Choice Matrix (not all rows are answered), Dynamic Matrix, Panel Dynamic.
7839
+ * If you enable this property, the survey is also completed automatically. Set the [`allowCompleteSurveyAutomatic`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#allowCompleteSurveyAutomatic) property to `false` if you want to disable this behavior.
7784
7840
  *
7785
- * @see showNavigationButtons
7841
+ * > If any of the following questions is answered last, the survey does not switch to the next page: Checkbox, Boolean (rendered as Checkbox), Comment, Signature Pad, Image Picker (with Multi Select), File, Single-Choice Matrix (not all rows are answered), Dynamic Matrix, Panel Dynamic.
7786
7842
  *
7787
- * [View Demo](https://surveyjs.io/form-library/examples/survey-autonextpage/ (linkStyle))
7843
+ * [View Demo](https://surveyjs.io/form-library/examples/automatically-move-to-next-page-if-answer-selected/ (linkStyle))
7788
7844
  */
7789
7845
  get goNextPageAutomatic(): boolean | "autogonext";
7790
7846
  set goNextPageAutomatic(val: boolean | "autogonext");
7791
7847
  /**
7792
- * Gets or sets whether a survey is automatically completed when `goNextPageAutomatic = true`. Set it to `false` if you do not want to submit survey automatically on completing the last survey page.
7793
- * @see goNextPageAutomatic
7848
+ * Specifies whether to complete the survey automatically after a user answers all questions on the last page. Applies only if the [`goNextPageAutomatic`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#goNextPageAutomatic) property is `true`.
7849
+ *
7850
+ * Default value: `true`
7794
7851
  */
7795
7852
  get allowCompleteSurveyAutomatic(): boolean;
7796
7853
  set allowCompleteSurveyAutomatic(val: boolean);
7797
7854
  /**
7798
- * Gets or sets a value that specifies how the survey validates the question answers.
7855
+ * Specifies when the survey validates answers.
7799
7856
  *
7800
- * The following options are available:
7857
+ * Possible values:
7801
7858
  *
7802
- * - `onNextPage` (default) - check errors on navigating to the next page or on completing the survey.
7803
- * - `onValueChanged` - check errors on every question value (i.e., answer) changing.
7804
- * - `onValueChanging` - check errors before setting value into survey. If there is an error, then survey data is not changed, but question value will be keeped.
7805
- * - `onComplete` - to validate all visible questions on complete button click. If there are errors on previous pages, then the page with the first error becomes the current.
7859
+ * - `"onNextPage"` (default) - Triggers validation before the survey is switched to the next page or completed.
7860
+ * - `"onValueChanged"` - Triggers validation each time a question value is changed.
7861
+ * - `"onComplete"` - Triggers validation when a user clicks the Complete button. If previous pages contain errors, the survey switches to the page with the first error.
7862
+ *
7863
+ * Refer to the following help topic for more information: [Data Validation](https://surveyjs.io/form-library/documentation/data-validation).
7806
7864
  */
7807
7865
  get checkErrorsMode(): string;
7808
7866
  set checkErrorsMode(val: string);
7809
7867
  /**
7810
- * Specifies whether the text area of [comment](https://surveyjs.io/Documentation/Library?id=questioncommentmodel) questions/elements automatically expands its height to avoid the vertical scrollbar and to display the entire multi-line contents entered by respondents.
7811
- * Default value is false.
7812
- * @see QuestionCommentModel.autoGrow
7868
+ * Specifies whether to increase the height of text areas to accommodate multi-line comments.
7869
+ *
7870
+ * Default value: `false`
7871
+ *
7872
+ * You can override this property for individual Comment questions: [`autoGrow`](https://surveyjs.io/form-library/documentation/api-reference/comment-field-model#autoGrow).
7813
7873
  */
7814
7874
  get autoGrowComment(): boolean;
7815
7875
  set autoGrowComment(val: boolean);
@@ -7826,33 +7886,33 @@ declare module "survey" {
7826
7886
  get textUpdateMode(): string;
7827
7887
  set textUpdateMode(val: string);
7828
7888
  /**
7829
- * Gets or sets a value that specifies how the invisible data is included in survey data.
7889
+ * Specifies when to remove values of invisible questions from [survey results](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#data).
7830
7890
  *
7831
- * The following options are available:
7891
+ * Possible values:
7832
7892
  *
7833
- * - `none` - include the invisible values into the survey data.
7834
- * - `onHidden` - clear the question value when it becomes invisible. If a question has value and it was invisible initially then survey clears the value on completing.
7835
- * - `onHiddenContainer` - clear the question value when it or its parent (page or panel) becomes invisible. If a question has value and it was invisible initially then survey clears the value on completing.
7836
- * - `onComplete` (default) - clear invisible question values on survey complete. In this case, the invisible questions will not be stored on the server.
7837
- * @see Question.visible
7893
+ * - `"onComplete"` (default) - Clears invisible question values when the survey is complete.
7894
+ * - `"onHidden"` - Clears a question value when the question becomes invisible. If the question is invisible initially, its value is removed on survey completion.
7895
+ * - `"onHiddenContainer"` - Clears a question value when the question or its containter (page or panel) becomes invisible. If the question is invisible initially, its value is removed on survey completion.
7896
+ * - `"none"` - Keeps invisible values in survey results.
7897
+ * - `true` - Equivalent to `"onComplete"`.
7898
+ * - `false` - Equivalent to `"none"`.
7899
+ * @see [Conditional Visibility](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#conditional-visibility)
7838
7900
  * @see onComplete
7839
7901
  */
7840
7902
  get clearInvisibleValues(): any;
7841
7903
  set clearInvisibleValues(val: any);
7842
7904
  /**
7843
- * Call this function to remove all question values from the survey, that end-user will not be able to enter.
7844
- * For example the value that doesn't exists in a radiogroup/dropdown/checkbox choices or matrix rows/columns.
7845
- * Please note, this function doesn't clear values for invisible questions or values that doesn't associated with questions.
7846
- * In fact this function just call clearIncorrectValues function of all questions in the survey
7847
- * @param removeNonExisingRootKeys - set this parameter to true to remove keys from survey.data that doesn't have corresponded questions and calculated values
7848
- * @see Question.clearIncorrectValues
7849
- * @see Page.clearIncorrectValues
7850
- * @see Panel.clearIncorrectValues
7905
+ * Removes values that cannot be assigned to a question, for example, choices unlisted in the `choices` array.
7906
+ *
7907
+ * Call this method after you assign new question values in code to ensure that they are acceptable.
7908
+ *
7909
+ * > This method does not remove values that fail validation. Call the [`validate()`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#validate) method to validate newly assigned values.
7910
+ * @param removeNonExistingRootKeys Pass `true` to remove values that do not correspond to any question or [calculated value](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#calculated-values).
7851
7911
  */
7852
- clearIncorrectValues(removeNonExisingRootKeys?: boolean): void;
7912
+ clearIncorrectValues(removeNonExistingRootKeys?: boolean): void;
7853
7913
  private iscorrectValueWithPostPrefix;
7854
7914
  /**
7855
- * Specifies whether to keep values that cannot be assigned to questions, for example, choices unlisted in the choices array.
7915
+ * Specifies whether to keep values that cannot be assigned to questions, for example, choices unlisted in the `choices` array.
7856
7916
  *
7857
7917
  * > This property cannot be specified in the survey JSON schema. Use dot notation to specify it.
7858
7918
  * @see clearIncorrectValues
@@ -7936,20 +7996,32 @@ declare module "survey" {
7936
7996
  protected isLogoImageChoosen(): string;
7937
7997
  get titleMaxWidth(): string;
7938
7998
  /**
7939
- * Gets or sets the HTML content displayed on the complete page. Use this property to change the default complete page text.
7999
+ * Gets or sets a survey backgroundImage.
8000
+ */
8001
+ get backgroundImage(): string;
8002
+ set backgroundImage(value: string);
8003
+ get locBackgroundImage(): LocalizableString;
8004
+ renderBackgroundImage: string;
8005
+ private updateRenderBackgroundImage;
8006
+ get backgroundOpacity(): number;
8007
+ set backgroundOpacity(val: number);
8008
+ get renderBackgroundOpacity(): string;
8009
+ /**
8010
+ * HTML content displayed on the [complete page](https://surveyjs.io/form-library/documentation/design-survey/create-a-multi-page-survey#complete-page).
8011
+ *
8012
+ * [View Demo](https://surveyjs.io/form-library/examples/modify-survey-navigation-settings/ (linkStyle))
7940
8013
  * @see showCompletedPage
7941
8014
  * @see completedHtmlOnCondition
7942
- * @see locale
7943
- *
7944
- * [View Demo](https://surveyjs.io/form-library/examples/survey-options/ (linkStyle))
7945
8015
  */
7946
8016
  get completedHtml(): string;
7947
8017
  set completedHtml(value: string);
7948
8018
  get locCompletedHtml(): LocalizableString;
7949
8019
  /**
7950
- * The list of HTML condition items. If the expression of this item returns `true`, then a survey will use this item HTML instead of `completedHtml`.
7951
- * @see HtmlConditionItem
7952
- * @see completeHtml
8020
+ * An array of objects that allows you to specify different HTML content for the [complete page](https://surveyjs.io/form-library/documentation/design-survey/create-a-multi-page-survey#complete-page).
8021
+ *
8022
+ * Each object should include the [`expression`](https://surveyjs.io/form-library/documentation/api-reference/htmlconditionitem#expression) and [`html`](https://surveyjs.io/form-library/documentation/api-reference/htmlconditionitem#html) properties. When `expression` evaluates to `true`, the survey uses the corresponding HTML markup instead of [`completedHtml`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#completedHtml). Refer to the following help topic for more information about expressions: [Expressions](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions).
8023
+ *
8024
+ * [View Demo](https://surveyjs.io/form-library/examples/nps-question/ (linkStyle))
7953
8025
  */
7954
8026
  get completedHtmlOnCondition(): Array<HtmlConditionItem>;
7955
8027
  set completedHtmlOnCondition(val: Array<HtmlConditionItem>);
@@ -7970,25 +8042,22 @@ declare module "survey" {
7970
8042
  get renderedCompletedHtml(): string;
7971
8043
  private getExpressionItemOnRunCondition;
7972
8044
  /**
7973
- * The HTML content displayed to an end user that has already completed the survey.
8045
+ * HTML content displayed to a user who has completed the survey before.
7974
8046
  * @see clientId
7975
- * @see locale
8047
+ * @see cookieName
8048
+ * @see processedCompletedBeforeHtml
7976
8049
  */
7977
8050
  get completedBeforeHtml(): string;
7978
8051
  set completedBeforeHtml(value: string);
7979
8052
  get locCompletedBeforeHtml(): LocalizableString;
7980
8053
  /**
7981
- * The HTML that shows on loading survey Json from the [api.surveyjs.io](https://api.surveyjs.io) service.
8054
+ * HTML content displayed while a survey JSON schema is being loaded from the [SurveyJS Service](https://api.surveyjs.io).
7982
8055
  * @see surveyId
7983
- * @see locale
8056
+ * @see processedLoadingHtml
7984
8057
  */
7985
8058
  get loadingHtml(): string;
7986
8059
  set loadingHtml(value: string);
7987
8060
  get locLoadingHtml(): LocalizableString;
7988
- /**
7989
- * Default value for loadingHtml property
7990
- * @see loadingHtml
7991
- */
7992
8061
  get defaultLoadingHtml(): string;
7993
8062
  get navigationBar(): ActionContainer;
7994
8063
  /**
@@ -8029,21 +8098,19 @@ declare module "survey" {
8029
8098
  set completeText(newValue: string);
8030
8099
  get locCompleteText(): LocalizableString;
8031
8100
  /**
8032
- * Gets or sets the 'Preview' button caption.
8033
- * @see locale
8101
+ * Gets or sets a caption for the Preview button.
8034
8102
  * @see showPreviewBeforeComplete
8035
- * @see editText
8036
8103
  * @see showPreview
8104
+ * @see editText
8037
8105
  */
8038
8106
  get previewText(): string;
8039
8107
  set previewText(newValue: string);
8040
8108
  get locPreviewText(): LocalizableString;
8041
8109
  /**
8042
- * Gets or sets the 'Edit' button caption.
8043
- * @see locale
8110
+ * Gets or sets a caption for the Edit button displayed when the survey shows a [preview of given answers](https://surveyjs.io/form-library/documentation/design-survey/create-a-multi-page-survey#preview-page).
8044
8111
  * @see showPreviewBeforeComplete
8045
- * @see previewText
8046
8112
  * @see cancelPreview
8113
+ * @see previewText
8047
8114
  */
8048
8115
  get editText(): string;
8049
8116
  set editText(newValue: string);
@@ -8232,15 +8299,16 @@ declare module "survey" {
8232
8299
  private setDataToValueHash;
8233
8300
  private deleteDataFromValueHash;
8234
8301
  /**
8235
- * Returns all comments from the data.
8236
- * @see data
8302
+ * An object with all comment values.
8303
+ * @see Question.showCommentArea
8304
+ * @see storeOthersAsComment
8237
8305
  */
8238
8306
  get comments(): any;
8239
8307
  /**
8240
- * Returns a list of visible pages. If all pages are visible, then this property returns the same list as the `pages` property.
8241
- * @see pages
8242
- * @see PageModel.visible
8243
- * @see PageModel.visibleIf
8308
+ * Returns an array of visible pages without the start page.
8309
+ *
8310
+ * To get an array of all pages, use the [`pages`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#pages) property. If all pages are visible, the `pages` and `visiblePages` arrays are identical.
8311
+ * @see [Conditional Visibility](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#conditional-visibility)
8244
8312
  */
8245
8313
  get visiblePages(): Array<PageModel>;
8246
8314
  private isPageInVisibleList;
@@ -8250,24 +8318,40 @@ declare module "survey" {
8250
8318
  get isEmpty(): boolean;
8251
8319
  get PageCount(): number;
8252
8320
  /**
8253
- * Returns the survey page count.
8254
- * @see visiblePageCount
8321
+ * Returns a total number of survey pages.
8322
+ *
8323
+ * To get the number of visible pages, use the [`visiblePageCount`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#visiblePageCount) property.
8255
8324
  * @see pages
8256
8325
  */
8257
8326
  get pageCount(): number;
8258
8327
  /**
8259
- * Returns a number of visible pages within the survey.
8260
- * @see pageCount
8328
+ * Returns the number of visible survey pages.
8329
+ *
8330
+ * To get a total number of survey pages, use the [`pageCount`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#pageCount) property.
8261
8331
  * @see visiblePages
8332
+ * @see [Conditional Visibility](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#conditional-visibility)
8262
8333
  */
8263
8334
  get visiblePageCount(): number;
8264
8335
  /**
8265
- * Returns the started page. This property works if the `firstPageIsStarted` property is set to `true`.
8336
+ * Returns the start page. Applies only if the [`firstPageIsStarted`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#firstPageIsStarted) property is set to `true`.
8337
+ *
8338
+ * Refer to the following help topic for more information: [Start Page](https://surveyjs.io/form-library/documentation/design-survey/create-a-multi-page-survey#start-page).
8266
8339
  * @see firstPageIsStarted
8340
+ * @see activePage
8267
8341
  */
8268
8342
  get startedPage(): PageModel;
8269
8343
  /**
8270
- * Gets or sets the current survey page. If a survey is rendered, then this property returns a page that a user can see/edit.
8344
+ * Gets or sets the current page.
8345
+ *
8346
+ * If you want to change the current page, set this property to a `PageModel` object. You can get this object in different ways. For example, you can call the [`getPageByName()`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#getPageByName) method to obtain a `PageModel` object with a specific name:
8347
+ *
8348
+ * ```js
8349
+ * survey.currentPage = survey.getPageByName("my-page-name");
8350
+ * ```
8351
+ *
8352
+ * Alternatively, you can change the current page if you set the [`currentPageNo`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#currentPageNo) property to the index of the required page.
8353
+ *
8354
+ * The `currentPage` property does not return the start page even if it is current. Use the [`activePage`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#activePage) property instead if your survey contains a start page.
8271
8355
  */
8272
8356
  get currentPage(): any;
8273
8357
  set currentPage(value: any);
@@ -8275,10 +8359,10 @@ declare module "survey" {
8275
8359
  private get isCurrentPageAvailable();
8276
8360
  private isPageExistsInSurvey;
8277
8361
  /**
8278
- * Returns the currentPage, unless the started page is showing. In this case returns the started page.
8362
+ * Returns [`startedPage`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#startedPage) if the survey currently displays a start page; otherwise, returns [`currentPage`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#currentPage).
8363
+ * @see startedPage
8279
8364
  * @see currentPage
8280
8365
  * @see firstPageIsStarted
8281
- * @see startedPage
8282
8366
  */
8283
8367
  get activePage(): any;
8284
8368
  /**
@@ -8293,20 +8377,24 @@ declare module "survey" {
8293
8377
  private onStateAndCurrentPageChanged;
8294
8378
  private getPageByObject;
8295
8379
  /**
8296
- * The zero-based index of the current page in the visible pages array.
8380
+ * A zero-based index of the current page in the [`visiblePages`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#visiblePages) array.
8297
8381
  *
8298
8382
  * [View Demo](https://surveyjs.io/form-library/examples/survey-editprevious/ (linkStyle))
8383
+ * @see visiblePages
8299
8384
  */
8300
8385
  get currentPageNo(): number;
8301
8386
  set currentPageNo(value: number);
8302
8387
  /**
8303
- * Gets or sets the question display order. Use this property to randomize questions. You can randomize questions on a specific page.
8388
+ * Specifies the sort order of questions in the survey.
8304
8389
  *
8305
- * The following options are available:
8390
+ * Possible values:
8391
+ *
8392
+ * - `"initial"` (default) - Preserves the original order of questions.
8393
+ * - `"random"` - Displays questions in random order.
8306
8394
  *
8307
- * - `random` - randomize questions
8308
- * - `initial` - keep questions in the same order, as in a survey model.
8309
- * @see SurveyPage.questionsOrder
8395
+ * You can override this property for individual pages and panels.
8396
+ * @see PageModel.questionsOrder
8397
+ * @see PanelModel.questionsOrder
8310
8398
  */
8311
8399
  get questionsOrder(): string;
8312
8400
  set questionsOrder(val: string);
@@ -8345,21 +8433,17 @@ declare module "survey" {
8345
8433
  protected setCompletedState(value: string, text: string): void;
8346
8434
  notify(message: string, type: string): void;
8347
8435
  /**
8348
- * Clears the survey data and state. If the survey has a `completed` state, it will get a `running` state.
8349
- * @param clearData clear the data
8350
- * @param gotoFirstPage make the first page as a current page.
8351
- * @see data
8352
- * @see state
8353
- * @see currentPage
8436
+ * Resets the survey [`state`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#state) and, optionally, [`data`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#data). If `state` is `"completed"`, it becomes `"running"`.
8437
+ * @param clearData *Optional.* Specifies whether to clear survey data. Default value: `true`.
8438
+ * @param goToFirstPage *Optional.* Specifies whether to switch the survey to the first page. Default value: `true`.
8354
8439
  */
8355
- clear(clearData?: boolean, gotoFirstPage?: boolean): void;
8440
+ clear(clearData?: boolean, goToFirstPage?: boolean): void;
8356
8441
  mergeValues(src: any, dest: any): void;
8357
8442
  private updateValuesWithDefaults;
8358
8443
  protected updateCustomWidgets(page: PageModel): void;
8359
8444
  protected currentPageChanging(newValue: PageModel, oldValue: PageModel): boolean;
8360
8445
  protected currentPageChanged(newValue: PageModel, oldValue: PageModel): void;
8361
- private isNextPage;
8362
- private isPrevPage;
8446
+ private createPageChangeEventOptions;
8363
8447
  /**
8364
8448
  * Returns the progress that a user made while going through the survey.
8365
8449
  * It depends from progressBarType property
@@ -8525,11 +8609,11 @@ declare module "survey" {
8525
8609
  */
8526
8610
  prevPage(): boolean;
8527
8611
  /**
8528
- * Completes the survey, if the current page is the last one. It returns `false` if the last page has errors.
8529
- * If the last page has no errors, `completeLastPage` calls `doComplete` and returns `true`.
8612
+ * Completes the survey if it currently displays the last page and the page contains no validation errors. If both these conditions are met, this method returns `true`; otherwise, `false`.
8613
+ *
8614
+ * If you want to complete the survey regardless of the current page and validation errors, use the [`doComplete()`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#completeLastPage) event.
8530
8615
  * @see isCurrentPageValid
8531
8616
  * @see nextPage
8532
- * @see doComplete
8533
8617
  */
8534
8618
  completeLastPage(): boolean;
8535
8619
  private isNavigationButtonPressed;
@@ -8539,24 +8623,19 @@ declare module "survey" {
8539
8623
  nextPageUIClick(): boolean;
8540
8624
  nextPageMouseDown(): boolean;
8541
8625
  /**
8542
- * Shows preview for the survey. Switches the survey to the "preview" state.
8543
- *
8544
- * Details: [Preview State](https://surveyjs.io/Documentation/Library#states-preview)
8545
- * @see showPreviewBeforeComplete
8626
+ * Displays a [preview of given answers](https://surveyjs.io/form-library/documentation/design-survey/create-a-multi-page-survey#preview-page). Returns `false` if the preview cannot be displayed because of validation errors.
8546
8627
  * @see cancelPreview
8628
+ * @see showPreviewBeforeComplete
8629
+ * @see onShowingPreview
8547
8630
  * @see state
8548
- * @see previewText
8549
- * @see editText
8550
8631
  */
8551
8632
  showPreview(): boolean;
8552
8633
  private showPreviewCore;
8553
8634
  /**
8554
- * Cancels preview and switches back to the "running" state.
8555
- *
8556
- * Details: [Preview State](https://surveyjs.io/Documentation/Library#states-preview)
8557
- * @param curPage - A new current page. If the parameter is undefined then the last page becomes the current.
8558
- * @see showPreviewBeforeComplete
8635
+ * Cancels a [preview of given answers](https://surveyjs.io/form-library/documentation/design-survey/create-a-multi-page-survey#preview-page) and switches the survey to the page specified by the `curPage` parameter.
8636
+ * @param curPage A new current page. If you do not specify this parameter, the survey displays the last page.
8559
8637
  * @see showPreview
8638
+ * @see showPreviewBeforeComplete
8560
8639
  * @see state
8561
8640
  */
8562
8641
  cancelPreview(curPage?: any): void;
@@ -8577,8 +8656,11 @@ declare module "survey" {
8577
8656
  get questionsOnPageMode(): string;
8578
8657
  set questionsOnPageMode(val: string);
8579
8658
  /**
8580
- * Gets or sets whether the first survey page is a start page. Set this property to `true`, to make the first page a starting page.
8581
- * An end user cannot navigate to the start page and the start page does not affect a survey progress.
8659
+ * Gets or sets a Boolean value that specifies whether the first page is a start page.
8660
+ *
8661
+ * Refer to the following help topic for more information: [Start Page](https://surveyjs.io/form-library/documentation/design-survey/create-a-multi-page-survey#start-page).
8662
+ * @see startedPage
8663
+ * @see activePage
8582
8664
  */
8583
8665
  get firstPageIsStarted(): boolean;
8584
8666
  set firstPageIsStarted(val: boolean);
@@ -8635,26 +8717,19 @@ declare module "survey" {
8635
8717
  /**
8636
8718
  * Completes the survey.
8637
8719
  *
8638
- * Calling this function performs the following tasks:
8720
+ * When you call this method, Form Library performs the following actions:
8639
8721
  *
8640
- * - writes cookie if the `cookieName` property is not empty
8641
- * - sets the survey into `completed` state
8642
- * - fires the `onComplete` event
8643
- * - calls `sendResult` function.
8722
+ * 1. Saves a cookie if the [`cookieName`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#cookieName) property is set.
8723
+ * 1. Switches the survey [`state`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#state) to `"completed"`.
8724
+ * 1. Raises the [`onComplete`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onComplete) event.
8725
+ * 1. Navigates the user to a URL specified by the [`navigateToUrl`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#navigateToUrl) or [`navigateToUrlOnCondition`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#navigateToUrlOnCondition) property.
8726
+ * 1. Calls the [`sendResult()`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#sendResult) method if Form Library works with the [SurveyJS Service](https://api.surveyjs.io/).
8644
8727
  *
8645
- * Calling the `doComplete` function does not perform any validation, unlike the `completeLastPage` function.
8646
- * The function can return false, if you set options.allowComplete to false in onCompleting event. Otherwise it returns true.
8647
- * It calls `navigateToUrl` after calling `onComplete` event.
8648
- * In case calling `options.showSaveInProgress` callback in the `onComplete` event, `navigateToUrl` is used on calling `options.showSaveSuccess` callback.
8649
- * @see completeLastPage
8650
- * @see onCompleting
8651
- * @see cookieName
8652
- * @see state
8653
- * @see onComplete
8728
+ * The `doComplete()` method completes the survey regardless of validation errors and the current page. If you need to ensure that survey results are valid and full, call the [`completeLastPage()`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#completeLastPage) method instead.
8729
+ *
8730
+ * @param isCompleteOnTrigger For internal use.
8731
+ * @returns `false` if survey completion is cancelled within the [`onCompleting`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onCompleting) event handler; otherwise, `true`.
8654
8732
  * @see surveyPostId
8655
- * @see completeLastPage
8656
- * @see navigateToUrl
8657
- * @see navigateToUrlOnCondition
8658
8733
  */
8659
8734
  doComplete(isCompleteOnTrigger?: boolean): boolean;
8660
8735
  private saveDataOnComplete;
@@ -8780,13 +8855,6 @@ declare module "survey" {
8780
8855
  * @param callback a call back function to get the status on downloading the file and the downloaded file content
8781
8856
  */
8782
8857
  downloadFile(question: QuestionFileModel, questionName: string, fileValue: any, callback: (status: string, data: any) => any): void;
8783
- /**
8784
- * Clears files from server.
8785
- * @param question question
8786
- * @param name question name
8787
- * @param value file question value
8788
- * @param callback call back function to get the status of the clearing operation
8789
- */
8790
8858
  clearFiles(question: QuestionFileModel, name: string, value: any, fileName: string, callback: (status: string, data: any) => any): void;
8791
8859
  updateChoicesFromServer(question: QuestionSelectBase, choices: Array<ItemValue>, serverResult: any): Array<ItemValue>;
8792
8860
  loadedChoicesFromServer(question: IQuestion): void;
@@ -8795,16 +8863,19 @@ declare module "survey" {
8795
8863
  getPage(index: number): PageModel;
8796
8864
  /**
8797
8865
  * Adds an existing page to the survey.
8798
- * @param page a newly added page
8799
- * @param index - a page index to where insert a page. It is -1 by default and the page will be added into the end.
8866
+ * @param page A page to add.
8867
+ * @param index An index at which to insert the page. If you do not specify this parameter, the page will be added to the end.
8800
8868
  * @see addNewPage
8869
+ * @see createNewPage
8801
8870
  */
8802
8871
  addPage(page: PageModel, index?: number): void;
8803
8872
  /**
8804
- * Creates a new page and adds it to a survey. Generates a new name if the `name` parameter is not specified.
8805
- * @param name a page name
8806
- * @param index - a page index to where insert a new page. It is -1 by default and the page will be added into the end.
8873
+ * Creates a new page and adds it to the survey.
8874
+ * @param name A page name. If you do not specify this parameter, it will be generated automatically.
8875
+ * @param index An index at which to insert the page. If you do not specify this parameter, the page will be added to the end.
8876
+ * @returns The created and added page.
8807
8877
  * @see addPage
8878
+ * @see createNewPage
8808
8879
  */
8809
8880
  addNewPage(name?: string, index?: number): PageModel;
8810
8881
  /**
@@ -8887,8 +8958,9 @@ declare module "survey" {
8887
8958
  */
8888
8959
  getAllPanels(visibleOnly?: boolean, includingDesignTime?: boolean): Array<IPanel>;
8889
8960
  /**
8890
- * Creates and returns a new page, but do not add it into the survey.
8891
- * You can use addPage(page) function to add it into survey later.
8961
+ * Creates and returns a new page but does not add it to the survey.
8962
+ *
8963
+ * Call the [`addPage(page)`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#addPage) method to add the created page to the survey later or the [`addNewPage(name, index)`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#addNewPage) method to create _and_ add a page to the survey.
8892
8964
  * @see addPage
8893
8965
  * @see addNewPage
8894
8966
  */
@@ -9039,8 +9111,11 @@ declare module "survey" {
9039
9111
  */
9040
9112
  clearValue(name: string): void;
9041
9113
  /**
9042
- * Gets or sets whether to clear value on disable items in checkbox, dropdown and radiogroup questions.
9043
- * By default, values are not cleared on disabled the corresponded items. This property is not persisted in survey JSON and you have to set it in code.
9114
+ * Specifies whether to remove disabled choices from the value in [Dropdown](https://surveyjs.io/form-library/documentation/api-reference/dropdown-menu-model), [Checkboxes](https://surveyjs.io/form-library/documentation/api-reference/checkbox-question-model), and [Radio Button Group](https://surveyjs.io/form-library/documentation/api-reference/radio-button-question-model) questions.
9115
+ *
9116
+ * Default value: `false`
9117
+ *
9118
+ * > This property cannot be specified in the survey JSON schema. Use dot notation to specify it.
9044
9119
  */
9045
9120
  get clearValueOnDisableItems(): boolean;
9046
9121
  set clearValueOnDisableItems(val: boolean);
@@ -9217,6 +9292,7 @@ declare module "survey" {
9217
9292
  * @param name question name
9218
9293
  */
9219
9294
  focusQuestion(name: string): boolean;
9295
+ questionEditFinishCallback(question: Question, event: any): void;
9220
9296
  getElementWrapperComponentName(element: any, reason?: string): string;
9221
9297
  getQuestionContentWrapperComponentName(element: any): string;
9222
9298
  getRowWrapperComponentName(row: QuestionRowModel): string;
@@ -9260,6 +9336,27 @@ declare module "survey" {
9260
9336
  disposeCallback: () => void;
9261
9337
  }
9262
9338
  }
9339
+ declare module "drag-drop-page-helper-v1" {
9340
+ import { IElement, ISurveyElement } from "base-interfaces";
9341
+ import { PageModel } from "page";
9342
+ export class DragDropPageHelperV1 {
9343
+ private page;
9344
+ constructor(page: PageModel);
9345
+ private dragDropInfo;
9346
+ getDragDropInfo(): any;
9347
+ dragDropStart(src: IElement, target: IElement, nestedPanelDepth?: number): void;
9348
+ dragDropMoveTo(destination: ISurveyElement, isBottom?: boolean, isEdge?: boolean): boolean;
9349
+ private correctDragDropInfo;
9350
+ private dragDropAllowFromSurvey;
9351
+ dragDropFinish(isCancel?: boolean): IElement;
9352
+ private dragDropGetElementIndex;
9353
+ private dragDropCanDropTagert;
9354
+ private dragDropCanDropSource;
9355
+ private dragDropCanDropCore;
9356
+ private dragDropCanDropNotNext;
9357
+ private dragDropIsSameElement;
9358
+ }
9359
+ }
9263
9360
  declare module "page" {
9264
9361
  import { IPage, IPanel, IElement, ISurveyElement } from "base-interfaces";
9265
9362
  import { PanelModelBase } from "panel";
@@ -9271,6 +9368,7 @@ declare module "page" {
9271
9368
  */
9272
9369
  export class PageModel extends PanelModelBase implements IPage {
9273
9370
  private hasShownValue;
9371
+ private dragDropPageHelper;
9274
9372
  constructor(name?: string);
9275
9373
  getType(): string;
9276
9374
  toString(): string;
@@ -9280,7 +9378,7 @@ declare module "page" {
9280
9378
  /**
9281
9379
  * A caption displayed on a navigation button in the TOC or progress bar. Applies when [`showTOC`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showTOC) is `true` or when [`showProgressBar`](https://surveyjs.io/form-library/documentation/surveymodel#showProgressBar) is `true` and [`progressBarType`](https://surveyjs.io/form-library/documentation/surveymodel#progressBarType) is `"buttons"`.
9282
9380
  *
9283
- * If this property is undefined, the navigation buttons display page [titles](https://surveyjs.io/form-library/documentation/api-reference/page-model#title) or [names](https://surveyjs.io/form-library/documentation/pagemodel#name).
9381
+ * If navigation titles are unspecified, the navigation buttons display page [titles](https://surveyjs.io/form-library/documentation/api-reference/page-model#title) or [names](https://surveyjs.io/form-library/documentation/pagemodel#name).
9284
9382
  */
9285
9383
  get navigationTitle(): string;
9286
9384
  set navigationTitle(val: string);
@@ -9357,22 +9455,31 @@ declare module "page" {
9357
9455
  set maxTimeToFinish(val: number);
9358
9456
  protected onNumChanged(value: number): void;
9359
9457
  protected onVisibleChanged(): void;
9360
- private dragDropInfo;
9361
- protected getDragDropInfo(): any;
9458
+ getDragDropInfo(): any;
9362
9459
  dragDropStart(src: IElement, target: IElement, nestedPanelDepth?: number): void;
9363
9460
  dragDropMoveTo(destination: ISurveyElement, isBottom?: boolean, isEdge?: boolean): boolean;
9364
- private correctDragDropInfo;
9365
- private dragDropAllowFromSurvey;
9366
9461
  dragDropFinish(isCancel?: boolean): IElement;
9367
- private dragDropGetElementIndex;
9368
- private dragDropCanDropTagert;
9369
- private dragDropCanDropSource;
9370
- private dragDropCanDropCore;
9371
- private dragDropCanDropNotNext;
9372
- private dragDropIsSameElement;
9373
9462
  ensureRowsVisibility(): void;
9374
9463
  }
9375
9464
  }
9465
+ declare module "drag-drop-panel-helper-v1" {
9466
+ import { IElement, ISurveyElement } from "base-interfaces";
9467
+ import { DragDropInfo } from "drag-drop-helper-v1";
9468
+ import { PanelModelBase, QuestionRowModel } from "panel";
9469
+ export class DragDropPanelHelperV1 {
9470
+ private panel;
9471
+ constructor(panel: PanelModelBase);
9472
+ dragDropAddTarget(dragDropInfo: DragDropInfo): void;
9473
+ dragDropFindRow(findElement: ISurveyElement): QuestionRowModel;
9474
+ dragDropMoveElement(src: IElement, target: IElement, targetIndex: number): void;
9475
+ updateRowsOnElementAdded(element: IElement, index: number, dragDropInfo?: DragDropInfo, thisElement?: PanelModelBase): void;
9476
+ private dragDropAddTargetToRow;
9477
+ private dragDropAddTargetToEmptyPanel;
9478
+ private dragDropAddTargetToExistingRow;
9479
+ private dragDropAddTargetToNewRow;
9480
+ private dragDropAddTargetToEmptyPanelCore;
9481
+ }
9482
+ }
9376
9483
  declare module "panel" {
9377
9484
  import { HashTable } from "helpers";
9378
9485
  import { Base } from "base";
@@ -9384,15 +9491,7 @@ declare module "panel" {
9384
9491
  import { SurveyError } from "survey-error";
9385
9492
  import { IAction } from "actions/action";
9386
9493
  import { ActionContainer } from "actions/container";
9387
- export class DragDropInfo {
9388
- source: IElement;
9389
- target: IElement;
9390
- nestedPanelDepth: number;
9391
- constructor(source: IElement, target: IElement, nestedPanelDepth?: number);
9392
- destination: ISurveyElement;
9393
- isBottom: boolean;
9394
- isEdge: boolean;
9395
- }
9494
+ import { DragDropInfo } from "drag-drop-helper-v1";
9396
9495
  export class QuestionRowModel extends Base {
9397
9496
  panel: PanelModelBase;
9398
9497
  private static rowCounter;
@@ -9439,6 +9538,7 @@ declare module "panel" {
9439
9538
  addElementCallback: (element: IElement) => void;
9440
9539
  removeElementCallback: (element: IElement) => void;
9441
9540
  onGetQuestionTitleLocation: () => string;
9541
+ private dragDropPanelHelper;
9442
9542
  constructor(name?: string);
9443
9543
  getType(): string;
9444
9544
  setSurveyImpl(value: ISurveyImpl, isLight?: boolean): void;
@@ -9652,10 +9752,10 @@ declare module "panel" {
9652
9752
  getQuestionStartIndex(): string;
9653
9753
  getChildrenLayoutType(): string;
9654
9754
  getProgressInfo(): IProgressInfo;
9655
- protected get root(): PanelModelBase;
9755
+ get root(): PanelModelBase;
9656
9756
  protected childVisibilityChanged(): void;
9657
- protected createRowAndSetLazy(index: number): QuestionRowModel;
9658
- protected createRow(): QuestionRowModel;
9757
+ createRowAndSetLazy(index: number): QuestionRowModel;
9758
+ createRow(): QuestionRowModel;
9659
9759
  onSurveyLoad(): void;
9660
9760
  onFirstRendering(): void;
9661
9761
  updateRows(): void;
@@ -9667,15 +9767,14 @@ declare module "panel" {
9667
9767
  private onElementVisibilityChanged;
9668
9768
  private onElementStartWithNewLineChanged;
9669
9769
  private updateRowsVisibility;
9670
- private canBuildRows;
9770
+ canBuildRows(): boolean;
9671
9771
  private buildRows;
9672
9772
  private isLazyRenderInRow;
9673
9773
  protected canRenderFirstRows(): boolean;
9674
- protected getDragDropInfo(): any;
9675
- private updateRowsOnElementAdded;
9774
+ getDragDropInfo(): any;
9676
9775
  private updateRowsOnElementRemoved;
9677
- protected updateRowsRemoveElementFromRow(element: IElement, row: QuestionRowModel): void;
9678
- private findRowByElement;
9776
+ updateRowsRemoveElementFromRow(element: IElement, row: QuestionRowModel): void;
9777
+ findRowByElement(el: IElement): QuestionRowModel;
9679
9778
  elementWidthChanged(el: IElement): void;
9680
9779
  get processedTitle(): string;
9681
9780
  protected getRenderedTitle(str: string): string;
@@ -9765,13 +9864,8 @@ declare module "panel" {
9765
9864
  runCondition(values: HashTable<any>, properties: HashTable<any>): void;
9766
9865
  onAnyValueChanged(name: string): void;
9767
9866
  checkBindings(valueName: string, value: any): void;
9768
- protected dragDropAddTarget(dragDropInfo: DragDropInfo): void;
9867
+ dragDropAddTarget(dragDropInfo: DragDropInfo): void;
9769
9868
  dragDropFindRow(findElement: ISurveyElement): QuestionRowModel;
9770
- private dragDropAddTargetToRow;
9771
- private dragDropAddTargetToEmptyPanel;
9772
- private dragDropAddTargetToExistingRow;
9773
- private dragDropAddTargetToNewRow;
9774
- private dragDropAddTargetToEmptyPanelCore;
9775
9869
  dragDropMoveElement(src: IElement, target: IElement, targetIndex: number): void;
9776
9870
  needResponsiveWidth(): boolean;
9777
9871
  get hasDescriptionUnderTitle(): boolean;
@@ -10071,6 +10165,7 @@ declare module "question" {
10071
10165
  */
10072
10166
  onReadyChanged: EventBase<Question>;
10073
10167
  isReadOnlyRenderDiv(): boolean;
10168
+ protected setIsMobile(val: boolean): void;
10074
10169
  isMobile: boolean;
10075
10170
  constructor(name: string);
10076
10171
  protected createLocTitleProperty(): LocalizableString;
@@ -10693,7 +10788,7 @@ declare module "question" {
10693
10788
  *
10694
10789
  * Call this method after you assign new question values in code to ensure that they are acceptable.
10695
10790
  *
10696
- * > This method does not remove values that do not pass validation. Call the `validate()` method to validate newly assigned values.
10791
+ * > This method does not remove values that fail validation. Call the `validate()` method to validate newly assigned values.
10697
10792
  *
10698
10793
  * @see validate
10699
10794
  */
@@ -11020,6 +11115,7 @@ declare module "question_matrixdropdownbase" {
11020
11115
  onCreateDetailPanelRenderedRowCallback: (renderedRow: QuestionMatrixDropdownRenderedRow) => void;
11021
11116
  onAddColumn: (column: MatrixDropdownColumn) => void;
11022
11117
  onRemoveColumn: (column: MatrixDropdownColumn) => void;
11118
+ cellValueChangingCallback: (row: any, columnName: string, value: any, oldValue: any) => any;
11023
11119
  protected createColumnValues(): any[];
11024
11120
  constructor(name: string);
11025
11121
  getType(): string;
@@ -12304,6 +12400,7 @@ declare module "question_dropdown" {
12304
12400
  getType(): string;
12305
12401
  get ariaRole(): string;
12306
12402
  get selectedItem(): ItemValue;
12403
+ protected onGetSingleSelectedItem(selectedItemByValue: ItemValue): void;
12307
12404
  supportGoNextPageAutomatic(): boolean;
12308
12405
  private minMaxChoices;
12309
12406
  protected getChoices(): Array<ItemValue>;
@@ -12373,6 +12470,7 @@ declare module "question_dropdown" {
12373
12470
  */
12374
12471
  choicesLazyLoadPageSize: number;
12375
12472
  getControlClass(): string;
12473
+ suggestedItem: ItemValue;
12376
12474
  get selectedItemLocText(): LocalizableString;
12377
12475
  get inputFieldComponentName(): string;
12378
12476
  get showSelectedItemLocText(): boolean;
@@ -12772,6 +12870,7 @@ declare module "dropdownMultiSelectListModel" {
12772
12870
  private getSelectedActions;
12773
12871
  protected getFocusFirstInputSelector(): string;
12774
12872
  protected createListModel(): MultiSelectListModel<ItemValue>;
12873
+ protected resetFilterString(): void;
12775
12874
  previousValue: any;
12776
12875
  doneButtonCaption: string;
12777
12876
  private get shouldResetAfterCancel();
@@ -13215,10 +13314,11 @@ declare module "question_rating" {
13215
13314
  export class RenderedRatingItem extends Base {
13216
13315
  itemValue: ItemValue;
13217
13316
  private locString;
13317
+ private onStringChangedCallback;
13218
13318
  get value(): number;
13219
13319
  highlight: "none" | "highlighted" | "unhighlighted";
13220
13320
  get locText(): LocalizableString;
13221
- get text(): string;
13321
+ text: string;
13222
13322
  constructor(itemValue: ItemValue, locString?: LocalizableString);
13223
13323
  }
13224
13324
  /**
@@ -13228,7 +13328,15 @@ declare module "question_rating" {
13228
13328
  */
13229
13329
  export class QuestionRatingModel extends Question {
13230
13330
  constructor(name: string);
13331
+ private jsonObj;
13332
+ startLoadingFromJson(jsonObj: any): void;
13231
13333
  endLoadingFromJson(): void;
13334
+ private _syncPropertiesChanging;
13335
+ private registerSychProperties;
13336
+ private updateRateMax;
13337
+ private updateRateMin;
13338
+ private updateRateCount;
13339
+ initPropertyDependencies(): void;
13232
13340
  /**
13233
13341
  * A list of rate values.
13234
13342
  *
@@ -13248,43 +13356,46 @@ declare module "question_rating" {
13248
13356
  *
13249
13357
  * 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.
13250
13358
  *
13251
- * If you do not specify the `rateValues` property, rate values are generated automatically based upon the `rateMin`, `rateMax`, and `rateStep` property values.
13252
- * @see rateMin
13253
- * @see rateMax
13254
- * @see rateStep
13359
+ * If you do not specify the `rateValues` property, rate values are generated automatically based upon the [`rateMin`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateMin), [`rateMax`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateMax), [`rateStep`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateStep), and [`rateCount`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateCount) property values.
13255
13360
  */
13256
13361
  get rateValues(): Array<any>;
13257
13362
  set rateValues(val: Array<any>);
13258
13363
  /**
13259
- * Specifies the first rate value in the generated sequence of rate values. Applies if the `rateValues` array is empty.
13364
+ * Specifies the first rate value in the generated sequence of rate values. Applies if the [`rateValues`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateValues) array is empty.
13260
13365
  *
13261
13366
  * Default value: 1
13262
- * @see rateValues
13263
13367
  * @see rateMax
13264
13368
  * @see rateStep
13369
+ * @see rateCount
13265
13370
  */
13266
13371
  get rateMin(): number;
13267
13372
  set rateMin(val: number);
13268
13373
  /**
13269
- * Specifies the last rate value in the generated sequence of rate values. Applies if the `rateValues` array is empty.
13374
+ * Specifies the last rate value in the generated sequence of rate values. Applies if the [`rateValues`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateValues) array is empty.
13270
13375
  *
13271
13376
  * Default value: 5
13272
- * @see rateValues
13273
13377
  * @see rateMin
13274
13378
  * @see rateStep
13379
+ * @see rateCount
13275
13380
  */
13276
13381
  get rateMax(): number;
13277
13382
  set rateMax(val: number);
13278
13383
  /**
13279
- * Specifies a step with which to generate rate values. Applies if the `rateValues` array is empty.
13384
+ * Specifies a step with which to generate rate values. Applies if the [`rateValues`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateValues) array is empty.
13280
13385
  *
13281
13386
  * Default value: 1
13282
- * @see rateValues
13283
13387
  * @see rateMin
13284
13388
  * @see rateMax
13389
+ * @see rateCount
13285
13390
  */
13286
13391
  get rateStep(): number;
13287
13392
  set rateStep(val: number);
13393
+ /**
13394
+ * Specifies the number of rate values you want to generate. Applies if the [`rateValues`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateValues) array is empty.
13395
+ *
13396
+ * Set the [`rateMin`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateMin) or [`rateMax`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateMax) property to specify the first or the last rate value. Use the [`rateStep`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateStep) property to specify a step with which to generate rate values.
13397
+ */
13398
+ rateCount: number;
13288
13399
  protected getDisplayValueCore(keysAsText: boolean, value: any): any;
13289
13400
  get visibleRateValues(): ItemValue[];
13290
13401
  itemValuePropertyChanged(item: ItemValue, name: string, oldValue: any, newValue: any): void;
@@ -13634,6 +13745,7 @@ declare module "surveyToc" {
13634
13745
  import { SurveyModel } from "survey";
13635
13746
  export function tryNavigateToPage(survey: SurveyModel, index: number): boolean;
13636
13747
  export function createTOCListModel(survey: SurveyModel): ListModel<Action>;
13748
+ export function getTocRootCss(survey: SurveyModel): string;
13637
13749
  }
13638
13750
  declare module "surveyProgress" {
13639
13751
  export class SurveyProgressModel {
@@ -14015,6 +14127,7 @@ declare module "question_custom" {
14015
14127
  onAnyValueChanged(name: string): void;
14016
14128
  protected getQuestionByName(name: string): IQuestion;
14017
14129
  setValue(name: string, newValue: any, locNotification: any, allowNotifyValueChanged?: boolean): any;
14130
+ protected onSetData(): void;
14018
14131
  hasErrors(fireCallback?: boolean, rec?: any): boolean;
14019
14132
  focus(onError?: boolean): void;
14020
14133
  get contentQuestion(): Question;
@@ -14133,6 +14246,7 @@ declare module "popup-dropdown-view-model" {
14133
14246
  private static readonly tabletSizeBreakpoint;
14134
14247
  private calculateIsTablet;
14135
14248
  private resizeEventCallback;
14249
+ private resizeWindowCallback;
14136
14250
  private clientY;
14137
14251
  private isTablet;
14138
14252
  private touchStartEventCallback;
@@ -14251,6 +14365,7 @@ declare module "dragdrop/survey-elements" {
14251
14365
  protected getDraggedElementClass(): string;
14252
14366
  protected createElementFromJson(json: object): HTMLElement;
14253
14367
  private createNewElement;
14368
+ protected findDropTargetNodeByDragOverNode(dragOverNode: HTMLElement): HTMLElement;
14254
14369
  protected getDropTargetByDataAttributeValue(dataAttributeValue: string, dropTargetNode: HTMLElement, event: PointerEvent): any;
14255
14370
  protected isDropTargetValid(): boolean;
14256
14371
  protected calculateIsBottom(clientY: number, dropTargetNode?: HTMLElement): boolean;
@@ -14601,6 +14716,8 @@ declare module "defaultCss/cssstandard" {
14601
14716
  paneldynamic: {
14602
14717
  root: string;
14603
14718
  title: string;
14719
+ header: string;
14720
+ headerTab: string;
14604
14721
  button: string;
14605
14722
  buttonAdd: string;
14606
14723
  buttonRemove: string;
@@ -14669,10 +14786,15 @@ declare module "defaultCss/cssstandard" {
14669
14786
  rating: {
14670
14787
  root: string;
14671
14788
  item: string;
14789
+ itemFixedSize: string;
14672
14790
  selected: string;
14673
14791
  minText: string;
14674
14792
  itemText: string;
14675
14793
  maxText: string;
14794
+ itemStar: string;
14795
+ itemStarSelected: string;
14796
+ itemSmiley: string;
14797
+ itemSmileySelected: string;
14676
14798
  };
14677
14799
  text: {
14678
14800
  root: string;
@@ -15108,6 +15230,10 @@ declare module "defaultCss/cssmodern" {
15108
15230
  cleanButtonIconId: string;
15109
15231
  controlValue: string;
15110
15232
  controlInputFieldComponent: string;
15233
+ itemSmiley: string;
15234
+ itemStar: string;
15235
+ itemSmileySelected: string;
15236
+ itemStarSelected: string;
15111
15237
  };
15112
15238
  comment: {
15113
15239
  root: string;
@@ -17641,7 +17767,9 @@ declare module "localization/german" {
17641
17767
  modalCancelButtonText: string;
17642
17768
  modalApplyButtonText: string;
17643
17769
  filterStringPlaceholder: string;
17770
+ emptyMessage: string;
17644
17771
  noEntriesText: string;
17772
+ more: string;
17645
17773
  };
17646
17774
  }
17647
17775
  declare module "localization/greek" {
@@ -21278,8 +21406,8 @@ declare module "react/reactquestion_matrixdropdownbase" {
21278
21406
  renderHeader(): JSX.Element | null;
21279
21407
  renderFooter(): JSX.Element | null;
21280
21408
  renderRows(): JSX.Element;
21281
- renderRow(keyValue: any, row: QuestionMatrixDropdownRenderedRow, cssClasses: any): JSX.Element;
21282
- renderCell(cell: QuestionMatrixDropdownRenderedCell, index: number, cssClasses: any): JSX.Element;
21409
+ renderRow(keyValue: any, row: QuestionMatrixDropdownRenderedRow, cssClasses: any, reason?: string): JSX.Element;
21410
+ renderCell(cell: QuestionMatrixDropdownRenderedCell, index: number, cssClasses: any, reason?: string): JSX.Element;
21283
21411
  private renderCellContent;
21284
21412
  }
21285
21413
  export class SurveyQuestionMatrixDropdownCell extends SurveyQuestionAndErrorsCell {