import { ItemNode, CheckboxType, ActiveNode } from "./select-kb-items";
import { TreeViewItemModel } from "@genexus/chameleon-controls-library";
export declare const ACTIVE_ITEM_DEFAULT_ICON: `${string}/${string}/${string}${string}`;
export declare const convertItemsNodeListToFlattenedTreeViewModel: (itemsList: ItemNode[], checkboxType: CheckboxType) => TreeViewItemModel[];
export declare const convertItemsListToTreeViewModel: (itemsList: ItemNode[], checkboxType: CheckboxType) => TreeViewItemModel[];
export declare const unselectAllNodes: (itemsList: ItemNode[]) => void;
export declare const checkItems: (itemsList: ItemNode[], idsChecked: string[]) => ItemNode[];
export declare const expandItems: (itemsList: ItemNode[], idsChecked: string[]) => ItemNode[];
export declare const selectItems: (itemsList: ItemNode[], idsSelected: string[]) => ItemNode[];
export declare const searchParentsItems: (items: ItemNode[], ids: string[]) => string[] | null;
/**
 * Recursively searches for the first node with the active=true property
 * @param nodes Array of nodes to search through
 * @returns An object with caption, iconStart, and path to the first active node found, or null if none is found
 */
export declare const findFirstActiveNode: (nodes: ItemNode[]) => ActiveNode | null;
