<?php

/** @generate-class-entries */

/**
 * @var int
 * @cvalue TidyNode_Root
 */
const TIDY_NODETYPE_ROOT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyNode_DocType
 */
const TIDY_NODETYPE_DOCTYPE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyNode_Comment
 */
const TIDY_NODETYPE_COMMENT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyNode_ProcIns
 */
const TIDY_NODETYPE_PROCINS = UNKNOWN;
/**
 * @var int
 * @cvalue TidyNode_Text
 */
const TIDY_NODETYPE_TEXT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyNode_Start
 */
const TIDY_NODETYPE_START = UNKNOWN;
/**
 * @var int
 * @cvalue TidyNode_End
 */
const TIDY_NODETYPE_END = UNKNOWN;
/**
 * @var int
 * @cvalue TidyNode_StartEnd
 */
const TIDY_NODETYPE_STARTEND = UNKNOWN;
/**
 * @var int
 * @cvalue TidyNode_CDATA
 */
const TIDY_NODETYPE_CDATA = UNKNOWN;
/**
 * @var int
 * @cvalue TidyNode_Section
 */
const TIDY_NODETYPE_SECTION = UNKNOWN;
/**
 * @var int
 * @cvalue TidyNode_Asp
 */
const TIDY_NODETYPE_ASP = UNKNOWN;
/**
 * @var int
 * @cvalue TidyNode_Jste
 */
const TIDY_NODETYPE_JSTE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyNode_Php
 */
const TIDY_NODETYPE_PHP = UNKNOWN;
/**
 * @var int
 * @cvalue TidyNode_XmlDecl
 */
const TIDY_NODETYPE_XMLDECL = UNKNOWN;

/**
 * @var int
 * @cvalue TidyTag_UNKNOWN
 */
const TIDY_TAG_UNKNOWN = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_A
 */
const TIDY_TAG_A = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_ABBR
 */
const TIDY_TAG_ABBR = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_ACRONYM
 */
const TIDY_TAG_ACRONYM = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_ADDRESS
 */
const TIDY_TAG_ADDRESS = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_ALIGN
 */
const TIDY_TAG_ALIGN = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_APPLET
 */
const TIDY_TAG_APPLET = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_AREA
 */
const TIDY_TAG_AREA = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_B
 */
const TIDY_TAG_B = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_BASE
 */
const TIDY_TAG_BASE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_BASEFONT
 */
const TIDY_TAG_BASEFONT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_BDO
 */
const TIDY_TAG_BDO = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_BGSOUND
 */
const TIDY_TAG_BGSOUND = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_BIG
 */
const TIDY_TAG_BIG = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_BLINK
 */
const TIDY_TAG_BLINK = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_BLOCKQUOTE
 */
const TIDY_TAG_BLOCKQUOTE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_BODY
 */
const TIDY_TAG_BODY = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_BR
 */
const TIDY_TAG_BR = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_BUTTON
 */
const TIDY_TAG_BUTTON = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_CAPTION
 */
const TIDY_TAG_CAPTION = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_CENTER
 */
const TIDY_TAG_CENTER = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_CITE
 */
const TIDY_TAG_CITE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_CODE
 */
const TIDY_TAG_CODE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_COL
 */
const TIDY_TAG_COL = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_COLGROUP
 */
const TIDY_TAG_COLGROUP = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_COMMENT
 */
const TIDY_TAG_COMMENT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_DD
 */
const TIDY_TAG_DD = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_DEL
 */
const TIDY_TAG_DEL = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_DFN
 */
const TIDY_TAG_DFN = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_DIR
 */
const TIDY_TAG_DIR = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_DIV
 */
const TIDY_TAG_DIV = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_DL
 */
const TIDY_TAG_DL = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_DT
 */
const TIDY_TAG_DT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_EM
 */
const TIDY_TAG_EM = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_EMBED
 */
const TIDY_TAG_EMBED = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_FIELDSET
 */
const TIDY_TAG_FIELDSET = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_FONT
 */
const TIDY_TAG_FONT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_FORM
 */
