UNPKG

@fastly/esi

Version:

ESI implementation for JavaScript, using the modern fetch and streaming APIs.

50 lines 1.89 kB
import { XmlDocument, XmlElement, XmlElementNode } from './XmlModel.js'; import StreamerState from "./StreamerState.js"; export type XmlStreamerParseOptions = { ignoreDefaultTags?: boolean; beforeProcess?: (streamerState: StreamerState) => void; }; export declare class XmlStreamerContext { document: XmlDocument; options: XmlStreamerParseOptions; children: XmlElementNode[]; openElements: XmlElement[]; streamerState: StreamerState; constructor(document?: XmlDocument | null, options?: XmlStreamerParseOptions); append(xmlString: string): void; process(): void; flush(force?: boolean): void; applyNamespaces(): void; } type ParseXmlChunkResultText = { type: 'text'; content: string; }; type ParseXmlChunkResultElementBase = { localFullname: string; }; type ParseXmlChunkResultElementAttrs = { attrs: { [localFullname: string]: string; }; }; type ParseXmlChunkResultElementOpen = ParseXmlChunkResultElementBase & ParseXmlChunkResultElementAttrs & { type: 'element-open'; }; type ParseXmlChunkResultElementSelfClose = ParseXmlChunkResultElementBase & ParseXmlChunkResultElementAttrs & { type: 'element-self-close'; }; type ParseXmlChunkResultElementClose = ParseXmlChunkResultElementBase & { type: 'element-close'; }; type ParseXmlChunkResultUnknown = { type: 'unknown'; }; type ParseXmlChunkResultElement = ParseXmlChunkResultElementOpen | ParseXmlChunkResultElementSelfClose | ParseXmlChunkResultElementClose; type ParseXmlChunkResultCommon = { remainingXmlString: string; }; type ParseXmlChunkResult = ParseXmlChunkResultCommon & (ParseXmlChunkResultText | ParseXmlChunkResultElement | ParseXmlChunkResultUnknown); export declare function parseXmlStringChunk(xmlString: string, options?: XmlStreamerParseOptions): ParseXmlChunkResult; export {}; //# sourceMappingURL=XmlStreamer.d.ts.map