import { Parameter, ParameterValues, QuestionWithParameters, RecordClass, ParameterValue, SearchConfig } from '../Utils/WdkModel'; import { AddType } from '../Views/Strategy/Types'; import { NewStepSpec, Step } from '../Utils/WdkUser'; import { WdkService } from '../Core'; export declare type Action = UpdateActiveQuestionAction | QuestionLoadedAction | UnloadQuestionAction | QuestionErrorAction | QuestionNotFoundAction | UpdateCustomQuestionName | UpdateQuestionWeightAction | SubmitQuestionAction | UpdateParamValueAction | ParamErrorAction | UpdateDependentParamsAction | InitParamAction | UpdateParamStateAction | ChangeGroupVisibilityAction | GroupCountLoadedAction | EnableSubmissionAction; declare type QuestionPayload = T & { searchName: string; }; export declare const UPDATE_ACTIVE_QUESTION = "question/update-active-question"; export interface UpdateActiveQuestionAction { type: typeof UPDATE_ACTIVE_QUESTION; payload: QuestionPayload<{ autoRun: boolean; prepopulateWithLastParamValues: boolean; initialParamData?: Record; stepId: number | undefined; submissionMetadata?: SubmissionMetadata; }>; } export declare function updateActiveQuestion(payload: { searchName: string; autoRun: boolean; prepopulateWithLastParamValues: boolean; initialParamData?: Record; stepId: number | undefined; submissionMetadata?: SubmissionMetadata; }): UpdateActiveQuestionAction; export declare const QUESTION_LOADED = "question/question-loaded"; export interface QuestionLoadedAction { type: typeof QUESTION_LOADED; payload: QuestionPayload<{ autoRun: boolean; prepopulateWithLastParamValues: boolean; question: QuestionWithParameters; recordClass: RecordClass; paramValues: ParameterValues; defaultParamValues: ParameterValues; initialParamData?: Record; wdkWeight?: number; customName?: string; stepValidation?: Step['validation']; submissionMetadata?: SubmissionMetadata; }>; } export declare function questionLoaded(payload: QuestionLoadedAction['payload']): QuestionLoadedAction; export declare const UNLOAD_QUESTION = "question/unload-question"; export interface UnloadQuestionAction { type: typeof UNLOAD_QUESTION; payload: QuestionPayload<{}>; } export declare function unloadQuestion(payload: QuestionPayload<{}>): UnloadQuestionAction; export declare const QUESTION_ERROR = "question/question-error"; export interface QuestionErrorAction { type: typeof QUESTION_ERROR; payload: QuestionPayload<{}>; } export declare function questionError(payload: QuestionErrorAction['payload']): QuestionErrorAction; export declare const QUESTION_NOT_FOUND = "question/question-not-found"; export interface QuestionNotFoundAction { type: typeof QUESTION_NOT_FOUND; payload: QuestionPayload<{}>; } export declare function questionNotFound(payload: QuestionNotFoundAction['payload']): QuestionNotFoundAction; export declare const UPDATE_CUSTOM_QUESTION_NAME = "question/update-custom-name"; export interface UpdateCustomQuestionName { type: typeof UPDATE_CUSTOM_QUESTION_NAME; payload: QuestionPayload<{ customName?: string; }>; } export declare function updateCustomQuestionName(payload: UpdateCustomQuestionName['payload']): UpdateCustomQuestionName; export declare const UPDATE_QUESTION_WEIGHT = "question/update-weight"; export interface UpdateQuestionWeightAction { type: typeof UPDATE_QUESTION_WEIGHT; payload: QuestionPayload<{ weight?: string; }>; } export declare function updateQuestionWeight(payload: UpdateQuestionWeightAction['payload']): UpdateQuestionWeightAction; export declare const SUBMIT_QUESTION = "question/submit-question"; declare type NewStrategy = { type: 'create-strategy'; webServicesTutorialSubmission?: boolean; strategyName?: string; }; declare type AddBinaryStep = { type: 'add-binary-step'; strategyId: number; operatorSearchName: string; addType: AddType; }; declare type AddUnaryStep = { type: 'add-unary-step'; strategyId: number; addType: AddType; }; declare type SubmitCustomForm = { type: 'submit-custom-form'; stepId?: number; onStepSubmitted: (wdkService: WdkService, submissionSpec: NewStepSpec) => void; }; declare type EditStep = { type: 'edit-step'; strategyId: number; stepId: number; previousSearchConfig: SearchConfig; }; export declare type SubmissionMetadata = NewStrategy | AddBinaryStep | AddUnaryStep | SubmitCustomForm | EditStep; export interface SubmitQuestionAction { type: typeof SUBMIT_QUESTION; payload: QuestionPayload<{ submissionMetadata: SubmissionMetadata; autoRun?: boolean; }>; } export declare const submitQuestion: { (payload: QuestionPayload<{ submissionMetadata: SubmissionMetadata; autoRun?: boolean | undefined; }>): import("../Utils/ActionCreatorUtils").Action<"question/submit-question", QuestionPayload<{ submissionMetadata: SubmissionMetadata; autoRun?: boolean | undefined; }>>; readonly type: "question/submit-question"; } & import("../Utils/ActionCreatorUtils").ActionTypeGuardContainer>>; export declare const UPDATE_PARAM_VALUE = "question/update-param-value"; export interface UpdateParamValueAction { type: typeof UPDATE_PARAM_VALUE; payload: QuestionPayload<{ parameter: Parameter; paramValues: ParameterValues; paramValue: ParameterValue; }>; } export declare function updateParamValue(payload: UpdateParamValueAction['payload']): UpdateParamValueAction; export declare const PARAM_ERROR = "question/param-error"; export interface ParamErrorAction { type: typeof PARAM_ERROR; payload: QuestionPayload<{ error: string; paramName: string; }>; } export declare function paramError(payload: ParamErrorAction['payload']): ParamErrorAction; export declare const UPDATE_DEPENDENT_PARAMS = "question/update-dependent-params"; export interface UpdateDependentParamsAction { type: typeof UPDATE_DEPENDENT_PARAMS; payload: QuestionPayload<{ updatedParameter: Parameter; refreshedDependentParameters: Parameter[]; }>; } export declare function updateDependentParams(payload: UpdateDependentParamsAction['payload']): UpdateDependentParamsAction; export declare const INIT_PARAM = "question/init-param"; export interface InitParamAction { type: typeof INIT_PARAM; payload: QuestionPayload<{ parameter: Parameter; paramValues: ParameterValues; initialParamData?: Record; }>; } export declare function initParam(payload: InitParamAction['payload']): InitParamAction; export declare const UPDATE_PARAM_STATE = "question/update-param-state"; export interface UpdateParamStateAction { type: typeof UPDATE_PARAM_STATE; payload: QuestionPayload<{ paramName: string; paramState: any; }>; } export declare function updateParamState(payload: UpdateParamStateAction['payload']): UpdateParamStateAction; export declare const CHANGE_GROUP_VISIBILITY = "question/change-group-visibility"; export interface ChangeGroupVisibilityAction { type: typeof CHANGE_GROUP_VISIBILITY; payload: QuestionPayload<{ groupName: string; isVisible: boolean; }>; } export declare function changeGroupVisibility(payload: ChangeGroupVisibilityAction['payload']): ChangeGroupVisibilityAction; export declare const GROUP_COUNT_LOADED = "question/group-count-loaded"; export interface GroupCountLoadedAction { type: typeof GROUP_COUNT_LOADED; payload: { searchName: string; groupName: string; filteredCount: number; }; } export declare function groupCountLoaded(payload: GroupCountLoadedAction['payload']): GroupCountLoadedAction; export declare const ENABLE_SUBMISSION = "question/enable-submission"; export interface EnableSubmissionAction { type: typeof ENABLE_SUBMISSION; payload: QuestionPayload<{ stepValidation?: Step['validation']; }>; } export declare const reportSubmissionError: (searchName: string, error: any, wdkService: WdkService) => EnableSubmissionAction; export {}; //# sourceMappingURL=QuestionActions.d.ts.map