 }
 
 /// Class for generation QR code
-struct CNLQRCodeGenerator {
+public struct CNLQRCodeGenerator {
     
     ///  Generates UIImage with QR code of the string with specified size and correction level
     ///

    ///   - size: Width and height of generated image
    ///   - correctionLevel: Amount of excess information
    /// - Returns: UIImage with QR code
    static func generate(forString qrString: String, withSize size: CGFloat = 200.0, correctionLevel: CNLQRCodeCorrectionLevel = .percent25) -> UIImage? {
        if let stringData = qrString.data(using: String.Encoding.utf8), let qrFilter = CIFilter(name:"CIQRCodeGenerator") {
            qrFilter.setValue(stringData, forKey: "inputMessage")
            qrFilter.setValue(correctionLevel.rawValue, forKey: "inputCorrectionLevel")

import UIKit

/// Amount of excess information
public enum CNLQRCodeCorrectionLevel: String {
    case percent7 = "L"
    case percent15 = "M"
    case percent25 = "Q"
