import { StructureNode } from '@/types/index';
/**
 * structure to map
 * @param structures
 * @returns
 */
export declare const structureToNodeMap: (structures: StructureNode[]) => Record<string, StructureNode<Record<string, any>>>;
/**
 * structure to list
 * @param structures
 * @returns
 */
export declare const structureToList: (structures: StructureNode[]) => StructureNode<Record<string, any>>[];
export declare const findStructure: (list: StructureNode[], selector: (structure?: StructureNode<any> | undefined) => boolean | undefined) => StructureNode | null;
export declare const findStructureByName: (structure: StructureNode[], value: string) => StructureNode<Record<string, any>> | null;
export declare const findStructureById: (structure: StructureNode[], value: string) => StructureNode<Record<string, any>> | null;
export declare const findStructureByExtendId: (dsl: StructureNode[], value: string) => StructureNode<Record<string, any>> | null;
export declare const removeStructure: <T extends StructureNode<Record<string, any>>>(structure: T[] | undefined, removeId: string) => T[];