const TIDY_TAG_FORM = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_FRAME
 */
const TIDY_TAG_FRAME = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_FRAMESET
 */
const TIDY_TAG_FRAMESET = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_H1
 */
const TIDY_TAG_H1 = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_H2
 */
const TIDY_TAG_H2 = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_H3
 */
const TIDY_TAG_H3 = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_H4
 */
const TIDY_TAG_H4 = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_H5
 */
const TIDY_TAG_H5 = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_H6
 */
const TIDY_TAG_H6 = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_HEAD
 */
const TIDY_TAG_HEAD = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_HR
 */
const TIDY_TAG_HR = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_HTML
 */
const TIDY_TAG_HTML = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_I
 */
const TIDY_TAG_I = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_IFRAME
 */
const TIDY_TAG_IFRAME = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_ILAYER
 */
const TIDY_TAG_ILAYER = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_IMG
 */
const TIDY_TAG_IMG = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_INPUT
 */
const TIDY_TAG_INPUT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_INS
 */
const TIDY_TAG_INS = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_ISINDEX
 */
const TIDY_TAG_ISINDEX = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_KBD
 */
const TIDY_TAG_KBD = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_KEYGEN
 */
const TIDY_TAG_KEYGEN = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_LABEL
 */
const TIDY_TAG_LABEL = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_LAYER
 */
const TIDY_TAG_LAYER = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_LEGEND
 */
const TIDY_TAG_LEGEND = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_LI
 */
const TIDY_TAG_LI = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_LINK
 */
const TIDY_TAG_LINK = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_LISTING
 */
const TIDY_TAG_LISTING = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_MAP
 */
const TIDY_TAG_MAP = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_MARQUEE
 */
const TIDY_TAG_MARQUEE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_MENU
 */
const TIDY_TAG_MENU = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_META
 */
const TIDY_TAG_META = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_MULTICOL
 */
const TIDY_TAG_MULTICOL = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_NOBR
 */
const TIDY_TAG_NOBR = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_NOEMBED
 */
const TIDY_TAG_NOEMBED = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_NOFRAMES
 */
const TIDY_TAG_NOFRAMES = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_NOLAYER
 */
const TIDY_TAG_NOLAYER = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_NOSAVE
 */
const TIDY_TAG_NOSAVE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_NOSCRIPT
 */
const TIDY_TAG_NOSCRIPT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_OBJECT
 */
const TIDY_TAG_OBJECT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_OL
 */
const TIDY_TAG_OL = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_OPTGROUP
 */
const TIDY_TAG_OPTGROUP = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_OPTION
 */
const TIDY_TAG_OPTION = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_P
 */
const TIDY_TAG_P = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_PARAM
 */
const TIDY_TAG_PARAM = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_PLAINTEXT
 */
const TIDY_TAG_PLAINTEXT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_PRE
 */
const TIDY_TAG_PRE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_Q
 */
const TIDY_TAG_Q = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_RB
 */
const TIDY_TAG_RB = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_RBC
 */
const TIDY_TAG_RBC = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_RP
 */
const TIDY_TAG_RP = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_RT
 */
const TIDY_TAG_RT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_RTC
 */
const TIDY_TAG_RTC = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_RUBY
 */
const TIDY_TAG_RUBY = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_S
 */
const TIDY_TAG_S = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_SAMP
 */
const TIDY_TAG_SAMP = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_SCRIPT
 */
const TIDY_TAG_SCRIPT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_SELECT
 */
const TIDY_TAG_SELECT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_SERVER
 */
const TIDY_TAG_SERVER = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_SERVLET
 */
const TIDY_TAG_SERVLET = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_SMALL
 */
const TIDY_TAG_SMALL = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_SPACER
 */
const TIDY_TAG_SPACER = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_SPAN
 */
const TIDY_TAG_SPAN = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_STRIKE
 */
const TIDY_TAG_STRIKE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_STRONG
 */
const TIDY_TAG_STRONG = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_STYLE
 */
const TIDY_TAG_STYLE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_SUB
 */
