         return style?.styleString(text: attributedString, range: range, defaultParagraphStyle: defaultParagraphStyle) ?? attributedString
     }
     
+    /**
+        Applies style to string
+     
+        - parameter withStyle: Style to apply
+        - parameter string: String to apply style to
+        - parameter range: Range in string to apply style, nil - apply to whole string (default nil)
+        - parameter defaultParagraphStyle: Paragraph style to apply before applying style (mainly for internal purposes) (default nil)
+     
+        - returns: Styled attributed string
+    */
     public class func string(withStyle style: SKStyle?,
                              string: String?,
                              range: NSRange? = nil,

        return result.count > 0 ? result : nil
    }
    
    // MARK: - Style methods
    public class func style(withName name: String?) -> SKStyle? {
        guard let name = name else { return nil }
 


public extension StyleKit {
    
    // MARK: - Initialization -
    
    /**
        Initializes style kit with default configuration
    */
    public class func initStyleKit() {
        initStyleKit(withConfiguration: StyleKitConfiguration.defaultConfiguration())
    }
    
    /**
        Initializes style kit with given configuration
     
        - parameter withConfiguration: Configuration to initialize style kit with
    */
    public class func initStyleKit(withConfiguration configuration: StyleKitConfiguration) {
        sharedInstance = StyleKit(withConfiguration: configuration)
    }
    
    /**
        Flag to check style kit current state
    */
    public class func isInitialized() -> Bool {
        return sharedInstance != nil
    }
    
    /**
        Method to get all available styles

        - returns: All available styles
    */
    public class func allStyles() -> [SKStyle]? {
        guard let styles = sharedInstance?.styles else { return nil }
        
