import type { NobjcObject } from "objc-js";
import type { _NSArray } from "./NSArray.js";
import type { _NSData } from "./NSData.js";
import type { _NSString } from "./NSString.js";
import type { _NSURL } from "./NSURL.js";
import type { _NSXMLDTDNode } from "./NSXMLDTDNode.js";
import type { _NSXMLNode } from "./NSXMLNode.js";
import type { NSXMLNodeKind } from "./NSXMLNodeKind.js";
import type { NSXMLNodeOptions } from "./NSXMLNodeOptions.js";
export declare class _NSXMLDTD extends _NSXMLNode {
    static alloc(): _NSXMLDTD;
    static new(): _NSXMLDTD;
    /**
     * @method predefinedEntityDeclarationForName: @abstract Returns the predefined entity declaration matching this name. @discussion The five predefined entities are <ul><li>&amp;lt; - &lt;</li><li>&amp;gt; - &gt;</li><li>&amp;amp; - &amp;</li><li>&amp;quot; - &quot;</li><li>&amp;apos; - &amp;</li></ul>
     */
    static predefinedEntityDeclarationForName$(name: _NSString): _NSXMLDTDNode | null;
    init(): _NSXMLDTD;
    initWithKind$options$(kind: NSXMLNodeKind, options: NSXMLNodeOptions): _NSXMLDTD;
    initWithContentsOfURL$options$error$(url: _NSURL, mask: NSXMLNodeOptions, error: NobjcObject | null): _NSXMLDTD | null;
    /** primitive */
    initWithData$options$error$(data: _NSData, mask: NSXMLNodeOptions, error: NobjcObject | null): _NSXMLDTD | null;
    /** primitive */
    insertChild$atIndex$(child: _NSXMLNode, index: number): void;
    /**
     * @method insertChildren:atIndex: @abstract Insert several children at a particular index.
     */
    insertChildren$atIndex$(children: _NSArray, index: number): void;
    /** primitive */
    removeChildAtIndex$(index: number): void;
    /** primitive */
    setChildren$(children: _NSArray | null): void;
    /** @method addChild: @abstract Adds a child to the end of the existing children. */
    addChild$(child: _NSXMLNode): void;
    /**
     * @method replaceChildAtIndex:withNode: @abstract Replaces a child at a particular index with another child.
     */
    replaceChildAtIndex$withNode$(index: number, node: _NSXMLNode): void;
    /** primitive */
    entityDeclarationForName$(name: _NSString): _NSXMLDTDNode | null;
    /** primitive */
    notationDeclarationForName$(name: _NSString): _NSXMLDTDNode | null;
    /** primitive */
    elementDeclarationForName$(name: _NSString): _NSXMLDTDNode | null;
    /** primitive */
    attributeDeclarationForName$elementName$(name: _NSString, elementName: _NSString): _NSXMLDTDNode | null;
    /** primitive */
    publicID(): _NSString | null;
    setPublicID$(value: _NSString | null): void;
    /** primitive */
    systemID(): _NSString | null;
    setSystemID$(value: _NSString | null): void;
}
