import Element from "./Element"; /** * This is how the XML is structured for an ElementTypeSpecifier's choice option. * Example: * * * It could also be how the XML is structured for the ListTypeSpecifier's NamedTypeSpecifier child: * * * */ export interface SimpleSpecifierXml { $: { modelName: string; name: string; }; } /** * This is how the XML is structured for an ElementTypeSpecifier * Example: * * * * * * Or: * */ export interface ElementTypeSpecifierXml { $: { "xsi:type": string; elementType?: string; }; "ns4:choice"?: Array; "ns4:elementTypeSpecifier"?: Array; } /** * This interface defines how an Element's XML comes from xml2js */ export interface ElementXml { $: { name: string; elementType?: string; }; "ns4:elementTypeSpecifier"?: Array; } /** * This class is responsible for converting the XML object structure created by xml2js * into one of the 3 different Element types: SimpleElement, ChoiceElement or ListElement */ export default class ElementFactory { static createElement(input: ElementXml): Element; } //# sourceMappingURL=ElementFactory.d.ts.map