const TIDY_TAG_SUB = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_SUP
 */
const TIDY_TAG_SUP = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_TABLE
 */
const TIDY_TAG_TABLE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_TBODY
 */
const TIDY_TAG_TBODY = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_TD
 */
const TIDY_TAG_TD = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_TEXTAREA
 */
const TIDY_TAG_TEXTAREA = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_TFOOT
 */
const TIDY_TAG_TFOOT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_TH
 */
const TIDY_TAG_TH = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_THEAD
 */
const TIDY_TAG_THEAD = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_TITLE
 */
const TIDY_TAG_TITLE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_TR
 */
const TIDY_TAG_TR = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_TT
 */
const TIDY_TAG_TT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_U
 */
const TIDY_TAG_U = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_UL
 */
const TIDY_TAG_UL = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_VAR
 */
const TIDY_TAG_VAR = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_WBR
 */
const TIDY_TAG_WBR = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_XMP
 */
const TIDY_TAG_XMP = UNKNOWN;
#ifdef HAVE_TIDYBUFFIO_H
/**
 * @var int
 * @cvalue TidyTag_ARTICLE
 */
const TIDY_TAG_ARTICLE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_ASIDE
 */
const TIDY_TAG_ASIDE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_AUDIO
 */
const TIDY_TAG_AUDIO = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_BDI
 */
const TIDY_TAG_BDI = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_CANVAS
 */
const TIDY_TAG_CANVAS = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_COMMAND
 */
const TIDY_TAG_COMMAND = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_DATALIST
 */
const TIDY_TAG_DATALIST = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_DETAILS
 */
const TIDY_TAG_DETAILS = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_DIALOG
 */
const TIDY_TAG_DIALOG = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_FIGCAPTION
 */
const TIDY_TAG_FIGCAPTION = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_FIGURE
 */
const TIDY_TAG_FIGURE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_FOOTER
 */
const TIDY_TAG_FOOTER = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_HEADER
 */
const TIDY_TAG_HEADER = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_HGROUP
 */
const TIDY_TAG_HGROUP = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_MAIN
 */
const TIDY_TAG_MAIN = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_MARK
 */
const TIDY_TAG_MARK = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_MENUITEM
 */
const TIDY_TAG_MENUITEM = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_METER
 */
const TIDY_TAG_METER = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_NAV
 */
const TIDY_TAG_NAV = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_OUTPUT
 */
const TIDY_TAG_OUTPUT = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_PROGRESS
 */
const TIDY_TAG_PROGRESS = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_SECTION
 */
const TIDY_TAG_SECTION = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_SOURCE
 */
const TIDY_TAG_SOURCE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_SUMMARY
 */
const TIDY_TAG_SUMMARY = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_TEMPLATE
 */
const TIDY_TAG_TEMPLATE = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_TIME
 */
const TIDY_TAG_TIME = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_TRACK
 */
const TIDY_TAG_TRACK = UNKNOWN;
/**
 * @var int
 * @cvalue TidyTag_VIDEO
 */
const TIDY_TAG_VIDEO = UNKNOWN;
# endif

function tidy_parse_string(string $string, array|string|null $config = null, ?string $encoding = null): tidy|false {}

function tidy_get_error_buffer(tidy $tidy): string|false {}

function tidy_get_output(tidy $tidy): string {}

function tidy_parse_file(string $filename, array|string|null $config = null, ?string $encoding = null, bool $useIncludePath = false): tidy|false {}

function tidy_clean_repair(tidy $tidy): bool {}

function tidy_repair_string(string $string, array|string|null $config = null, ?string $encoding = null): string|false {}

function tidy_repair_file(string $filename, array|string|null $config = null, ?string $encoding = null, bool $useIncludePath = false): string|false {}

function tidy_diagnose(tidy $tidy): bool {}

function tidy_get_release(): string {}

#ifdef HAVE_TIDYOPTGETDOC
function tidy_get_opt_doc(tidy $tidy, string $option): string|false {}
#endif

function tidy_get_config(tidy $tidy): array {}

function tidy_get_status(tidy $tidy): int {}

