import { Action } from 'redux'; import { ThunkDispatch } from 'redux-thunk'; import { Coding, QuestionnaireItem, Attachment, QuestionnaireResponseItem, Quantity } from '../types/fhir'; import { GlobalState } from '../reducers'; import { Path } from '../util/skjemautfyller-core'; export declare type NEW_VALUE = 'skjemautfyller/NEW_VALUE'; export declare const NEW_VALUE: NEW_VALUE; export declare type NEW_CODINGSTRING_VALUE = 'skjemautfyller/NEW_CODINGSTRING_VALUE'; export declare const NEW_CODINGSTRING_VALUE: NEW_CODINGSTRING_VALUE; export declare type REMOVE_CODINGSTRING_VALUE = 'skjemautfyller/REMOVE_CODINGSTRING_VALUE'; export declare const REMOVE_CODINGSTRING_VALUE: REMOVE_CODINGSTRING_VALUE; export declare const REMOVE_CODING_VALUE = "skjemautfyller/REMOVE_CODING_VALUE"; export declare type ADD_REPEAT_ITEM = 'skjemautfyller/ADD_REPEAT_ITEM'; export declare const ADD_REPEAT_ITEM: ADD_REPEAT_ITEM; export declare type DELETE_REPEAT_ITEM = 'skjemautfyller/DELETE_REPEAT_ITEM'; export declare const DELETE_REPEAT_ITEM: DELETE_REPEAT_ITEM; export declare type REMOVE_ATTACHMENT_VALUE = 'skjemautfyller/REMOVE_ATTACHMENT_VALUE'; export declare const REMOVE_ATTACHMENT_VALUE: REMOVE_ATTACHMENT_VALUE; export interface NewValueAction extends Action { itemPath?: Array; parentPath?: Array; valueBoolean?: boolean; valueAttachment?: Attachment; valueString?: string; valueDecimal?: number; valueInteger?: number; valueDate?: string; valueDateTime?: string; valueTime?: string; valueCoding?: Coding; valueQuantity?: Quantity; item?: QuestionnaireItem | undefined; responseItems?: Array | undefined; multipleAnswers?: boolean; } export declare function newAttachment(itemPath: Array, value: Attachment, item: QuestionnaireItem | undefined, multipleAnswers?: boolean): NewValueAction; export declare function newAttachmentAsync(itemPath: Array, value: Attachment, item: QuestionnaireItem | undefined, multipleAnswers?: boolean): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise; export declare function removeAttachment(itemPath: Array, value: Attachment, item: QuestionnaireItem | undefined): NewValueAction; export declare function removeAttachmentAsync(itemPath: Array, value: Attachment, item: QuestionnaireItem | undefined): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise; export declare function newBooleanValue(itemPath: Array, value: boolean, item: QuestionnaireItem | undefined): NewValueAction; export declare function newBooleanValueAsync(itemPath: Array, value: boolean, item: QuestionnaireItem | undefined): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise; export declare function newCodingValue(itemPath: Array, value: Coding, item: QuestionnaireItem | undefined, multipleAnswers?: boolean): NewValueAction; export declare function newCodingValueAsync(itemPath: Array, value: Coding, item: QuestionnaireItem | undefined, multipleAnswers?: boolean): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise; export declare function newCodingStringValue(itemPath: Array, value: string, item: QuestionnaireItem | undefined, multipleAnswers?: boolean): NewValueAction; export declare function newCodingStringValueAsync(itemPath: Array, value: string, item: QuestionnaireItem | undefined, multipleAnswers?: boolean): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise; export declare function removeCodingStringValue(itemPath: Array, item: QuestionnaireItem | undefined): NewValueAction; export declare function removeCodingStringValueAsync(itemPath: Array, item: QuestionnaireItem | undefined): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise; export declare function newQuantityValue(itemPath: Array, value: Quantity, item: QuestionnaireItem | undefined): NewValueAction; export declare function newQuantityValueAsync(itemPath: Array, value: Quantity, item: QuestionnaireItem | undefined): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise; export declare function removeCodingValue(itemPath: Array, value: Coding, item: QuestionnaireItem | undefined): NewValueAction; export declare function removeCodingValueAsync(itemPath: Array, value: Coding, item: QuestionnaireItem | undefined): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise; export declare function newDecimalValue(itemPath: Array, value: number, item: QuestionnaireItem | undefined): NewValueAction; export declare function newDecimalValueAsync(itemPath: Array, value: number, item: QuestionnaireItem | undefined): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise; export declare function newIntegerValue(itemPath: Array, value: number, item: QuestionnaireItem | undefined): NewValueAction; export declare function newIntegerValueAsync(itemPath: Array, value: number, item: QuestionnaireItem | undefined): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise; export declare function newStringValue(itemPath: Array, value: string, item: QuestionnaireItem | undefined): NewValueAction; export declare function newStringValueAsync(itemPath: Array, value: string, item: QuestionnaireItem | undefined): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise; export declare function newDateValue(itemPath: Array, value: string, item: QuestionnaireItem | undefined): NewValueAction; export declare function newDateValueAsync(itemPath: Array, value: string, item: QuestionnaireItem | undefined): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise; export declare function newTimeValue(itemPath: Array, value: string, item: QuestionnaireItem | undefined): NewValueAction; export declare function newTimeValueAsync(itemPath: Array, value: string, item: QuestionnaireItem | undefined): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise; export declare function newDateTimeValue(itemPath: Array, value: string, item: QuestionnaireItem | undefined): NewValueAction; export declare function newDateTimeValueAsync(itemPath: Array, value: string, item: QuestionnaireItem | undefined): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise; export declare function addRepeatItem(parentPath: Array | undefined, item: QuestionnaireItem, responseItems: Array | undefined): NewValueAction; export declare function deleteRepeatItem(itemPath: Array, item: QuestionnaireItem): NewValueAction; export declare function deleteRepeatItemAsync(itemPath: Array, item: QuestionnaireItem): (dispatch: ThunkDispatch, getState: () => GlobalState) => Promise;