/** @module Survey Builder: Selection (Choice / Answer) */ /** * A Selection represents the selectable option presented to any Survey-taker. Selection is an abstraction over Choices and Answers. * The values collected through survey-taker input for a Selection are reportable (meaning analytics and reports can be devised to interpret them) * Many Questions only have Choices (e.g. MultipleChoice, Rank Order, Constant Sum). Some questions have both Choices and Answers (e.g. Matrix). * Some Questions have neither (Text Entry) */ export declare enum SelectionType { /** * Choices are the most basic selectable option for a Multiple Choice Question. * For various Question Types, Choices are (usually) used to store the vertical axis for selectable options - e.g. with Matrix these are the Statements. */ Choice = "choice", /** * Answers are the selectable options for any question with a secondary axis (e.g. Matrix, Side-By-Side). * Most Question Types do not have Answers. Matrix uses Answers to store the Scale Points. */ Answer = "answer", /** * Groups are the selectable options to use to group items for Pick Group and Rank based question types */ Group = "group", /** * Regions are the selectable options for HotSpot and Heatmap based question types. */ Region = "region" } /** * DynamicSelections are Selections in a Question that are dynamically generated from another source in the survey. * This includes ReusableSelections (ReferenceList) and CarryForwardSelections (ChoiceGroups). */ export declare enum DynamicSelectionType { /** * Dynamic ReferenceList Selections are ReusableChoices or ReusableAnswers. * See https://www.qualtrics.com/support/survey-platform/survey-module/survey-tools/reusable-choices/ */ ReusableSelections = "referencelist", /** * CarryForwardSelection are dynamically sourced Selections groupings (aka ChoiceGroups or groups of selections (used as one of the SelectionType types) * See https://www.qualtrics.com/support/survey-platform/survey-module/question-options/carry-forward-choices/ * CarryForwardSelecctions are incompatible with ChoiceGroup presentation groupings (see UnimplementedChoiceGroupsBuilder), * even though both use the term ChoiceGroups in the model. */ CarryForwardSelection = "choicegroup" } /** * SelectionDefinition defines the fields available on Choices and Answers */ export interface SelectionDefinition { readonly Display: string; } /** * Choices are the most basic selectable option for a Multiple Choice Question. * For various Question Types, Choices are (usually) used to store the vertical axis for selectable options - e.g. with Matrix these are the Statements. */ export interface Choice extends SelectionDefinition { } /** * Answers are the selectable options for any question with a secondary axis (e.g. Matrix, Side-By-Side). * Most Question Types do not have Answers. Matrix uses Answers to store the Scale Points. */ export interface Answer extends SelectionDefinition { } /** * Groups are only used on PGR-based QuestionTypes, and represent the destination containers for Items (stored as Choices). */ export type Group = string; /** * Selections are a collection of Selection (Choice or Answer), mapped by an ID (string number). * The ID is controlled by the Survey Builder. In order to prevent unintended response data associations in certain scenarios, * you should expect the IDs of newly-created selections to be effectively random. */ export type Selections = Record; /** * SelectionOrder defines the default presentation order for selections during survey taking. * SelectionRandomization (ChoiceRandomization or AnswerRandomization) can affect the display order during survey taking. */ export type SelectionOrder = (number | string)[]; /** * QuestionChoices defines the fields necessary for questions with Choice type Selections * If you have Choices you also must have ChoiceOrder */ export interface QuestionChoices { readonly Choices: Selections; readonly ChoiceOrder: SelectionOrder; } /** * QuestionAnswers defines the fields necessary for questions with Answer type Selections * If you have Answers you also must have AnswerOrder */ export interface QuestionAnswers { readonly Answers: Selections; readonly AnswerOrder: SelectionOrder; } /** * QuestionColumnLabels are not selectable, but are used to augment the presentation of Selections during survey taking */ export interface QuestionColumnLabels { readonly ColumnLabels: Record; } /** * SelectionOptions represent available configurations for a Selection (Choice or Answer). Custom */ export interface SelectionOptions { /** * ExcludeFromAnalysis defaults to false. When set to true, the Selection will not be reportable, nor will it export with Response data. * See https://www.qualtrics.com/support/survey-platform/survey-module/editing-questions/formatting-answer-choices/#ExcludefromAnalysis */ readonly ExcludeFromAnalysis?: boolean; /** * TextEntry defaults to false. When set to true, The Selection will enable an additional text entry field to collect textual data. * This allows survey-taker to augment their Selection with a text based qualitative or quantitative response * See https://www.qualtrics.com/support/survey-platform/survey-module/editing-questions/formatting-answer-choices/#AllowTextEntry */ readonly TextEntry?: boolean; /** * TextEntrySize requires TextEntry set to true * Allows configuring the size of the textbox presented to the survey-taker. Default size is Small * See https://www.qualtrics.com/support/survey-platform/survey-module/editing-questions/formatting-answer-choices/#AllowTextEntry */ readonly TextEntrySize?: SelectionTextEntrySize; /** * TextEntryValidation requires TextEntry set to true * If None, the TextEntryValidation will be removed * See https://www.qualtrics.com/support/survey-platform/survey-module/editing-questions/formatting-answer-choices/#AllowTextEntry */ readonly TextEntryValidation?: SelectionTextEntryValidation; /** * With ExclusiveAnswer set to true, if the Selection input is activated, the survey-taking system will eliminate all other selection inputs across the whole question. * See https://www.qualtrics.com/support/survey-platform/survey-module/editing-questions/formatting-answer-choices/#MakeAnswerExclusive */ readonly ExclusiveAnswer?: boolean; } /** * SelectionTextEntrySize are all the possible sizes for a text entry field attached directly to a Selection within a Question. */ export declare enum SelectionTextEntrySize { Small = "Small", Medium = "Medium", Large = "Large" } /** * SelectionTextEntryValidation represent the built-in validation rules that may be applied to a Selection Text Entry field during survey taking */ export declare enum SelectionTextEntryValidation { None = "", USPhone = "USPhone", CAPhone = "CAPhone", UKPhone = "UKPhone", AUPhone = "AUPhone", NZPhone = "NZPhone", NLPhone = "NLPhone", USZip = "USZip", CAZip = "CAZip", UKZip = "UKZip", AUZip = "AUZip", NZZip = "NZZip", NLZip = "NLZip", DateWithFormat = "DateWithFormat", DateAltFormat = "DateAltFormat", DateIntlFormat = "DateIntlFormat", ValidDate = "ValidDate", ValidZip = "ValidZip", ValidPhone = "ValidPhone", ValidEmail = "ValidEmail", ValidNumber = "ValidNumber", ValidTextOnly = "ValidTextOnly", ValidUSPhone = "ValidUSPhone", ValidUSState = "ValidUSState", ValidUSZip = "ValidUSZip", ForceResponse = "ForceResponse" } /** * QuestionRegions are used by HotSpot and HeatMap question types. * Both are currently unsupported in the Question Type Platform. */ export interface QuestionRegions { readonly Regions?: RegionDefinition[]; } /** * RegionDefinition is used by HotSpot and HeatMap question types. * Both are currently unsupported in the Question Type Platform. */ export interface RegionDefinition { readonly Description: string; readonly Height: number; readonly Width: number; readonly X: number; readonly Y: number; readonly Type?: RegionDefinitionType; readonly Shapes?: RegionDefinitionShape[]; readonly ChoiceID?: string; } /** * RegionDefinitionType is used by HotSpot and HeatMap question types. * Both are currently unsupported in the Question Type Platform. */ export declare enum RegionDefinitionType { Polygon = "Polygon" } /** * RegionDefinitionShape are used by HotSpot and HeatMap question types. * Both are currently unsupported in the Question Type Platform. */ export interface RegionDefinitionShape { readonly X: number; readonly Y: number; } //# sourceMappingURL=selectionSurveyBuilding.d.ts.map