/* valadoc-0.56.vapi generated by valac, do not modify. */

namespace Valadoc {
	namespace Api {
		[CCode (cheader_filename = "valadoc.h")]
		public class Array : Valadoc.Api.Item {
			public Array (Valadoc.Api.Item parent, Vala.ArrayType data);
			protected override Valadoc.Content.Inline build_signature ();
			public Valadoc.Api.Item data_type { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Attribute : Valadoc.Api.Item {
			public Attribute (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string name, Vala.Attribute data);
			protected override Valadoc.Content.Inline build_signature ();
			public Valadoc.Api.SourceFile get_source_file ();
			public string name { get; private set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class ChildSymbolRegistrar : Valadoc.Api.Visitor {
			public ChildSymbolRegistrar ();
			public override void visit_class (Valadoc.Api.Class item);
			public override void visit_interface (Valadoc.Api.Interface item);
			public override void visit_namespace (Valadoc.Api.Namespace item);
			public override void visit_package (Valadoc.Api.Package item);
			public override void visit_property (Valadoc.Api.Property item);
			public override void visit_struct (Valadoc.Api.Struct item);
			public override void visit_tree (Valadoc.Api.Tree item);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Class : Valadoc.Api.TypeSymbol {
			public Class (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string name, Vala.SymbolAccessibility accessibility, Valadoc.Api.SourceComment? comment, Vala.Class data);
			public override void accept (Valadoc.Api.Visitor visitor);
			public void add_interface (Valadoc.Api.TypeReference iface);
			protected override Valadoc.Content.Inline build_signature ();
			public string get_class_macro_name ();
			public string get_class_type_macro_name ();
			public string? get_cname ();
			public string? get_dbus_name ();
			public string? get_free_function_name ();
			public Vala.Collection<Valadoc.Api.TypeReference> get_full_implemented_interface_list ();
			public string? get_get_value_function_cname ();
			public Vala.Collection<Valadoc.Api.TypeReference> get_implemented_interface_list ();
			public string get_is_class_type_macro_name ();
			public Vala.Collection<Valadoc.Api.Class> get_known_child_classes ();
			public Vala.Collection<Valadoc.Api.Interface> get_known_derived_interfaces ();
			public string? get_param_spec_function_cname ();
			public string? get_private_cname ();
			public string? get_ref_function_cname ();
			public string? get_set_value_function_cname ();
			public string? get_take_value_function_cname ();
			public string? get_type_id ();
			public string? get_unref_function_cname ();
			public void register_child_class (Valadoc.Api.Class cl);
			public void register_derived_interface (Valadoc.Api.Interface iface);
			public Valadoc.Api.TypeReference? base_type { get; set; }
			public bool is_abstract { get; private set; }
			public bool is_compact { get; }
			public bool is_fundamental { get; private set; }
			public bool is_sealed { get; private set; }
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Constant : Valadoc.Api.Symbol {
			public Constant (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string name, Vala.SymbolAccessibility accessibility, Valadoc.Api.SourceComment? comment, Vala.Constant data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public string get_cname ();
			public Valadoc.Api.TypeReference constant_type { get; set; }
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Delegate : Valadoc.Api.TypeSymbol, Valadoc.Api.Callable {
			public Delegate (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string name, Vala.SymbolAccessibility accessibility, Valadoc.Api.SourceComment? comment, Vala.Delegate data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public string? get_cname ();
			public bool is_static { get; private set; }
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Enum : Valadoc.Api.TypeSymbol {
			public Enum (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string name, Vala.SymbolAccessibility accessibility, Valadoc.Api.SourceComment? comment, Vala.Enum data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public string? get_cname ();
			public string? get_type_id ();
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class EnumValue : Valadoc.Api.Symbol {
			public EnumValue (Valadoc.Api.Enum parent, Valadoc.Api.SourceFile file, string name, Valadoc.Api.SourceComment? comment, Vala.EnumValue data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public string get_cname ();
			public Valadoc.Content.Run default_value { get; set; }
			public bool has_default_value { get; }
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class ErrorCode : Valadoc.Api.Symbol {
			public ErrorCode (Valadoc.Api.ErrorDomain parent, Valadoc.Api.SourceFile file, string name, Valadoc.Api.SourceComment? comment, Vala.ErrorCode data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public string get_cname ();
			public string get_dbus_name ();
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class ErrorDomain : Valadoc.Api.TypeSymbol {
			public ErrorDomain (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string name, Vala.SymbolAccessibility accessibility, Valadoc.Api.SourceComment? comment, Vala.ErrorDomain data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public string? get_cname ();
			public string? get_dbus_name ();
			public string get_quark_function_name ();
			public string get_quark_macro_name ();
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Field : Valadoc.Api.Symbol {
			public Field (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string name, Vala.SymbolAccessibility accessibility, Valadoc.Api.SourceComment? comment, Vala.Field data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public string? get_cname ();
			public Valadoc.Api.TypeReference? field_type { get; set; }
			public bool is_class { get; private set; }
			public bool is_static { get; private set; }
			public bool is_volatile { get; private set; }
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class GirSourceComment : Valadoc.Api.SourceComment {
			public GirSourceComment (string content, Valadoc.Api.SourceFile file, int first_line, int first_column, int last_line, int last_column);
			public void add_parameter_content (string param_name, Valadoc.Api.SourceComment comment);
			public Valadoc.Api.SourceComment? get_parameter_comment (string param_name);
			public Vala.MapIterator<string,Valadoc.Api.SourceComment> parameter_iterator ();
			public Valadoc.Api.SourceComment? deprecated_comment { get; set; }
			public string? instance_param_name { get; set; }
			public Valadoc.Api.SourceComment? return_comment { get; set; }
			public Valadoc.Api.SourceComment? stability_comment { get; set; }
			public Valadoc.Api.SourceComment? version_comment { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Interface : Valadoc.Api.TypeSymbol {
			public Interface (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string name, Vala.SymbolAccessibility accessibility, Valadoc.Api.SourceComment? comment, Vala.Interface data);
			public override void accept (Valadoc.Api.Visitor visitor);
			public void add_interface (Valadoc.Api.TypeReference iface);
			protected override Valadoc.Content.Inline build_signature ();
			public string? get_cname ();
			public string? get_dbus_name ();
			public Vala.Collection<Valadoc.Api.TypeReference> get_full_implemented_interface_list ();
			public Vala.Collection<Valadoc.Api.TypeReference> get_implemented_interface_list ();
			public string get_interface_macro_name ();
			public Vala.Collection<Valadoc.Api.Class> get_known_implementations ();
			public Vala.Collection<Valadoc.Api.Interface> get_known_related_interfaces ();
			public string? get_type_id ();
			public void register_implementation (Valadoc.Api.Class cl);
			public void register_related_interface (Valadoc.Api.Interface iface);
			public Valadoc.Api.TypeReference? base_type { get; set; }
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public abstract class Item : GLib.Object {
			protected Item (Vala.CodeNode? data);
			protected abstract Valadoc.Content.Inline build_signature ();
			public Vala.CodeNode? data { get; private set; }
			public Valadoc.Api.Item parent { get; protected set; }
			public Valadoc.Content.Inline signature { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Method : Valadoc.Api.Symbol, Valadoc.Api.Callable {
			public Method (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string name, Vala.SymbolAccessibility accessibility, Valadoc.Api.SourceComment? comment, Vala.Method data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public string? get_cname ();
			public string get_dbus_name ();
			public string get_dbus_result_name ();
			public string? get_finish_function_cname ();
			public weak Valadoc.Api.Method? base_method { get; set; }
			public bool is_abstract { get; }
			public bool is_class { get; }
			public bool is_constructor { get; private set; }
			public bool is_dbus_visible { get; private set; }
			public bool is_inline { get; }
			public bool is_override { get; }
			public bool is_static { get; }
			public bool is_virtual { get; }
			public bool is_yields { get; private set; }
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Namespace : Valadoc.Api.Symbol {
			public Namespace (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string? name, Valadoc.Api.SourceComment? comment, Vala.Namespace data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public override bool is_browsable (Valadoc.Settings settings);
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public abstract class Node : Valadoc.Api.Item, Valadoc.Documentation {
			protected bool do_document;
			protected Node (Valadoc.Api.Node? parent, Valadoc.Api.SourceFile? file, string? name, Vala.CodeNode? data);
			public abstract void accept (Valadoc.Api.Visitor visitor);
			public void accept_all_children (Valadoc.Api.Visitor visitor, bool filtered = true);
			public void accept_children (Valadoc.Api.NodeType[] types, Valadoc.Api.Visitor visitor, bool filtered = true);
			public void accept_children_by_type (Valadoc.Api.NodeType type, Valadoc.Api.Visitor visitor, bool filtered = true);
			public void add_child (Valadoc.Api.Symbol child);
			public int compare_to (Valadoc.Api.Node node);
			public Valadoc.Api.Node? find_by_name (string name);
			public Vala.List<Valadoc.Api.Node> get_children_by_type (Valadoc.Api.NodeType type, bool filtered = true);
			public Vala.List<Valadoc.Api.Node> get_children_by_types (Valadoc.Api.NodeType[] types, bool filtered = true);
			public string? get_full_name ();
			public Valadoc.Api.SourceFile get_source_file ();
			public bool has_children (Valadoc.Api.NodeType[] types);
			public bool has_children_by_type (Valadoc.Api.NodeType type);
			public bool has_visible_children (Valadoc.Settings settings);
			public bool has_visible_children_by_type (Valadoc.Api.NodeType type, Valadoc.Settings settings);
			public bool has_visible_children_by_types (Valadoc.Api.NodeType[] types, Valadoc.Settings settings);
			public abstract bool is_browsable (Valadoc.Settings settings);
			public Valadoc.Content.Comment? documentation { get; internal set; }
			public string? name { get; private set; }
			public abstract Valadoc.Api.NodeType node_type { get; }
			public Valadoc.Api.Namespace? nspace { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Package : Valadoc.Api.Node {
			public Package (string name, bool is_package, Vala.CodeNode? data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public Vala.Collection<Valadoc.Api.Package> get_dependency_list ();
			public Vala.Map<string,Vala.Collection<Valadoc.Api.Symbol>> get_deprecated_symbols ();
			public Vala.Collection<Valadoc.Api.Package> get_full_dependency_list ();
			public override bool is_browsable (Valadoc.Settings settings);
			public bool is_package { get; private set; }
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Parameter : Valadoc.Api.Symbol {
			public Parameter (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string? name, Vala.SymbolAccessibility accessibility, Vala.ParameterDirection type, bool ellipsis, Vala.Parameter data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public Valadoc.Content.Run default_value { get; set; }
			public bool ellipsis { get; private set; }
			public bool has_default_value { get; }
			public bool is_out { get; }
			public bool is_ref { get; }
			public override Valadoc.Api.NodeType node_type { get; }
			public Valadoc.Api.TypeReference? parameter_type { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Pointer : Valadoc.Api.Item {
			public Pointer (Valadoc.Api.Item parent, Vala.PointerType data);
			protected override Valadoc.Content.Inline build_signature ();
			public Valadoc.Api.Item data_type { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Property : Valadoc.Api.Symbol {
			public Property (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string name, Vala.SymbolAccessibility accessibility, Valadoc.Api.SourceComment? comment, Vala.Property data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public string? get_cname ();
			public string get_dbus_name ();
			public Valadoc.Api.Property base_property { get; set; }
			public Valadoc.Api.PropertyAccessor? getter { get; set; }
			public bool is_abstract { get; }
			public bool is_dbus_visible { get; private set; }
			public bool is_override { get; }
			public bool is_virtual { get; }
			public override Valadoc.Api.NodeType node_type { get; }
			public Valadoc.Api.TypeReference? property_type { get; set; }
			public Valadoc.Api.PropertyAccessor? setter { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class PropertyAccessor : Valadoc.Api.Symbol {
			public PropertyAccessor (Valadoc.Api.Property parent, Valadoc.Api.SourceFile file, string name, Vala.SymbolAccessibility accessibility, Vala.PropertyAccessor data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public string? get_cname ();
			public bool is_construct { get; }
			public bool is_get { get; }
			public bool is_owned { get; }
			public bool is_set { get; }
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Signal : Valadoc.Api.Symbol, Valadoc.Api.Callable {
			public Signal (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string name, Vala.SymbolAccessibility accessibility, Valadoc.Api.SourceComment? comment, Vala.Signal data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public string? get_cname ();
			public string get_dbus_name ();
			public string? get_default_impl_cname ();
			public bool is_dbus_visible { get; private set; }
			public bool is_virtual { get; private set; }
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class SignatureBuilder {
			public SignatureBuilder ();
			public unowned Valadoc.Api.SignatureBuilder append (string text, bool spaced = true);
			public unowned Valadoc.Api.SignatureBuilder append_attribute (string text, bool spaced = true);
			public unowned Valadoc.Api.SignatureBuilder append_content (Valadoc.Content.Inline content, bool spaced = true);
			public unowned Valadoc.Api.SignatureBuilder append_highlighted (string text, bool spaced = true);
			public unowned Valadoc.Api.SignatureBuilder append_keyword (string keyword, bool spaced = true);
			public unowned Valadoc.Api.SignatureBuilder append_literal (string literal, bool spaced = true);
			public unowned Valadoc.Api.SignatureBuilder append_symbol (Valadoc.Api.Node node, bool spaced = true);
			public unowned Valadoc.Api.SignatureBuilder append_type (Valadoc.Api.Node node, bool spaced = true);
			public unowned Valadoc.Api.SignatureBuilder append_type_name (string name, bool spaced = true);
			public new Valadoc.Content.Run @get ();
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class SourceComment {
			public SourceComment (string content, Valadoc.Api.SourceFile file, int first_line, int first_column, int last_line, int last_column);
			public string content { get; private set; }
			public Valadoc.Api.SourceFile file { get; private set; }
			public int first_column { get; private set; }
			public int first_line { get; private set; }
			public int last_column { get; private set; }
			public int last_line { get; private set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class SourceFile : GLib.Object {
			public SourceFile (Valadoc.Api.Package package, string relative_path, string? relative_c_path, Vala.SourceFile? data);
			public string get_name ();
			public Vala.SourceFile? data { get; private set; }
			public Valadoc.Api.Package package { get; private set; }
			public string? relative_c_path { get; private set; }
			public string relative_path { get; private set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Struct : Valadoc.Api.TypeSymbol {
			public Struct (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string name, Vala.SymbolAccessibility accessibility, Valadoc.Api.SourceComment? comment, Vala.Struct data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public string? get_cname ();
			public string? get_copy_function_cname ();
			public string? get_destroy_function_cname ();
			public string? get_dup_function_cname ();
			public string? get_free_function_cname ();
			public Vala.Collection<Valadoc.Api.Struct> get_known_child_structs ();
			public string? get_type_id ();
			public void register_child_struct (Valadoc.Api.Struct stru);
			public Valadoc.Api.TypeReference? base_type { get; set; }
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public abstract class Symbol : Valadoc.Api.Node {
			protected Symbol (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string? name, Vala.SymbolAccessibility accessibility, Valadoc.Api.SourceComment? comment, Vala.Symbol data);
			public void add_attribute (Valadoc.Api.Attribute att);
			public Valadoc.Api.Attribute? get_attribute (string name);
			public Vala.Collection<Valadoc.Api.Attribute> get_attributes ();
			public override bool is_browsable (Valadoc.Settings settings);
			public Vala.SymbolAccessibility accessibility { get; private set; }
			public bool is_deprecated { get; private set; }
			public bool is_internal { get; }
			public bool is_private { get; }
			public bool is_protected { get; }
			public bool is_public { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Tree {
			public Tree (Valadoc.ErrorReporter reporter, Valadoc.Settings settings, Vala.CodeContext context);
			public void accept (Valadoc.Api.Visitor visitor);
			public void accept_children (Valadoc.Api.Visitor visitor);
			public void add_external_c_files (string name);
			public void add_package (Valadoc.Api.Package package);
			public void check_comments (Valadoc.DocumentationParser docparser);
			public bool create_tree ();
			public Vala.Collection<string> get_external_c_files ();
			public Vala.Collection<Valadoc.Api.Package> get_package_list ();
			public void import_comments (Valadoc.Importer.DocumentationImporter[] importers, string[] packages, string[] import_directories);
			public void parse_comments (Valadoc.DocumentationParser docparser);
			public Valadoc.Api.Node? search_symbol_cstr (Valadoc.Api.Node? element, string cname);
			public Valadoc.Api.Node? search_symbol_path (Valadoc.Api.Node? element, string[] path);
			public Valadoc.Api.Node? search_symbol_str (Valadoc.Api.Node? element, string symname);
			public Valadoc.Api.TypeSymbol? search_symbol_type_cstr (string cname);
			public Vala.CodeContext context { get; set; }
			public Valadoc.Highlighter.Highlighter highlighter { get; }
			public Valadoc.WikiPageTree? wikitree { get; private set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class TypeParameter : Valadoc.Api.Symbol {
			public TypeParameter (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string name, Vala.TypeParameter data);
			public override void accept (Valadoc.Api.Visitor visitor);
			protected override Valadoc.Content.Inline build_signature ();
			public override bool is_browsable (Valadoc.Settings settings);
			public override Valadoc.Api.NodeType node_type { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class TypeReference : Valadoc.Api.Item {
			public TypeReference (Valadoc.Api.Item parent, bool is_dynamic, bool is_nullable, string? dbus_type_signature, Vala.DataType? data);
			public void add_type_argument (Valadoc.Api.TypeReference type_ref);
			protected override Valadoc.Content.Inline build_signature ();
			public string? get_dbus_type_signature ();
			public Vala.Collection<Valadoc.Api.TypeReference> get_type_arguments ();
			public Valadoc.Api.Item? data_type { get; set; }
			public bool is_dynamic { get; private set; }
			public bool is_nullable { get; private set; }
			public bool is_owned { get; }
			public bool is_unowned { get; }
			public bool is_weak { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public abstract class TypeSymbol : Valadoc.Api.Symbol {
			protected TypeSymbol (Valadoc.Api.Node parent, Valadoc.Api.SourceFile file, string name, Vala.SymbolAccessibility accessibility, Valadoc.Api.SourceComment? comment, bool is_basic_type, Vala.TypeSymbol data);
			public string? get_is_type_macro_name ();
			public string? get_type_cast_macro_name ();
			public string? get_type_function_name ();
			public string? get_type_macro_name ();
			public bool is_basic_type { get; private set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public abstract class Visitor : GLib.Object {
			protected Visitor ();
			public virtual void visit_class (Valadoc.Api.Class item);
			public virtual void visit_constant (Valadoc.Api.Constant item);
			public virtual void visit_delegate (Valadoc.Api.Delegate item);
			public virtual void visit_enum (Valadoc.Api.Enum item);
			public virtual void visit_enum_value (Valadoc.Api.EnumValue item);
			public virtual void visit_error_code (Valadoc.Api.ErrorCode item);
			public virtual void visit_error_domain (Valadoc.Api.ErrorDomain item);
			public virtual void visit_field (Valadoc.Api.Field item);
			public virtual void visit_formal_parameter (Valadoc.Api.Parameter item);
			public virtual void visit_interface (Valadoc.Api.Interface item);
			public virtual void visit_method (Valadoc.Api.Method item);
			public virtual void visit_namespace (Valadoc.Api.Namespace item);
			public virtual void visit_package (Valadoc.Api.Package item);
			public virtual void visit_property (Valadoc.Api.Property item);
			public virtual void visit_signal (Valadoc.Api.Signal item);
			public virtual void visit_struct (Valadoc.Api.Struct item);
			public virtual void visit_tree (Valadoc.Api.Tree item);
			public virtual void visit_type_parameter (Valadoc.Api.TypeParameter item);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public interface Callable : Valadoc.Api.Symbol {
			public abstract Valadoc.Api.TypeReference? return_type { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public enum NodeType {
			CLASS,
			CONSTANT,
			CREATION_METHOD,
			DELEGATE,
			ENUM,
			ENUM_VALUE,
			ERROR_CODE,
			ERROR_DOMAIN,
			FIELD,
			FORMAL_PARAMETER,
			INTERFACE,
			METHOD,
			NAMESPACE,
			PACKAGE,
			PROPERTY,
			PROPERTY_ACCESSOR,
			SIGNAL,
			STATIC_METHOD,
			STRUCT,
			TYPE_PARAMETER
		}
		[CCode (cheader_filename = "valadoc.h")]
		public enum Ownership {
			DEFAULT,
			UNOWNED,
			OWNED,
			WEAK
		}
	}
	namespace Charts {
		[CCode (cheader_filename = "valadoc.h")]
		public class Chart : Valadoc.Api.Visitor {
			protected Gvc.Context context;
			protected Valadoc.Charts.Factory factory;
			protected Gvc.Graph graph;
			public Chart (Valadoc.Charts.Factory factory, Valadoc.Api.Node node);
			public void save (string file_name, string file_type = "png");
			public void write (GLib.FileStream file, string file_type);
			public uint8[]? write_buffer (string file_type);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public abstract class Factory : GLib.Object {
			protected Factory ();
			public abstract Gvc.Edge add_children (Gvc.Graph graph, Gvc.Node parent, Gvc.Node child);
			public abstract Gvc.Node create_class (Gvc.Graph graph, Valadoc.Api.Class item);
			public abstract Gvc.Context create_context (Gvc.Graph graph);
			public abstract Gvc.Node create_delegate (Gvc.Graph graph, Valadoc.Api.Delegate item);
			public abstract Gvc.Node create_enum (Gvc.Graph graph, Valadoc.Api.Enum item);
			public abstract Gvc.Node create_errordomain (Gvc.Graph graph, Valadoc.Api.ErrorDomain item);
			public abstract Gvc.Graph create_graph (Valadoc.Api.Node item);
			public abstract Gvc.Node create_interface (Gvc.Graph graph, Valadoc.Api.Interface item);
			public abstract Gvc.Node create_namespace (Gvc.Graph graph, Valadoc.Api.Namespace item);
			public abstract Gvc.Node create_struct (Gvc.Graph graph, Valadoc.Api.Struct item);
			protected Gvc.Node create_type (Gvc.Graph graph, Valadoc.Api.Node item);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Hierarchy : Valadoc.Charts.Chart {
			public Hierarchy (Valadoc.Charts.Factory factory, Valadoc.Api.Node node);
			public override void visit_class (Valadoc.Api.Class item);
			public override void visit_interface (Valadoc.Api.Interface item);
			public override void visit_struct (Valadoc.Api.Struct item);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class SimpleFactory : Valadoc.Charts.Factory {
			public SimpleFactory ();
			public override Gvc.Edge add_children (Gvc.Graph graph, Gvc.Node parent, Gvc.Node child);
			protected virtual Gvc.Node configure_type (Gvc.Node node, Valadoc.Api.Node item);
			public override Gvc.Node create_class (Gvc.Graph graph, Valadoc.Api.Class item);
			public override Gvc.Context create_context (Gvc.Graph graph);
			public override Gvc.Node create_delegate (Gvc.Graph graph, Valadoc.Api.Delegate item);
			public override Gvc.Node create_enum (Gvc.Graph graph, Valadoc.Api.Enum item);
			public override Gvc.Node create_errordomain (Gvc.Graph graph, Valadoc.Api.ErrorDomain item);
			public override Gvc.Graph create_graph (Valadoc.Api.Node item);
			public override Gvc.Node create_interface (Gvc.Graph graph, Valadoc.Api.Interface item);
			public override Gvc.Node create_namespace (Gvc.Graph graph, Valadoc.Api.Namespace item);
			public override Gvc.Node create_struct (Gvc.Graph graph, Valadoc.Api.Struct item);
		}
	}
	namespace Content {
		[CCode (cheader_filename = "valadoc.h")]
		public abstract class BlockContent : Valadoc.Content.ContentElement {
			public override void accept_children (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override void configure (Valadoc.Settings settings, Valadoc.ResourceLocator locator);
			public override bool is_empty ();
			public Vala.List<Valadoc.Content.Block> content { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Comment : Valadoc.Content.BlockContent {
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void accept_children (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override void configure (Valadoc.Settings settings, Valadoc.ResourceLocator locator);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public Vala.List<Valadoc.Content.Taglet> find_taglets (Valadoc.Api.Node? container, GLib.Type taglet_type);
			public Vala.List<Valadoc.Content.Taglet> taglets { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public abstract class ContentElement : GLib.Object {
			protected ContentElement ();
			public abstract void accept (Valadoc.Content.ContentVisitor visitor);
			public virtual void accept_children (Valadoc.Content.ContentVisitor visitor);
			public abstract void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public virtual void configure (Valadoc.Settings settings, Valadoc.ResourceLocator locator);
			public abstract Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public abstract bool is_empty ();
			public Valadoc.Content.ContentElement parent { get; internal set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class ContentFactory : GLib.Object {
			public ContentFactory (Valadoc.Settings settings, Valadoc.ResourceLocator locator, Valadoc.ModuleLoader modules);
			public Valadoc.Content.Comment create_comment ();
			public Valadoc.Content.Embedded create_embedded ();
			public Valadoc.Content.Headline create_headline ();
			public Valadoc.Content.Link create_link ();
			public Valadoc.Content.List create_list ();
			public Valadoc.Content.ListItem create_list_item ();
			public Valadoc.Content.Note create_note ();
			public Valadoc.Content.Page create_page ();
			public Valadoc.Content.Paragraph create_paragraph ();
			public Valadoc.Content.Run create_run (Valadoc.Content.Run.Style style);
			public Valadoc.Content.SourceCode create_source_code ();
			public Valadoc.Content.Table create_table ();
			public Valadoc.Content.TableCell create_table_cell ();
			public Valadoc.Content.TableRow create_table_row ();
			public Valadoc.Content.Taglet? create_taglet (string name);
			public Valadoc.Content.Text create_text (string? text = null);
			public Valadoc.Content.Warning create_warning ();
			public Valadoc.Content.WikiLink create_wiki_link ();
			public Valadoc.Content.ContentElement set_style_attributes (Valadoc.Content.StyleAttributes element, Valadoc.Content.VerticalAlign? valign, Valadoc.Content.HorizontalAlign? halign, string? style);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public abstract class ContentRenderer : Valadoc.Content.ContentVisitor {
			protected ContentRenderer ();
			public abstract void render (Valadoc.Content.ContentElement element);
			public abstract void render_children (Valadoc.Content.ContentElement element);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public abstract class ContentVisitor : GLib.Object {
			protected ContentVisitor ();
			public virtual void visit_comment (Valadoc.Content.Comment element);
			public virtual void visit_embedded (Valadoc.Content.Embedded element);
			public virtual void visit_headline (Valadoc.Content.Headline element);
			public virtual void visit_link (Valadoc.Content.Link element);
			public virtual void visit_list (Valadoc.Content.List element);
			public virtual void visit_list_item (Valadoc.Content.ListItem element);
			public virtual void visit_note (Valadoc.Content.Note element);
			public virtual void visit_page (Valadoc.Content.Page element);
			public virtual void visit_paragraph (Valadoc.Content.Paragraph element);
			public virtual void visit_run (Valadoc.Content.Run element);
			public virtual void visit_source_code (Valadoc.Content.SourceCode element);
			public virtual void visit_symbol_link (Valadoc.Content.SymbolLink element);
			public virtual void visit_table (Valadoc.Content.Table element);
			public virtual void visit_table_cell (Valadoc.Content.TableCell element);
			public virtual void visit_table_row (Valadoc.Content.TableRow element);
			public virtual void visit_taglet (Valadoc.Content.Taglet element);
			public virtual void visit_text (Valadoc.Content.Text element);
			public virtual void visit_warning (Valadoc.Content.Warning element);
			public virtual void visit_wiki_link (Valadoc.Content.WikiLink element);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Embedded : Valadoc.Content.ContentElement, Valadoc.Content.Inline, Valadoc.Content.StyleAttributes {
			public Valadoc.Api.Package package;
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override void configure (Valadoc.Settings settings, Valadoc.ResourceLocator locator);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override bool is_empty ();
			public string? caption { get; set; }
			public string url { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Headline : Valadoc.Content.InlineContent, Valadoc.Content.Block {
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override bool is_empty ();
			public int level { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public abstract class InlineContent : Valadoc.Content.ContentElement {
			public override void accept_children (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override bool is_empty ();
			public Vala.List<Valadoc.Content.Inline> content { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public abstract class InlineTaglet : Valadoc.Content.ContentElement, Valadoc.Content.Taglet, Valadoc.Content.Inline {
			protected Valadoc.ResourceLocator locator;
			protected Valadoc.Settings settings;
			protected InlineTaglet ();
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override void configure (Valadoc.Settings settings, Valadoc.ResourceLocator locator);
			public abstract Valadoc.Rule? get_parser_rule (Valadoc.Rule run_rule);
			public override bool is_empty ();
			public abstract Valadoc.Content.ContentElement produce_content ();
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Link : Valadoc.Content.InlineContent, Valadoc.Content.Inline {
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override void configure (Valadoc.Settings settings, Valadoc.ResourceLocator locator);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override bool is_empty ();
			public Valadoc.Importer.InternalIdRegistrar id_registrar { get; internal set; }
			public string url { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class List : Valadoc.Content.ContentElement, Valadoc.Content.Block {
			public enum Bullet {
				NONE,
				UNORDERED,
				ORDERED,
				ORDERED_NUMBER,
				ORDERED_LOWER_CASE_ALPHA,
				ORDERED_UPPER_CASE_ALPHA,
				ORDERED_LOWER_CASE_ROMAN,
				ORDERED_UPPER_CASE_ROMAN;
				public static Valadoc.Content.List.Bullet? from_string (string? str);
				public unowned string to_string ();
			}
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void accept_children (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override bool is_empty ();
			public Valadoc.Content.List.Bullet bullet { get; set; }
			public Vala.List<Valadoc.Content.ListItem> items { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class ListItem : Valadoc.Content.BlockContent {
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void accept_children (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Note : Valadoc.Content.BlockContent, Valadoc.Content.Block {
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Page : Valadoc.Content.BlockContent {
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Paragraph : Valadoc.Content.InlineContent, Valadoc.Content.Block, Valadoc.Content.StyleAttributes {
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Run : Valadoc.Content.InlineContent, Valadoc.Content.Inline {
			public enum Style {
				NONE,
				BOLD,
				ITALIC,
				UNDERLINED,
				MONOSPACED,
				STROKE,
				LANG_KEYWORD,
				LANG_LITERAL,
				LANG_BASIC_TYPE,
				LANG_TYPE,
				LANG_PREPROCESSOR,
				LANG_COMMENT,
				LANG_ESCAPE,
				XML_ESCAPE,
				XML_ELEMENT,
				XML_ATTRIBUTE,
				XML_ATTRIBUTE_VALUE,
				XML_COMMENT,
				XML_CDATA;
				public static Valadoc.Content.Run.Style? from_string (string str);
				public unowned string to_string ();
			}
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public Valadoc.Content.Run.Style style { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class SourceCode : Valadoc.Content.ContentElement, Valadoc.Content.Inline {
			public enum Language {
				UNKNOWN,
				GENIE,
				VALA,
				XML,
				C;
				public static Valadoc.Content.SourceCode.Language from_path (string path);
				public static Valadoc.Content.SourceCode.Language from_string (string str, bool is_extension = false);
				public unowned string to_string ();
			}
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void accept_children (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override bool is_empty ();
			public string code { get; set; }
			public Valadoc.Content.Run? highlighted_code { get; private set; }
			public Valadoc.Content.SourceCode.Language language { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class SymbolLink : Valadoc.Content.InlineContent, Valadoc.Content.Inline {
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override void configure (Valadoc.Settings settings, Valadoc.ResourceLocator locator);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override bool is_empty ();
			public string given_symbol_name { get; set; }
			public Valadoc.Api.Node symbol { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Table : Valadoc.Content.ContentElement, Valadoc.Content.Block {
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void accept_children (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override bool is_empty ();
			public Vala.List<Valadoc.Content.TableRow> rows { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class TableCell : Valadoc.Content.InlineContent, Valadoc.Content.StyleAttributes {
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override bool is_empty ();
			public int colspan { get; set; }
			public int rowspan { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class TableRow : Valadoc.Content.ContentElement {
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void accept_children (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override bool is_empty ();
			public Vala.List<Valadoc.Content.TableCell> cells { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Text : Valadoc.Content.ContentElement, Valadoc.Content.Inline {
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override bool is_empty ();
			public string content { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Warning : Valadoc.Content.BlockContent, Valadoc.Content.Block {
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class WikiLink : Valadoc.Content.InlineContent, Valadoc.Content.Inline {
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override bool is_empty ();
			public string name { get; set; }
			public Valadoc.WikiPage page { get; internal set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public interface Block : Valadoc.Content.ContentElement {
		}
		[CCode (cheader_filename = "valadoc.h")]
		public interface Inline : Valadoc.Content.ContentElement {
		}
		[CCode (cheader_filename = "valadoc.h")]
		public interface StyleAttributes : Valadoc.Content.ContentElement {
			public abstract Valadoc.Content.HorizontalAlign horizontal_align { get; set; }
			public abstract string? style { get; set; }
			public abstract Valadoc.Content.VerticalAlign vertical_align { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public interface Taglet : Valadoc.Content.ContentElement {
			public virtual Vala.List<Valadoc.Content.ContentElement>? get_inheritable_documentation ();
			public abstract Valadoc.Rule? get_parser_rule (Valadoc.Rule run_rule);
			public virtual bool inheritable (Valadoc.Content.Taglet taglet);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public enum HorizontalAlign {
			NONE,
			LEFT,
			RIGHT,
			CENTER;
			public static Valadoc.Content.HorizontalAlign from_string (string str);
			public unowned string to_string ();
		}
		[CCode (cheader_filename = "valadoc.h")]
		public enum VerticalAlign {
			NONE,
			TOP,
			MIDDLE,
			BOTTOM;
			public static Valadoc.Content.VerticalAlign from_string (string str);
			public unowned string to_string ();
		}
	}
	namespace Devhelp {
		[CCode (cheader_filename = "valadoc.h")]
		public class MarkupWriter : Valadoc.MarkupWriter {
			public MarkupWriter (GLib.FileStream stream, bool xml_declaration = true);
			protected override bool content_inline_element (string name);
			public unowned Valadoc.Devhelp.MarkupWriter end_book ();
			public unowned Valadoc.Devhelp.MarkupWriter end_chapters ();
			public unowned Valadoc.Devhelp.MarkupWriter end_functions ();
			public unowned Valadoc.Devhelp.MarkupWriter end_sub ();
			protected override bool inline_element (string name);
			public unowned Valadoc.Devhelp.MarkupWriter keyword (string name, string type, string link);
			public unowned Valadoc.Devhelp.MarkupWriter start_book (string title, string lang, string link, string name, string version, string author);
			public unowned Valadoc.Devhelp.MarkupWriter start_chapters ();
			public unowned Valadoc.Devhelp.MarkupWriter start_functions ();
			public unowned Valadoc.Devhelp.MarkupWriter start_sub (string name, string link);
		}
	}
	namespace Gtkdoc {
		[CCode (cheader_filename = "valadoc.h")]
		public class MarkdownParser : GLib.Object, Valadoc.ResourceLocator {
			public MarkdownParser (Valadoc.Settings settings, Valadoc.ErrorReporter reporter, Valadoc.Api.Tree? tree, Valadoc.ModuleLoader _modules);
			public void init_rules ();
			public Valadoc.Content.Comment? parse (Valadoc.Api.Node element, Valadoc.Api.GirSourceComment gir_comment, Valadoc.GirMetaData metadata, Valadoc.Importer.InternalIdRegistrar id_registrar, string? this_name = null);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class MarkdownScanner : GLib.Object, Valadoc.Scanner {
			public MarkdownScanner (Valadoc.Settings settings);
			public int get_line_start_column ();
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Parser : GLib.Object, Valadoc.ResourceLocator {
			public Parser (Valadoc.Settings settings, Valadoc.ErrorReporter reporter, Valadoc.Api.Tree tree, Valadoc.ModuleLoader modules);
			public Valadoc.Content.Comment? parse (Valadoc.Api.Node element, Valadoc.Api.GirSourceComment gir_comment, Valadoc.GirMetaData gir_metadata, Valadoc.Importer.InternalIdRegistrar id_registrar);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Scanner {
			public Scanner ();
			public Valadoc.Gtkdoc.Token next ();
			public void reset (string content);
			public static string unescape (string txt);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Token {
			public Vala.HashMap<string,string>? attributes;
			public string content;
			public int first_column;
			public int last_column;
			public int length;
			public int line;
			public weak string start;
			public Valadoc.Gtkdoc.TokenType type;
			public Token (Valadoc.Gtkdoc.TokenType type, string content, Vala.HashMap<string,string>? attributes, string start, int length, int line, int first_column, int last_column);
			public string to_string ();
		}
		[CCode (cheader_filename = "valadoc.h")]
		public enum TokenType {
			XML_OPEN,
			XML_CLOSE,
			XML_COMMENT,
			GTKDOC_FUNCTION,
			GTKDOC_CONST,
			GTKDOC_TYPE,
			GTKDOC_PARAM,
			GTKDOC_SOURCE_OPEN,
			GTKDOC_SOURCE_CLOSE,
			GTKDOC_SIGNAL,
			GTKDOC_PROPERTY,
			GTKDOC_PARAGRAPH,
			NEWLINE,
			SPACE,
			WORD,
			EOF
		}
	}
	namespace Highlighter {
		[CCode (cheader_filename = "valadoc.h")]
		public class CodeScanner : GLib.Object, Valadoc.Highlighter.Scanner {
			public CodeScanner (string content, bool enable_string_templates, bool enabel_verbatim_string, bool enable_preprocessor_define, bool enable_preprocessor_include, bool enable_keyword_escape, Vala.HashMap<string,Valadoc.Highlighter.CodeTokenType?> keywords);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class CodeToken {
			public CodeToken (Valadoc.Highlighter.CodeTokenType type, string content);
			public string content { get; private set; }
			public Valadoc.Highlighter.CodeTokenType token_type { get; private set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Highlighter : GLib.Object {
			public Highlighter ();
			public Valadoc.Content.Run highlight_c (string source_code);
			public Valadoc.Content.Run highlight_vala (string source_code);
			public Valadoc.Content.Run highlight_xml (string source_code);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class XmlScanner : GLib.Object, Valadoc.Highlighter.Scanner {
			public XmlScanner (string content);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public interface Scanner : GLib.Object {
			public abstract Valadoc.Highlighter.CodeToken next ();
		}
		[CCode (cheader_filename = "valadoc.h")]
		public enum CodeTokenType {
			XML_ESCAPE,
			XML_ELEMENT,
			XML_ATTRIBUTE,
			XML_ATTRIBUTE_VALUE,
			XML_COMMENT,
			XML_CDATA,
			PREPROCESSOR,
			COMMENT,
			KEYWORD,
			LITERAL,
			ESCAPE,
			PLAIN,
			TYPE,
			EOF;
			public unowned string to_string ();
		}
	}
	namespace Html {
		[CCode (cheader_filename = "valadoc.h")]
		public abstract class BasicDoclet : Valadoc.Api.Visitor, Valadoc.Doclet {
			protected Valadoc.Html.HtmlRenderer _renderer;
			protected Valadoc.Html.CssClassResolver cssresolver;
			protected Valadoc.Charts.Factory image_factory;
			protected string package_list_link;
			protected Valadoc.ErrorReporter reporter;
			protected Valadoc.Api.Tree tree;
			protected Valadoc.Html.MarkupWriter writer;
			protected BasicDoclet ();
			protected void fetch_subnamespace_names (Valadoc.Api.Node node, Vala.ArrayList<Valadoc.Api.Namespace> namespaces);
			protected virtual string get_icon_directory ();
			protected virtual string get_img_path (Valadoc.Api.Node element, string type);
			protected virtual string get_img_path_html (Valadoc.Api.Node element, string type);
			protected string? get_link (Valadoc.Api.Node to, Valadoc.Api.Node from);
			protected bool is_internal_node (Valadoc.Api.Node node);
			public virtual void process (Valadoc.Settings settings, Valadoc.Api.Tree tree, Valadoc.ErrorReporter reporter);
			protected void write_child_dependencies (Valadoc.Api.Package package, Valadoc.Api.Node? parent);
			protected void write_child_namespaces (Valadoc.Api.Node node, Valadoc.Api.Node? parent);
			protected void write_children (Valadoc.Api.Node node, Valadoc.Api.NodeType type, string type_string, Valadoc.Api.Node? container);
			protected void write_file_footer ();
			protected void write_file_header (string css, string js, string? title);
			protected void write_image_block (Valadoc.Api.Node element);
			public void write_namespace_content (Valadoc.Api.Namespace node, Valadoc.Api.Node? parent);
			protected void write_namespace_note (Valadoc.Api.Node element);
			protected void write_navi_children (Valadoc.Api.Node node, Valadoc.Api.NodeType type, Valadoc.Api.Node? parent);
			protected void write_navi_entry (Valadoc.Api.Node element, Valadoc.Api.Node? pos, string style, bool link, bool full_name = false);
			protected void write_navi_entry_html_template (string style, string content, bool is_deprecated);
			protected void write_navi_entry_html_template_with_link (string style, string link, string content, bool is_deprecated);
			protected void write_navi_leaf_symbol (Valadoc.Api.Node node);
			protected void write_navi_package (Valadoc.Api.Package package);
			public void write_navi_packages (Valadoc.Api.Tree tree);
			public void write_navi_packages_inline (Valadoc.Api.Tree tree);
			protected void write_navi_symbol (Valadoc.Api.Node node);
			protected void write_navi_symbol_inline (Valadoc.Api.Node node, Valadoc.Api.Node? parent);
			protected void write_navi_top_entry (Valadoc.Api.Node element, Valadoc.Api.Node? parent);
			protected void write_package_content (Valadoc.Api.Package node, Valadoc.Api.Node? parent);
			public void write_package_index_content (Valadoc.Api.Tree tree);
			protected void write_package_note (Valadoc.Api.Node element);
			public void write_symbol_content (Valadoc.Api.Node node);
			protected void write_top_element_template (string link);
			protected void write_top_elements (Valadoc.Api.Node element, Valadoc.Api.Node? parent);
			protected virtual void write_wiki_page (Valadoc.WikiPage page, string contentp, string css_path, string js_path, string pkg_name);
			protected void write_wiki_pages (Valadoc.Api.Tree tree, string css_path_wiki, string js_path_wiki, string contentp);
			public Valadoc.Html.LinkHelper linker { get; protected set; }
			public Valadoc.Settings settings { get; protected set; }
			public string wiki_index_name { get; protected set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class CssClassResolver : Valadoc.Api.Visitor {
			public CssClassResolver ();
			public string resolve (Valadoc.Api.Node node);
			public override void visit_class (Valadoc.Api.Class item);
			public override void visit_constant (Valadoc.Api.Constant item);
			public override void visit_delegate (Valadoc.Api.Delegate item);
			public override void visit_enum (Valadoc.Api.Enum item);
			public override void visit_enum_value (Valadoc.Api.EnumValue item);
			public override void visit_error_code (Valadoc.Api.ErrorCode item);
			public override void visit_error_domain (Valadoc.Api.ErrorDomain item);
			public override void visit_field (Valadoc.Api.Field item);
			public override void visit_interface (Valadoc.Api.Interface item);
			public override void visit_method (Valadoc.Api.Method item);
			public override void visit_namespace (Valadoc.Api.Namespace item);
			public override void visit_package (Valadoc.Api.Package item);
			public override void visit_property (Valadoc.Api.Property item);
			public override void visit_signal (Valadoc.Api.Signal item);
			public override void visit_struct (Valadoc.Api.Struct item);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class HtmlRenderer : Valadoc.Content.ContentRenderer {
			protected Valadoc.Documentation? _container;
			protected Valadoc.Documentation? _owner;
			protected Valadoc.Html.CssClassResolver cssresolver;
			protected Valadoc.Html.LinkHelper linker;
			protected Valadoc.Settings settings;
			protected weak Valadoc.Html.MarkupWriter writer;
			public HtmlRenderer (Valadoc.Settings settings, Valadoc.Html.LinkHelper linker, Valadoc.Html.CssClassResolver cssresolver);
			public override void render (Valadoc.Content.ContentElement element);
			public override void render_children (Valadoc.Content.ContentElement element);
			public void set_container (Valadoc.Documentation? container);
			public void set_owner (Valadoc.Documentation? owner);
			public void set_writer (Valadoc.Html.MarkupWriter writer);
			public override void visit_comment (Valadoc.Content.Comment element);
			public override void visit_embedded (Valadoc.Content.Embedded element);
			public override void visit_headline (Valadoc.Content.Headline element);
			public override void visit_link (Valadoc.Content.Link element);
			public override void visit_list (Valadoc.Content.List element);
			public override void visit_list_item (Valadoc.Content.ListItem element);
			public override void visit_note (Valadoc.Content.Note element);
			public override void visit_page (Valadoc.Content.Page element);
			public override void visit_paragraph (Valadoc.Content.Paragraph element);
			public override void visit_run (Valadoc.Content.Run element);
			public override void visit_source_code (Valadoc.Content.SourceCode element);
			public override void visit_symbol_link (Valadoc.Content.SymbolLink element);
			public override void visit_table (Valadoc.Content.Table element);
			public override void visit_table_cell (Valadoc.Content.TableCell element);
			public override void visit_table_row (Valadoc.Content.TableRow element);
			public override void visit_taglet (Valadoc.Content.Taglet element);
			public override void visit_text (Valadoc.Content.Text element);
			public override void visit_warning (Valadoc.Content.Warning element);
			public override void visit_wiki_link (Valadoc.Content.WikiLink element);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class LinkHelper : GLib.Object {
			protected Valadoc.Settings _settings;
			public LinkHelper ();
			protected virtual string? from_node_to_node (Valadoc.Api.Node from, Valadoc.Api.Node to);
			protected virtual string? from_node_to_package (Valadoc.Api.Node from, Valadoc.Api.Package to);
			protected virtual string? from_node_to_wiki (Valadoc.Api.Node from, Valadoc.WikiPage to);
			protected virtual string? from_package_to_node (Valadoc.Api.Package from, Valadoc.Api.Node to);
			protected virtual string? from_package_to_package (Valadoc.Api.Package from, Valadoc.Api.Package to);
			protected virtual string? from_package_to_wiki (Valadoc.Api.Package from, Valadoc.WikiPage to);
			protected virtual string? from_wiki_to_node (Valadoc.WikiPage from, Valadoc.Api.Node to);
			protected virtual string? from_wiki_to_package (Valadoc.WikiPage from, Valadoc.Api.Package to);
			protected virtual string? from_wiki_to_wiki (Valadoc.WikiPage from, Valadoc.WikiPage to);
			public virtual string? get_package_link (Valadoc.Api.Package package, Valadoc.Settings settings);
			public string? get_relative_link (Valadoc.Documentation from, Valadoc.Documentation to, Valadoc.Settings settings);
			protected string translate_wiki_name (Valadoc.WikiPage page);
			public bool enable_browsable_check { get; set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class MarkupWriter : Valadoc.MarkupWriter {
			public MarkupWriter (GLib.FileStream stream, bool html5_declaration = true);
			public unowned Valadoc.Html.MarkupWriter add_usemap (Valadoc.Charts.Chart chart);
			public MarkupWriter.builder (GLib.StringBuilder builder, bool html5_declaration = true);
			protected override bool content_inline_element (string name);
			public unowned Valadoc.Html.MarkupWriter image (string src, string? caption = null, string? css_class = null);
			protected override bool inline_element (string name);
			public unowned Valadoc.Html.MarkupWriter javascript_link (string url);
			public unowned Valadoc.Html.MarkupWriter link (string url, string label, string? css_class = null);
			public unowned Valadoc.Html.MarkupWriter stylesheet_link (string url);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class SimpleChartFactory : Valadoc.Charts.SimpleFactory {
			public SimpleChartFactory (Valadoc.Settings settings, Valadoc.Html.LinkHelper linker);
			protected override Gvc.Node configure_type (Gvc.Node node, Valadoc.Api.Node item);
			public override Gvc.Graph create_graph (Valadoc.Api.Node item);
		}
	}
	namespace Importer {
		[CCode (cheader_filename = "valadoc.h")]
		public abstract class DocumentationImporter : GLib.Object, Valadoc.ResourceLocator {
			protected Valadoc.ModuleLoader modules;
			protected Valadoc.Settings settings;
			protected Valadoc.Api.Tree tree;
			protected DocumentationImporter (Valadoc.Api.Tree tree, Valadoc.ModuleLoader modules, Valadoc.Settings settings);
			public abstract void process (string filename);
			public virtual string resolve (string path);
			public abstract string file_extension { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class GirDocumentationImporter : Valadoc.Importer.DocumentationImporter {
			public GirDocumentationImporter (Valadoc.Api.Tree tree, Valadoc.DocumentationParser parser, Valadoc.ModuleLoader modules, Valadoc.Settings settings, Valadoc.ErrorReporter reporter);
			public override void process (string source_file);
			public override string file_extension { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class InternalIdRegistrar {
			public InternalIdRegistrar ();
			public Valadoc.Api.Node? map_symbol_id (string id);
			public string? map_url_id (string id);
			public void read_index_sgml_file (string filename, string? index_sgml_online, Valadoc.ErrorReporter reporter);
			public void register_symbol (string id, Valadoc.Api.Node symbol);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class ValadocDocumentationImporter : Valadoc.Importer.DocumentationImporter, Valadoc.ResourceLocator {
			protected Valadoc.Content.ContentFactory factory;
			public ValadocDocumentationImporter (Valadoc.Api.Tree tree, Valadoc.DocumentationParser parser, Valadoc.ModuleLoader modules, Valadoc.Settings settings, Valadoc.ErrorReporter reporter);
			public override void process (string filename);
			public override string file_extension { get; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class ValadocDocumentationScanner : GLib.Object, Valadoc.Scanner {
			public ValadocDocumentationScanner (Valadoc.Settings settings);
			protected void accept (unichar c) throws Valadoc.ParserError;
			public int get_line ();
			public virtual string get_line_content ();
			public virtual int get_line_start_column ();
			protected unichar get_next_char (int offset = 1);
			public virtual void reset ();
			public virtual void stop ();
		}
	}
	namespace ImporterHelper {
	}
	namespace Taglets {
		[CCode (cheader_filename = "valadoc.h")]
		public class Deprecated : Valadoc.Content.BlockContent, Valadoc.Content.Taglet, Valadoc.Content.Block {
			public Deprecated ();
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override bool is_empty ();
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class InheritDoc : Valadoc.Content.InlineTaglet {
			public InheritDoc ();
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override Valadoc.Rule? get_parser_rule (Valadoc.Rule run_rule);
			public override bool is_empty ();
			public override Valadoc.Content.ContentElement produce_content ();
			public Valadoc.Api.Node? inherited { get; private set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Link : Valadoc.Content.InlineTaglet {
			public Link ();
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override Valadoc.Rule? get_parser_rule (Valadoc.Rule run_rule);
			public override bool is_empty ();
			public override Valadoc.Content.ContentElement produce_content ();
			public bool c_accept_plural { get; internal set; }
			public bool c_is_plural { get; private set; }
			public string symbol_name { get; internal set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Param : Valadoc.Content.BlockContent, Valadoc.Content.Taglet, Valadoc.Content.Block {
			public Param ();
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public bool is_c_self_param { get; internal set; }
			public bool is_this { get; private set; }
			public weak Valadoc.Api.Symbol? parameter { get; private set; }
			public string parameter_name { get; internal set; }
			public int position { get; private set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Return : Valadoc.Content.BlockContent, Valadoc.Content.Taglet, Valadoc.Content.Block {
			public Return ();
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class See : Valadoc.Content.ContentElement, Valadoc.Content.Taglet, Valadoc.Content.Block {
			public See ();
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override bool is_empty ();
			public Valadoc.Api.Node symbol { get; private set; }
			public string symbol_name { get; private set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Since : Valadoc.Content.ContentElement, Valadoc.Content.Taglet, Valadoc.Content.Block {
			public Since ();
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public override bool is_empty ();
			public string version { get; internal set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public class Throws : Valadoc.Content.BlockContent, Valadoc.Content.Taglet, Valadoc.Content.Block {
			public Throws ();
			public override void accept (Valadoc.Content.ContentVisitor visitor);
			public override void check (Valadoc.Api.Tree api_root, Valadoc.Api.Node container, string file_path, Valadoc.ErrorReporter reporter, Valadoc.Settings settings);
			public override Valadoc.Content.ContentElement copy (Valadoc.Content.ContentElement? new_parent = null);
			public Valadoc.Api.Node error_domain { get; private set; }
			public string error_domain_name { get; private set; }
		}
		[CCode (cheader_filename = "valadoc.h")]
		public static void init (Valadoc.ModuleLoader loader);
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class CTypeResolver : Valadoc.Api.Visitor {
		public CTypeResolver (Valadoc.Api.Tree tree);
		public Valadoc.Api.Node? resolve_symbol (Valadoc.Api.Node? element, string _name);
		public Valadoc.Api.TypeSymbol? resolve_symbol_type (string name);
		public override void visit_class (Valadoc.Api.Class item);
		public override void visit_constant (Valadoc.Api.Constant item);
		public override void visit_delegate (Valadoc.Api.Delegate item);
		public override void visit_enum (Valadoc.Api.Enum item);
		public override void visit_enum_value (Valadoc.Api.EnumValue item);
		public override void visit_error_code (Valadoc.Api.ErrorCode item);
		public override void visit_error_domain (Valadoc.Api.ErrorDomain item);
		public override void visit_field (Valadoc.Api.Field item);
		public override void visit_interface (Valadoc.Api.Interface item);
		public override void visit_method (Valadoc.Api.Method item);
		public override void visit_namespace (Valadoc.Api.Namespace item);
		public override void visit_package (Valadoc.Api.Package item);
		public override void visit_property (Valadoc.Api.Property item);
		public override void visit_signal (Valadoc.Api.Signal item);
		public override void visit_struct (Valadoc.Api.Struct item);
		public override void visit_tree (Valadoc.Api.Tree item);
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class CommentScanner : Valadoc.WikiScanner {
		public CommentScanner (Valadoc.Settings settings);
		protected override void accept (unichar c) throws Valadoc.ParserError;
		public override int get_line_start_column ();
		public override void reset ();
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class DocumentationParser : GLib.Object, Valadoc.ResourceLocator {
		public DocumentationParser (Valadoc.Settings settings, Valadoc.ErrorReporter reporter, Valadoc.Api.Tree tree, Valadoc.ModuleLoader modules);
		public void check (Valadoc.Api.Node element, Valadoc.Content.Comment comment);
		public void check_wikipage (Valadoc.Api.Package package, Valadoc.WikiPage page);
		public Valadoc.Content.Comment? parse (Valadoc.Api.Node element, Valadoc.Api.SourceComment comment);
		public Valadoc.Content.Comment? parse_comment_str (Valadoc.Api.Node element, string content, string filename, int first_line, int first_column);
		public Valadoc.Content.Page? parse_wikipage (Valadoc.Api.Package pkg, Valadoc.WikiPage page);
		public void transform_inheritdoc (Valadoc.Api.Node taglet_owner, Valadoc.Taglets.InheritDoc taglet);
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class ErrorReporter : GLib.Object {
		public ErrorReporter (Valadoc.Settings? settings = null);
		[PrintfFormat]
		public void error (string file, long line, long startpos, long endpos, string errline, string msg_format, ...);
		public bool set_colors (string str);
		[PrintfFormat]
		public void simple_error (string? location, string msg_format, ...);
		[PrintfFormat]
		public void simple_note (string? location, string msg_format, ...);
		[PrintfFormat]
		public void simple_warning (string? location, string msg_format, ...);
		[PrintfFormat]
		public void warning (string file, long line, long startpos, long endpos, string errline, string msg_format, ...);
		public int errors { get; }
		public int errors_offset { get; set; }
		public Valadoc.Settings? settings { get; set; }
		public weak GLib.FileStream stream { get; set; }
		public int warnings { get; }
		public int warnings_offset { get; set; }
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class GirMetaData : GLib.Object {
		public GirMetaData (string gir_file_path, string[] metadata_dirs, Valadoc.ErrorReporter reporter);
		public string get_resource_path (string resource);
		public string index_sgml { get; private set; }
		public string index_sgml_online { get; private set; }
		public bool is_docbook { get; private set; }
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class GtkDocMarkupWriter : Valadoc.MarkupWriter {
		public GtkDocMarkupWriter ();
		protected override bool content_inline_element (string name);
		protected override bool inline_element (string name);
		public void reset ();
		public weak string content { get; }
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class GtkdocRenderer : Valadoc.Content.ContentRenderer {
		protected Valadoc.Settings settings;
		public GtkdocRenderer ();
		public void append_exceptions (Vala.List<Valadoc.Content.Taglet> taglets);
		public void append_see (Vala.List<Valadoc.Content.Taglet> taglets);
		public void append_since (Vala.List<Valadoc.Content.Taglet> taglets);
		public override void render (Valadoc.Content.ContentElement element);
		public override void render_children (Valadoc.Content.ContentElement element);
		public void render_symbol (Valadoc.Content.Comment? documentation);
		public override void visit_comment (Valadoc.Content.Comment element);
		public override void visit_embedded (Valadoc.Content.Embedded element);
		public override void visit_headline (Valadoc.Content.Headline element);
		public override void visit_link (Valadoc.Content.Link element);
		public override void visit_list (Valadoc.Content.List element);
		public override void visit_list_item (Valadoc.Content.ListItem element);
		public override void visit_note (Valadoc.Content.Note element);
		public override void visit_page (Valadoc.Content.Page element);
		public override void visit_paragraph (Valadoc.Content.Paragraph element);
		public override void visit_run (Valadoc.Content.Run element);
		public override void visit_source_code (Valadoc.Content.SourceCode element);
		public override void visit_symbol_link (Valadoc.Content.SymbolLink element);
		public override void visit_table (Valadoc.Content.Table element);
		public override void visit_table_cell (Valadoc.Content.TableCell element);
		public override void visit_table_row (Valadoc.Content.TableRow element);
		public override void visit_text (Valadoc.Content.Text element);
		public override void visit_warning (Valadoc.Content.Warning element);
		public override void visit_wiki_link (Valadoc.Content.WikiLink element);
		public void write_docbook_link (Valadoc.Api.Item item);
		public void write_symbol_link (Valadoc.Content.SymbolLink element);
		public weak string content { get; }
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class MarkupWriter {
		public delegate void WriteFunc (string text);
		protected long current_column;
		protected int indent;
		protected bool last_was_tag;
		protected Valadoc.MarkupWriter.WriteFunc write;
		public MarkupWriter (owned Valadoc.MarkupWriter.WriteFunc write, bool xml_declaration = true);
		protected virtual bool content_inline_element (string name);
		protected void do_write (string text);
		public unowned Valadoc.MarkupWriter end_tag (string name);
		public static string escape (string txt);
		protected virtual bool inline_element (string name);
		public unowned Valadoc.MarkupWriter raw_text (string text);
		public void set_wrap (bool wrap);
		public unowned Valadoc.MarkupWriter simple_tag (string name, string[]? attributes = null);
		public unowned Valadoc.MarkupWriter start_tag (string name, string[]? attributes = null);
		public unowned Valadoc.MarkupWriter text (string text);
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class ModuleLoader : GLib.Object {
		public Valadoc.Doclet? create_doclet (string _path);
		public Valadoc.Content.Taglet? create_taglet (string keyword);
		public static string get_doclet_path (string? docletpath, Valadoc.ErrorReporter reporter);
		public static Valadoc.ModuleLoader get_instance ();
		public static bool is_doclet (string path);
		public void register_taglet (string keyword, GLib.Type type);
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class Parser : Valadoc.ParserCallback {
		public Parser (Valadoc.Settings settings, Valadoc.Scanner scanner, Valadoc.ErrorReporter reporter);
		public void accept_token (Valadoc.Token token) throws Valadoc.ParserError;
		public void parse (string content, string filename, int first_line, int first_column) throws Valadoc.ParserError;
		public void set_root_rule (Valadoc.Rule root_rule);
	}
	[CCode (cheader_filename = "valadoc.h")]
	public abstract class Rule : GLib.Object {
		public enum Forward {
			NONE,
			PARENT,
			CHILD
		}
		public delegate void Action () throws Valadoc.ParserError;
		protected Rule ();
		public abstract bool accept_token (Valadoc.Token token, Valadoc.ParserCallback parser, Valadoc.Rule.Forward forward) throws Valadoc.ParserError;
		protected void do_reduce (Valadoc.ParserCallback parser) throws Valadoc.ParserError;
		protected void do_skip (Valadoc.ParserCallback parser) throws Valadoc.ParserError;
		protected void do_start (Valadoc.ParserCallback parser) throws Valadoc.ParserError;
		protected bool has_start_token (GLib.Object? scheme_element, Valadoc.Token token);
		public abstract bool is_optional ();
		protected bool is_optional_rule (GLib.Object? scheme_element);
		public static Valadoc.Rule many (GLib.Object[] scheme);
		public static Valadoc.Rule one_of (GLib.Object[] scheme);
		public static Valadoc.Rule option (GLib.Object[] scheme);
		public static Valadoc.Rule seq (GLib.Object[] scheme);
		public Valadoc.Rule set_name (string name);
		public Valadoc.Rule set_reduce (Valadoc.Rule.Action action);
		public Valadoc.Rule set_skip (Valadoc.Rule.Action action);
		public Valadoc.Rule set_start (Valadoc.Rule.Action action);
		public abstract bool starts_with_token (Valadoc.Token token);
		public abstract string to_string (GLib.Object? state);
		protected bool try_to_apply (GLib.Object? scheme_element, Valadoc.Token token, Valadoc.ParserCallback parser, out bool handled) throws Valadoc.ParserError;
		public abstract bool would_accept_token (Valadoc.Token token, GLib.Object? state);
		public abstract bool would_reduce (Valadoc.Token token, GLib.Object? state);
		public string name { get; }
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class Settings : GLib.Object {
		public bool _internal;
		public bool _private;
		public bool _protected;
		public bool add_inherited;
		public string[] alternative_resource_dirs;
		public string? basedir;
		public string[] defines;
		public string? directory;
		public bool experimental;
		public bool experimental_non_null;
		public string[] gir_directories;
		public string? gir_directory;
		public string? gir_name;
		public string gir_namespace;
		public string gir_version;
		public string[] metadata_directories;
		public string[] packages;
		public string path;
		public string pkg_name;
		public string pkg_version;
		public string[] pluginargs;
		public Vala.Profile profile;
		public string[] source_files;
		public string target_glib;
		public bool use_svg_images;
		public string[] vapi_directories;
		public bool verbose;
		public string wiki_directory;
		public bool with_deps;
		public Settings ();
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class StubRule : Valadoc.Rule {
		public StubRule ();
		public override bool accept_token (Valadoc.Token token, Valadoc.ParserCallback parser, Valadoc.Rule.Forward forward) throws Valadoc.ParserError;
		public override bool is_optional ();
		public Valadoc.Rule set_rule (Valadoc.Rule rule);
		public override bool starts_with_token (Valadoc.Token token);
		public override string to_string (GLib.Object? state);
		public override bool would_accept_token (Valadoc.Token token, GLib.Object? state);
		public override bool would_reduce (Valadoc.Token token, GLib.Object? state);
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class Token : GLib.Object {
		public Token ();
		public Token.from_type (Valadoc.TokenType type, Vala.SourceLocation begin, Vala.SourceLocation end, string? val = null);
		public Token.from_word (string word, Vala.SourceLocation begin, Vala.SourceLocation end);
		public int to_int ();
		public unowned string to_pretty_string ();
		public unowned string to_string ();
		public Vala.SourceLocation begin { get; }
		public Vala.SourceLocation end { get; }
		public bool is_number { get; }
		public bool is_word { get; }
		public Valadoc.TokenType? token_type { get; }
		public string? value { get; }
		public string? word { get; }
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class TokenType : GLib.Object {
		public delegate void Action (Valadoc.Token token) throws Valadoc.ParserError;
		public static Valadoc.TokenType ALIGN_BOTTOM;
		public static Valadoc.TokenType ALIGN_CENTER;
		public static Valadoc.TokenType ALIGN_RIGHT;
		public static Valadoc.TokenType ALIGN_TOP;
		public static Valadoc.TokenType ANY;
		public static Valadoc.TokenType ANY_NUMBER;
		public static Valadoc.TokenType ANY_WORD;
		public static Valadoc.TokenType AROBASE;
		public static Valadoc.TokenType BACK_QUOTE_2;
		public static Valadoc.TokenType BREAK;
		public static Valadoc.TokenType CLOSED_BRACE;
		public static Valadoc.TokenType DOUBLE_CLOSED_BRACE;
		public static Valadoc.TokenType DOUBLE_CLOSED_BRACKET;
		public static Valadoc.TokenType DOUBLE_OPEN_BRACE;
		public static Valadoc.TokenType DOUBLE_OPEN_BRACKET;
		public static Valadoc.TokenType DOUBLE_PIPE;
		public static Valadoc.TokenType EOF;
		public static Valadoc.TokenType EOL;
		public static Valadoc.TokenType EQUAL_1;
		public static Valadoc.TokenType EQUAL_2;
		public static Valadoc.TokenType EQUAL_3;
		public static Valadoc.TokenType EQUAL_4;
		public static Valadoc.TokenType EQUAL_5;
		public static Valadoc.TokenType GREATER_THAN;
		public static Valadoc.TokenType LESS_THAN;
		public static Valadoc.TokenType MARKDOWN_ANY_WORD;
		public static Valadoc.TokenType MARKDOWN_BLOCK_END;
		public static Valadoc.TokenType MARKDOWN_BLOCK_START;
		public static Valadoc.TokenType MARKDOWN_CLOSE_BRACKET;
		public static Valadoc.TokenType MARKDOWN_CLOSE_PARENS;
		public static Valadoc.TokenType MARKDOWN_CONSTANT;
		public static Valadoc.TokenType MARKDOWN_EOC;
		public static Valadoc.TokenType MARKDOWN_EXCLAMATION_MARK;
		public static Valadoc.TokenType MARKDOWN_FUNCTION;
		public static Valadoc.TokenType MARKDOWN_GREATER_THAN;
		public static Valadoc.TokenType MARKDOWN_HEADLINE_1;
		public static Valadoc.TokenType MARKDOWN_HEADLINE_2;
		public static Valadoc.TokenType MARKDOWN_HEADLINE_END;
		public static Valadoc.TokenType MARKDOWN_HEADLINE_HASH;
		public static Valadoc.TokenType MARKDOWN_LESS_THAN;
		public static Valadoc.TokenType MARKDOWN_LINK;
		public static Valadoc.TokenType MARKDOWN_LOCAL_GMEMBER;
		public static Valadoc.TokenType MARKDOWN_MAIL;
		public static Valadoc.TokenType MARKDOWN_OPEN_BRACKET;
		public static Valadoc.TokenType MARKDOWN_OPEN_PARENS;
		public static Valadoc.TokenType MARKDOWN_ORDERED_LIST_ITEM_END;
		public static Valadoc.TokenType MARKDOWN_ORDERED_LIST_ITEM_START;
		public static Valadoc.TokenType MARKDOWN_PARAGRAPH;
		public static Valadoc.TokenType MARKDOWN_PARAMETER;
		public static Valadoc.TokenType MARKDOWN_SOURCE;
		public static Valadoc.TokenType MARKDOWN_SPACE;
		public static Valadoc.TokenType MARKDOWN_SYMBOL;
		public static Valadoc.TokenType MARKDOWN_UNORDERED_LIST_ITEM_END;
		public static Valadoc.TokenType MARKDOWN_UNORDERED_LIST_ITEM_START;
		public static Valadoc.TokenType MINUS;
		public static Valadoc.TokenType OPEN_BRACE;
		public static Valadoc.TokenType PIPE;
		public static Valadoc.TokenType SINGLE_QUOTE_2;
		public static Valadoc.TokenType SLASH_2;
		public static Valadoc.TokenType SPACE;
		public static Valadoc.TokenType TAB;
		public static Valadoc.TokenType TRIPLE_CLOSED_BRACE;
		public static Valadoc.TokenType TRIPLE_OPEN_BRACE;
		public static Valadoc.TokenType UNDERSCORE_2;
		public static Valadoc.TokenType VALADOC_ANY_WORD;
		public static Valadoc.TokenType VALADOC_COMMENT_END;
		public static Valadoc.TokenType VALADOC_COMMENT_START;
		public static Valadoc.TokenType VALADOC_EOL;
		public static Valadoc.TokenType VALADOC_SPACE;
		public static Valadoc.TokenType VALADOC_TAB;
		public Valadoc.TokenType action (Valadoc.TokenType.Action action);
		public static Valadoc.TokenType any ();
		public static Valadoc.TokenType any_number ();
		public static Valadoc.TokenType any_word ();
		public void do_action (Valadoc.Token matched_token) throws Valadoc.ParserError;
		public bool matches (Valadoc.Token token);
		public static Valadoc.TokenType str (string str);
		public unowned string to_pretty_string ();
		public unowned string to_string ();
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class WikiPage : GLib.Object, Valadoc.Documentation {
		public WikiPage (string name, string path, Valadoc.Api.Package package);
		public void parse (Valadoc.DocumentationParser docparser, Valadoc.Api.Package pkg);
		public void read (Valadoc.ErrorReporter reporter);
		public Valadoc.Content.Page documentation { get; protected set; }
		public string documentation_str { get; private set; }
		public string name { get; private set; }
		public string path { get; private set; }
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class WikiPageTree : GLib.Object {
		public WikiPageTree ();
		public void check (Valadoc.Settings settings, Valadoc.DocumentationParser docparser, Valadoc.Api.Package pkg);
		public Vala.Collection<Valadoc.WikiPage> get_pages ();
		public void parse (Valadoc.Settings settings, Valadoc.DocumentationParser docparser, Valadoc.Api.Package package, Valadoc.ErrorReporter reporter);
		public Valadoc.WikiPage? search (string name);
	}
	[CCode (cheader_filename = "valadoc.h")]
	public class WikiScanner : GLib.Object, Valadoc.Scanner {
		public WikiScanner (Valadoc.Settings settings);
		protected virtual void accept (unichar c) throws Valadoc.ParserError;
		public int get_line ();
		public virtual string get_line_content ();
		public virtual int get_line_start_column ();
		protected unichar get_next_char (int offset = 1);
		public virtual void reset ();
		public void set_code_escape_mode (bool escape_mode);
		public void set_url_escape_mode (bool escape_mode);
		public virtual void stop ();
	}
	[CCode (cheader_filename = "valadoc.h")]
	public interface Doclet : GLib.Object {
		public abstract void process (Valadoc.Settings settings, Valadoc.Api.Tree tree, Valadoc.ErrorReporter reporter);
	}
	[CCode (cheader_filename = "valadoc.h")]
	public interface Documentation : GLib.Object {
		public abstract string? get_filename ();
		public abstract Valadoc.Api.Package? package { get; }
	}
	[CCode (cheader_filename = "valadoc.h")]
	public interface ParserCallback {
		public abstract void error (Valadoc.Token? token, string message) throws Valadoc.ParserError;
		public abstract GLib.Object? get_rule_state ();
		public abstract void push_rule (Valadoc.Rule rule);
		public abstract void reduce ();
		public abstract void set_rule_state (GLib.Object state);
		public abstract void warning (Valadoc.Token? token, string message);
		public abstract bool would_parent_accept_token (Valadoc.Token token);
		public abstract bool would_parent_reduce_to_rule (Valadoc.Token token, Valadoc.Rule rule);
	}
	[CCode (cheader_filename = "valadoc.h")]
	public interface ResourceLocator : GLib.Object {
		public abstract string resolve (string path);
	}
	[CCode (cheader_filename = "valadoc.h")]
	public interface Scanner : GLib.Object {
		public abstract void end () throws Valadoc.ParserError;
		public abstract string get_line_content ();
		public abstract void reset ();
		public abstract void scan (string content) throws Valadoc.ParserError;
		public abstract void set_parser (Valadoc.Parser parser);
		public abstract void stop ();
	}
	[CCode (cheader_filename = "valadoc.h")]
	public errordomain ParserError {
		INTERNAL_ERROR,
		UNEXPECTED_TOKEN
	}
	[CCode (cheader_filename = "valadoc.h", has_target = false)]
	public delegate GLib.Type DocletRegisterFunction (Valadoc.ModuleLoader module_loader);
	[CCode (cheader_filename = "valadoc.h", has_target = false)]
	public delegate void TagletRegisterFunction (Valadoc.ModuleLoader loader);
	[CCode (cheader_filename = "valadoc.h")]
	public static bool copy_directory (string src, string dest);
	[CCode (cheader_filename = "valadoc.h")]
	public static bool copy_file (string src, string dest);
	[CCode (cheader_filename = "valadoc.h")]
	public static bool remove_directory (string rpath);
}