function tidy_get_html_ver(tidy $tidy): int {}

function tidy_is_xhtml(tidy $tidy): bool {}

function tidy_is_xml(tidy $tidy): bool {}

function tidy_error_count(tidy $tidy): int {}

function tidy_warning_count(tidy $tidy): int {}

function tidy_access_count(tidy $tidy): int {}

function tidy_config_count(tidy $tidy): int {}

function tidy_getopt(tidy $tidy, string $option): string|int|bool {}

function tidy_get_root(tidy $tidy): ?tidyNode {}

function tidy_get_html(tidy $tidy): ?tidyNode {}

function tidy_get_head(tidy $tidy): ?tidyNode {}

function tidy_get_body(tidy $tidy): ?tidyNode {}

class tidy
{
    public ?string $errorBuffer = null;
    public ?string $value = null;

    public function __construct(?string $filename = null, array|string|null $config = null, ?string $encoding = null, bool $useIncludePath = false) {}

    /**
     * @tentative-return-type
     * @alias tidy_getopt
     */
    public function getOpt(string $option): string|int|bool {}

    /**
     * @tentative-return-type
     * @alias tidy_clean_repair
     */
    public function cleanRepair(): bool {}

    /** @tentative-return-type */
    public function parseFile(string $filename, array|string|null $config = null, ?string $encoding = null, bool $useIncludePath = false): bool {}

    /** @tentative-return-type */
    public function parseString(string $string, array|string|null $config = null, ?string $encoding = null): bool {}

    /**
     * @tentative-return-type
     * @alias tidy_repair_string
     */
    public static function repairString(string $string, array|string|null $config = null, ?string $encoding = null): string|false {}

    /**
     * @tentative-return-type
     * @alias tidy_repair_file
     */
    public static function repairFile(string $filename, array|string|null $config = null, ?string $encoding = null, bool $useIncludePath = false): string|false {}

    /**
     * @tentative-return-type
     * @alias tidy_diagnose
     */
    public function diagnose(): bool {}

    /**
     * @tentative-return-type
     * @alias tidy_get_release
     */
    public function getRelease(): string {}

    /**
     * @tentative-return-type
     * @alias tidy_get_config
     */
    public function getConfig(): array {}

    /**
     * @tentative-return-type
     * @alias tidy_get_status
     */
    public function getStatus(): int {}

    /**
     * @tentative-return-type
     * @alias tidy_get_html_ver
     */
    public function getHtmlVer(): int {}

#ifdef HAVE_TIDYOPTGETDOC
    /**
     * @tentative-return-type
     * @alias tidy_get_opt_doc
     */
    public function getOptDoc(string $option): string|false {}
#endif

    /**
     * @tentative-return-type
     * @alias tidy_is_xhtml
     */
    public function isXhtml(): bool {}

    /**
     * @tentative-return-type
     * @alias tidy_is_xml
     */
    public function isXml(): bool {}

    /**
     * @tentative-return-type
     * @alias tidy_get_root
     */
    public function root(): ?tidyNode {}

    /**
     * @tentative-return-type
     * @alias tidy_get_head
     */
    public function head(): ?tidyNode {}

    /**
     * @tentative-return-type
     * @alias tidy_get_html
     */
    public function html(): ?tidyNode {}

    /**
     * @tentative-return-type
     * @alias tidy_get_body
     */
    public function body(): ?tidyNode {}
}

final class tidyNode
{
    public readonly string $value;
    public readonly string $name;
    public readonly int $type;
    public readonly int $line;
    public readonly int $column;
    public readonly bool $proprietary;
    public readonly ?int $id;
    public readonly ?array $attribute;
    public readonly ?array $child;

    private function __construct() {}

    public function hasChildren(): bool {}

    public function hasSiblings(): bool {}

    public function isComment(): bool {}

    public function isHtml(): bool {}

    public function isText(): bool {}

    public function isJste(): bool {}

    public function isAsp(): bool {}

    public function isPhp(): bool {}

    public function getParent(): ?tidyNode {}
}
