     //--------------------------------------------------------------------------
 
     /**
-     * @private
-     */
+     *  @private
+     *  Gets the list of style declarations for the given subject. The subject
+     *  is the right most simple type selector in a potential selector chain.
+     * 
+     *  @param subject The style subject.
+     *  @return Array of StyleDeclarations for this subject.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     */ 
     function getStyleDeclarations(subject:String):Array;
 
-    /**
-     * @private
-     */
+    /** 
+     * Gets a CSSStyleDeclaration object that stores the rules 
+     * for the specified CSS selector. The CSSStyleDeclaration object is 
+     * created by merging the properties of the specified CSS selector in
+     * this style manager with the properties of any parent style managers.
+     * 
+     * <p>If the <code>selector</code> parameter starts with a period (.), 
+     * the returned CSSStyleDeclaration is a class selector and applies only to those instances 
+     * whose <code>styleName</code> property specifies that selector 
+     * (not including the period). 
+     * For example, the class selector <code>".bigMargins"</code> 
+     * applies to any UIComponent whose <code>styleName</code> 
+     * is <code>"bigMargins"</code>.</p> 
+     * 
+     * <p>If the <code>selector</code> parameter does not start with a period, 
+     * the returned CSSStyleDeclaration is a type selector and applies to all instances 
+     * of that type. 
+     * For example, the type selector <code>"Button"</code> 
+     * applies to all instances of Button and its subclasses.</p> 
+     * 
+     * <p>The <code>global</code> selector is similar to a type selector 
+     * and does not start with a period.</p> 
+     * 
+     * @param selector The name of the CSS selector. 
+     * 
+     * @return The style declaration whose name matches the <code>selector</code> property. 
+     *  
+     * @langversion 3.0 
+     * @playerversion Flash 10 
+     * @playerversion AIR 1.5 
+     * @productversion Flex 4 
+     */     
     function getMergedStyleDeclaration(selector:String):CSSStyleDeclaration;    
 
     /**
-     * @private
+     *  @private 
+     *  Determines whether any of the selectors declared a pseudo selector
+     *  for the given state. This is used to avoid unnecessary style
+     *  regeneration between state changes.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */ 
     function hasPseudoCondition(value:String):Boolean;
 
     /**
-     * @private
+     *  @private
+     *  Determines whether any of the selectors registered with the style
+     *  manager have been advanced selectors (descendant selector, id selector,
+     *  non-global class selector, or pseudo selector).
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */ 
     function hasAdvancedSelectors():Boolean;
 

    //--------------------------------------------------------------------------

    /**
     *  @private
     *   
     *  The style manager that is the parent of this StyleManager.
     *  
     *  @return the parent StyleManager or null if this is the top-level StyleManager.

	//  selectors
    //----------------------------------
	
    /**
     *  Returns an Array of all the CSS selectors that are registered with the StyleManager.
     *  You can pass items in this Array to the <code>getStyleDeclaration()</code> method to get the corresponding CSSStyleDeclaration object.
     *  Class selectors are prepended with a period.
     *  
     *  @return An Array of all of the selectors
     *  
     *  @langversion 3.0
     *  @playerversion Flash 9
     *  @playerversion AIR 1.1
     *  @productversion Flex 3
     */ 
	function get selectors():Array;

    //----------------------------------
    //  typeHierarchyCache
    //----------------------------------

    /**
     *  @private
     */
    function get typeHierarchyCache():Object;

    /**
     *  @private
     */
    function set typeHierarchyCache(value:Object):void;

    //--------------------------------------------------------------------------
