import { QuestionnaireResponseItem, QuestionnaireResponseItemAnswer, QuestionnaireItem, QuestionnaireItemEnableWhen, QuestionnaireResponse } from '../types/fhir'; import { FormData, FormDefinition } from '../reducers/form'; export declare function getRootQuestionnaireResponseItemFromData(definitionLinkId: string, formData: FormData): Array | undefined; export declare function isInGroupContext(path: Path[], item: QuestionnaireResponseItem, items: QuestionnaireResponseItem[]): boolean; export declare function getQuestionnaireResponseItemWithLinkid(linkId: string, responseItem: QuestionnaireResponseItem, referencePath: Array): QuestionnaireResponseItem | undefined; export declare function getQuestionnaireResponseItemsWithLinkId(linkId: string, responseItems: Array, recursive?: boolean): Array; export declare function getArrayContainingResponseItemFromItems(linkId: string, items: Array): Array | undefined; export declare function getAnswerFromResponseItem(responseItem: QuestionnaireResponseItem | undefined): QuestionnaireResponseItemAnswer[] | QuestionnaireResponseItemAnswer | undefined; export declare function getResponseItems(formData: FormData | null): Array | undefined; export declare function getDefinitionItems(formDefinition: FormDefinition | null): Array | undefined; export declare function getItemWithIdFromResponseItemArray(linkId: string, responseItems: Array | undefined): Array | undefined; export declare function getItemsWithIdFromResponseItemArray(linkId: string, responseItems: Array | undefined, recurse?: boolean): Array; export declare function getItemWithTypeFromArray(type: string, items: Array | undefined): Array | undefined; export declare function hasAnswer(answer: QuestionnaireResponseItemAnswer): boolean; export declare function hasBooleanAnswer(answer: QuestionnaireResponseItemAnswer): boolean; export declare function hasCodingAnswer(answer: QuestionnaireResponseItemAnswer): boolean; export declare function hasQuantityAnswer(answer: QuestionnaireResponseItemAnswer): boolean; export declare function hasDateAnswer(answer: QuestionnaireResponseItemAnswer): boolean; export declare function hasDateTimeAnswer(answer: QuestionnaireResponseItemAnswer): boolean; export declare function hasDecimalAnswer(answer: QuestionnaireResponseItemAnswer): boolean; export declare function hasIntegerAnswer(answer: QuestionnaireResponseItemAnswer): boolean; export declare function hasStringAnswer(answer: QuestionnaireResponseItemAnswer): boolean; export declare function hasTimeAnswer(answer: QuestionnaireResponseItemAnswer): boolean; export declare function hasAttachmentAnswer(answer: QuestionnaireResponseItemAnswer): boolean; export declare function enableWhenMatchesAnswer(enableWhen: QuestionnaireItemEnableWhen, answers: Array | undefined): boolean; export interface Path { linkId: string; index?: number; } export declare function createIdSuffix(path: Array | undefined, index: number | undefined, repeats: boolean | undefined): string; export declare function createPathForItem(path: Array | undefined, item: QuestionnaireItem, responseItem: QuestionnaireResponseItem, index: number | undefined): Array; export declare function shouldRenderDeleteButton(item: QuestionnaireItem, index: number): boolean; export declare function getResponseItemAndPathWithLinkId(linkId: string, item: QuestionnaireResponse | QuestionnaireResponseItem, currentPath?: Path[]): Array; export interface ItemAndPath { item: QuestionnaireResponseItem; path: Path[]; } export declare function getResponseItemWithPath(path: Array, formData: FormData): QuestionnaireResponseItem | undefined; export declare function getQuestionnaireDefinitionItem(linkId: string, definitionItems: QuestionnaireItem[] | undefined): QuestionnaireItem | undefined;