import type { Tabs } from '../interfaces/tab.interface'; import type { EnableWhenExpressions, EnableWhenItems } from '../interfaces/enableWhen.interface'; import type { QuestionnaireItem } from 'fhir/r4'; export declare function getFirstVisibleTab(tabs: Tabs, enableWhenItems: EnableWhenItems, enableWhenExpressions: EnableWhenExpressions): number; /** * Checks if any of the items in a qItem array is a tabbed item * Returns true if there is at least one tabbed item * * @author Sean Fong */ export declare function containsTabs(topLevelQItem: QuestionnaireItem): boolean; /** * Checks if a top-level QItem is a tab container * All items within a tab container are tabbed items * * @author Sean Fong */ export declare function isTabContainer(topLevelQItem: QuestionnaireItem): boolean; /** * Get tabbed items from a qItem array * * @author Sean Fong */ export declare function getTabbedItems(items: QuestionnaireItem[]): QuestionnaireItem[]; /** * Check if a qItem is a tabbed item * * @author Sean Fong */ export declare function isTab(item: QuestionnaireItem): boolean; /** * Create a `Record` key-value pair for all tabbed items in a qItem array * * @author Sean Fong */ export declare function constructTabsWithProperties(qItems: QuestionnaireItem[] | undefined, hasTabContainer: boolean): Tabs; interface constructTabsWithVisibilityParams { tabs: Tabs; enableWhenIsActivated: boolean; enableWhenItems: EnableWhenItems; enableWhenExpressions: EnableWhenExpressions; } export declare function constructTabsWithVisibility(params: constructTabsWithVisibilityParams): { linkId: string; isVisible: boolean; }[]; export declare function getContextDisplays(item: QuestionnaireItem): QuestionnaireItem[]; interface IsTabHiddenParams { qItem: QuestionnaireItem; contextDisplayItems: QuestionnaireItem[]; isTab: boolean; enableWhenIsActivated: boolean; enableWhenItems: EnableWhenItems; enableWhenExpressions: EnableWhenExpressions; completedTabsCollapsed: boolean; } export declare function isTabHidden(params: IsTabHiddenParams): boolean; export {};