import { type resolveContext } from '../global/todo.svelte'; declare function parseXml(xml: string): ParsedXmlNodes; export declare function buildXml({ parsedXml, indent, baseSpace, cursorTag }: { parsedXml: ParsedXmlNodes; indent?: number; baseSpace?: string; cursorTag?: string; }): string; export declare function getElementFromParsedXml(xml: Record): string | null; /** * Returns the different paths to the possible merge positions * @param param0 * @returns */ export declare function findPossibleMergePositions({ baseXml, element, typesPaths, cursorTag }: { baseXml: ParsedXmlNodes; element: string; typesPaths: Record; cursorTag?: string; }): { path: { pos: number; key: string; }[]; withCursor: boolean; }[]; export declare function getXmlAttributes(xml: { [key: string]: ParsedXmlNodes | ParsedXmlNode[] | ParsedXmlAttribute | undefined; ':@'?: ParsedXmlAttribute | undefined; }): Record; export declare function mergeParsedXml({ baseXml, newXml, geosContext, cursorTag }: { baseXml: ParsedXmlNodes; newXml: ParsedXmlNodes; cursorTag?: string; geosContext: resolveContext<'geos'>; }): ParsedXmlNodes; declare function formatXml({ xml, indent }: { xml: string; indent?: number; }): string; declare function formatComment(comment: string): string; type ParsedXmlAttribute = Record; type ParsedXmlNode = { '#text'?: string; [key: string]: ParsedXmlAttribute | Array | string | undefined; }; type parsedXmlComment = { '#comment': string; }; type ParsedXmlNodes = Array | ParsedXmlAttribute | undefined; }>; export type { ParsedXmlNodes, ParsedXmlNode, parsedXmlComment, ParsedXmlAttribute }; export { parseXml, formatXml, formatComment };