mirror of
				https://github.com/NativeScript/NativeScript.git
				synced 2025-11-04 04:18:52 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			113 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			113 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
/**
 | 
						|
 * Contains the XmlParser class, which is a SAX parser using the easysax implementation.
 | 
						|
 */
 | 
						|
 | 
						|
/**
 | 
						|
 * Specifies the type of parser event.
 | 
						|
 */
 | 
						|
export class ParserEventType {
 | 
						|
	/**
 | 
						|
	 * Specifies the StartElement event type.
 | 
						|
	 */
 | 
						|
	static StartElement: string;
 | 
						|
 | 
						|
	/**
 | 
						|
	 * Specifies the EndElement event type.
 | 
						|
	 */
 | 
						|
	static EndElement: string;
 | 
						|
 | 
						|
	/**
 | 
						|
	 * Specifies the Text event type.
 | 
						|
	 */
 | 
						|
	static Text: string;
 | 
						|
 | 
						|
	/**
 | 
						|
	 * Specifies the CDATA event type.
 | 
						|
	 */
 | 
						|
	static CDATA: string;
 | 
						|
 | 
						|
	/**
 | 
						|
	 * Specifies the Comment event type.
 | 
						|
	 */
 | 
						|
	static Comment: string;
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 * Defines a position within string, in line and column form.
 | 
						|
 */
 | 
						|
export interface Position {
 | 
						|
	/**
 | 
						|
	 * The line number. The first line is at index 1.
 | 
						|
	 */
 | 
						|
	line: number;
 | 
						|
 | 
						|
	/**
 | 
						|
	 * The column number. The first character is at index 1.
 | 
						|
	 */
 | 
						|
	column: number;
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 * Provides information for a parser event.
 | 
						|
 */
 | 
						|
export interface ParserEvent {
 | 
						|
	/**
 | 
						|
	 * Returns the type of the parser event. This is one of the ParserEventType static members.
 | 
						|
	 */
 | 
						|
	eventType: string;
 | 
						|
 | 
						|
	/**
 | 
						|
	 * Get the position in the xml string where the event was generated.
 | 
						|
	 */
 | 
						|
	position: Position;
 | 
						|
 | 
						|
	/**
 | 
						|
	 * If namespace processing is enabled, returns the prefix of the element in case the eventType is ParserEventType.StartElement or ParserEventType.EndElement.
 | 
						|
	 */
 | 
						|
	prefix?: string;
 | 
						|
 | 
						|
	/**
 | 
						|
	 *  If namespace processing is enabled, returns the namespace of the element in case the eventType is ParserEventType.StartElement or ParserEventType.EndElement.
 | 
						|
	 */
 | 
						|
	namespace?: string;
 | 
						|
 | 
						|
	/**
 | 
						|
	 * Returns the name of the element in case the eventType is ParserEventType.StartElement or ParserEventType.EndElement.
 | 
						|
	 */
 | 
						|
	elementName?: string;
 | 
						|
 | 
						|
	/**
 | 
						|
	 * Returns a JSON object with the attributes of an element in case the eventType is ParserEventType.StartElement.
 | 
						|
	 */
 | 
						|
	attributes?: Object;
 | 
						|
 | 
						|
	/**
 | 
						|
	 * Returns the relevant data in case the eventType is ParserEventType.Text, ParserEventType.CDATA or ParserEventType.Comment.
 | 
						|
	 */
 | 
						|
	data?: string;
 | 
						|
 | 
						|
	/**
 | 
						|
	 * Returns a JSON string representation of this instance.
 | 
						|
	 */
 | 
						|
	toString(): string;
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 * A simple non-validating SAX parser based on https://github.com/vflash/easysax version 0.1.14
 | 
						|
 */
 | 
						|
export class XmlParser {
 | 
						|
	/**
 | 
						|
	 * Creates a new instance of the XmlParser class.
 | 
						|
	 * @param onEvent The callback to execute when a parser event occurs. The 'event' parameter contains information about the event.
 | 
						|
	 * @param onError The callback to execute when a parser error occurs. The 'error' parameter contains the error.
 | 
						|
	 * @param processNamespaces Specifies whether namespaces should be processed.
 | 
						|
	 */
 | 
						|
	constructor(onEvent: (event: ParserEvent) => void, onError?: (error: Error, position: Position) => void, processNamespaces?: boolean, angularSyntax?: boolean);
 | 
						|
 | 
						|
	/**
 | 
						|
	 * Parses the supplied xml string.
 | 
						|
	 * @param xmlString The string containing the xml to parse.
 | 
						|
	 */
 | 
						|
	parse(xmlString: string): void;
 | 
						|
}
 |