import { XML } from "./XML";
/**
* The XMLList class contains methods for working with one or more XML elements. An XMLList object
* can represent one or more XML objects or elements (including multiple nodes or attributes), so
* you can call methods on the elements as a group or on the individual elements in the collection.
*
If an XMLList object has only one XML element, you can use the XML class methods on the
* XMLList object directly. In the following example, example.two is an XMLList
* object of length 1, so you can call any XML method on it.
* var example2 = <example><two>2</two></example>;If you attempt to use XML class methods with an XMLList object containing more than one XML
* object, an exception is thrown; instead, iterate over the XMLList collection (using a
* for each..in statement, for example) and apply the methods to each XML object in
* the collection.
*/
export declare class XMLList {
static length: any;
/**
* Creates a new XMLList object.
* @param value Any object that can be converted to an XMLList object by using the top-level XMLList() function.
* @langversion 3.0
* @playerversion Flash 9
*/
constructor(value?: any);
addNamespace(ns: any): XML;
appendChild(child: any): XML;
/**
* Calls the attribute() method of each XML object and returns an XMLList object
* of the results. The results match the given attributeName parameter. If there is no
* match, the attribute() method returns an empty XMLList object.
* @param attributeName The name of the attribute that you want to include in an XMLList object.
* @return An XMLList object of matching XML objects or an empty XMLList object.
* @langversion 3.0
* @playerversion Flash 9
*/
attribute(arg: any): XMLList;
/**
* Calls the attributes() method of each XML object and
* returns an XMLList object of attributes for each XML object.
* @return An XMLList object of attributes for each XML object.
* @langversion 3.0
* @playerversion Flash 9
*/
attributes(): XMLList;
/**
* Calls the child() method of each XML object and returns an XMLList object that
* contains the results in order.
* @param propertyName The element name or integer of the XML child.
* @return An XMLList object of child nodes that match the input parameter.
* @langversion 3.0
* @playerversion Flash 9
*/
child(propertyName: any): XMLList;
childIndex(): number;
/**
* Calls the children() method of each XML object and
* returns an XMLList object that contains the results.
* @return An XMLList object of the children in the XML objects.
* @langversion 3.0
* @playerversion Flash 9
*/
children(): XMLList;
/**
* Calls the comments() method of each XML object and returns
* an XMLList of comments.
* @return An XMLList of the comments in the XML objects.
* @langversion 3.0
* @playerversion Flash 9
*/
comments(): XMLList;
/**
* Checks whether the XMLList object contains an XML object that is equal to the given
* value parameter.
* @param value An XML object to compare against the current XMLList object.
* @return If the XMLList contains the XML object declared in the value parameter,
* then true; otherwise false.
* @langversion 3.0
* @playerversion Flash 9
*/
contains(value: any): boolean;
/**
* Returns a copy of the given XMLList object. The copy is a duplicate of the entire tree of nodes.
* The copied XML object has no parent and returns null if you attempt to call the parent() method.
* @return The copy of the XMLList object.
* @langversion 3.0
* @playerversion Flash 9
*/
copy(): XMLList;
/**
* Returns all descendants (children, grandchildren, great-grandchildren, and so on) of the XML object
* that have the given name parameter. The name parameter can be a
* QName object, a String data type, or any other data type that is then converted to a String
* data type.
*
* To return all descendants, use
* the asterisk (~~) parameter. If no parameter is passed,
* the string "~~" is passed and returns all descendants of the XML object.
* @param name The name of the element to match.
* @return An XMLList object of the matching descendants (children, grandchildren, and so on) of the XML objects
* in the original list. If there are no descendants, returns an empty XMLList object.
* @langversion 3.0
* @playerversion Flash 9
*/
descendants(name?: any): XMLList;
/**
* Calls the elements() method of each XML object. The name parameter is
* passed to the descendants() method. If no parameter is passed, the string "~~" is passed to the
* descendants() method.
* @param name The name of the elements to match.
* @return An XMLList object of the matching child elements of the XML objects.
* @langversion 3.0
* @playerversion Flash 9
*/
elements(name?: any): XMLList;
/**
* Checks whether the XMLList object contains complex content. An XMLList object is
* considered to contain complex content if it is not empty and either of the following conditions is true:
*
* The XMLList object contains a single XML item with complex content.The XMLList object contains elements.
* @return If the XMLList object contains complex content, then true; otherwise false.
* @langversion 3.0
* @playerversion Flash 9
*/
hasComplexContent(): boolean;
/**
* Checks for the property specified by p.
* @param p The property to match.
* @return If the parameter exists, then true; otherwise false.
* @langversion 3.0
* @playerversion Flash 9
*/
hasOwnProperty(P?: any): boolean;
/**
* Checks whether the XMLList object contains simple content. An XMLList object is
* considered to contain simple content if one or more of the following
* conditions is true:
* The XMLList object is emptyThe XMLList object contains a single XML item with simple contentThe XMLList object contains no elements
* @return If the XMLList contains simple content, then true; otherwise false.
* @langversion 3.0
* @playerversion Flash 9
*/
hasSimpleContent(): boolean;
inScopeNamespaces(): any[];
insertChildAfter(child1: any, child2: any): any;
insertChildBefore(child1: any, child2: any): any;
/**
* Returns the number of properties in the XMLList object.
* @return The number of properties in the XMLList object.
* @langversion 3.0
* @playerversion Flash 9
*/
length(): number;
localName(): any;
name(): any;
namespace(prefix?: any): any;
namespaceDeclarations(): any[];
nodeKind(): string;
/**
* Merges adjacent text nodes and eliminates empty text nodes for each
* of the following: all text nodes in the XMLList, all the XML objects
* contained in the XMLList, and the descendants of all the XML objects in
* the XMLList.
* @return The normalized XMLList object.
* @langversion 3.0
* @playerversion Flash 9
*/
normalize(): XMLList;
/**
* Returns the parent of the XMLList object if all items in the XMLList object have the same parent.
* If the XMLList object has no parent or different parents, the method returns undefined.
* @return Returns the parent XML object.
* @langversion 3.0
* @playerversion Flash 9
*/
parent(): any;
prependChild(value: any): XML;
/**
* If a name parameter is provided, lists all the children of the XMLList object that
* contain processing instructions with that name. With no parameters, the method lists all the
* children of the XMLList object that contain any processing instructions.
* @param name The name of the processing instructions to match.
* @return An XMLList object that contains the processing instructions for each XML object.
* @langversion 3.0
* @playerversion Flash 9
*/
processingInstructions(name?: any): XMLList;
/**
* Checks whether the property p is in the set of properties that can be iterated in a for..in statement
* applied to the XMLList object. This is true only if toNumber(p) is greater than or equal to 0
* and less than the length of the XMLList object.
* @param p The index of a property to check.
* @return If the property can be iterated in a for..in statement, then true; otherwise false.
* @langversion 3.0
* @playerversion Flash 9
*/
propertyIsEnumerable(P?: any): boolean;
removeNamespace(ns: any): XML;
replace(propertyName: any, value: any): XML;
setChildren(value: any): XML;
setLocalName(name: any): void;
setName(name: any): void;
setNamespace(ns: any): void;
/**
* Calls the text() method of each XML
* object and returns an XMLList object that contains the results.
* @return An XMLList object of all XML properties of the XMLList object that represent XML text nodes.
* @langversion 3.0
* @playerversion Flash 9
*/
text(): XMLList;
toJSON(k: string): any;
/**
* Returns a string representation of all the XML objects in an XMLList object. The rules for
* this conversion depend on whether the XML object has simple content or complex content:
*
* If the XML object has simple content, toString() returns the string contents of the
* XML object with the following stripped out: the start tag, attributes, namespace declarations, and
* end tag. If the XML object has complex content, toString() returns an XML encoded string
* representing the entire XML object, including the start tag, attributes, namespace declarations,
* and end tag.To return the entire XML object every time, use the toXMLString() method.
* @return The string representation of the XML object.
* @langversion 3.0
* @playerversion Flash 9
*/
toString(): string;
/**
* Returns a string representation of all the XML objects in an XMLList object.
* Unlike the toString() method, the toXMLString()
* method always returns the start tag, attributes,
* and end tag of the XML object, regardless of whether the XML object has simple content
* or complex content. (The toString() method strips out these items for XML
* objects that contain simple content.)
* @return The string representation of the XML object.
* @langversion 3.0
* @playerversion Flash 9
*/
toXMLString(): string;
/**
* Returns the XMLList object.
* @return Returns the current XMLList object.
* @langversion 3.0
* @playerversion Flash 9
*/
valueOf(): XMLList;
}