//***************************************************
//* This file was generated by tool
//* SharpKit
//***************************************************
using System;
using System.Collections.Generic;
using SharpKit.JavaScript;
namespace SharpKit.TinyMCE.html
{
    /// <summary>
    /// Schema validator class.
    /// </summary>
    [JsType(JsMode.Prototype, Name="tinymce.html.Schema", Export=false)]
    public  partial class Schema
    {
        /// <summary>
        /// Adds custom non HTML elements to the schema.
        /// </summary>
        /// <param name="custom_elements">Comma separated list of custom elements to add.</param>
        public object addCustomElements(string custom_elements){return null;}
        /// <summary>
        /// Parses a valid children string and adds them to the schema structure. The valid children format is for example: "element[child1|child2]".
        /// </summary>
        /// <param name="valid_children">Valid children elements string to parse</param>
        public object addValidChildren(string valid_children){return null;}
        /// <summary>
        /// Parses a valid elements string and adds it to the schema. The valid elements format is for example "element[attr=default|otherattr]".
        /// Existing rules will be replaced with the ones specified, so this extends the schema.
        /// </summary>
        /// <param name="valid_elements">String in the valid elements format to be parsed.</param>
        public object addValidElements(string valid_elements){return null;}
        /// <summary>
        /// Returns a map with boolean attributes.
        /// </summary>
        public object getBoolAttrs(){return null;}
        /// <summary>
        /// Returns an map object of all custom elements.
        /// </summary>
        public object getCustomElements(){return null;}
        /// <summary>
        /// Returns true/false if the specified element is valid or not
        /// according to the schema.
        /// </summary>
        /// <param name="name">Element name to check for.</param>
        public object getElementRule(string name){return null;}
        /// <summary>
        /// Returns a map with elements that should be treated as contents regardless if it has text
        /// content in them or not such as TD, VIDEO or IMG.
        /// </summary>
        public object getNonEmptyElements(){return null;}
        /// <summary>
        /// Returns a map with self closing tags such as <li>.
        /// </summary>
        public object getSelfClosingElements(){return null;}
        /// <summary>
        /// Returns a map with short ended elements such as BR or IMG.
        /// </summary>
        public object getShortEndedElements(){return null;}
        /// <summary>
        /// Returns a map with elements where white space is to be preserved like PRE or SCRIPT.
        /// </summary>
        public object getWhiteSpaceElements(){return null;}
        /// <summary>
        /// Returns true/false if the specified element name and optional attribute is
        /// valid according to the schema.
        /// </summary>
        /// <param name="name">Name of element to check.</param>
        /// <param name="attr">Optional attribute name to check for.</param>
        public bool isValid(string name, string attr){return false;}
        /// <summary>
        /// Returns true/false if the specified element and it's child is valid or not
        /// according to the schema.
        /// </summary>
        /// <param name="name">Element name to check for.</param>
        /// <param name="child">Element child to verify.</param>
        public bool isValidChild(string name, string child){return false;}
        /// <summary>
        /// Constructs a new Schema instance.
        /// </summary>
        /// <param name="settings">Name/value settings object.</param>
        public Schema(object settings){}
        /// <summary>
        /// Parses a valid elements string and sets it to the schema. The valid elements format is for example "element[attr=default|otherattr]".
        /// Existing rules will be replaced with the ones specified, so this extends the schema.
        /// </summary>
        /// <param name="valid_elements">String in the valid elements format to be parsed.</param>
        public object setValidElements(string valid_elements){return null;}
    }
}
