public virtual ComponentGeneratorOutput GenerateComponentClass(string selector, ElementSelectorData[] elements)
        {
            string className = SelectorUtils.GetClassOrPropNameFromSelector(selector);

            if (InheritFromBaseClass)
            {
                _classBuilder.AddInheritance(Consts.DRIVER_CONTAINER_CLASS_NAME);
            }
            string body = _classBuilder
                          .AddUsings(GetUsings(elements))
                          .AddCtor(CreateCtor(className))
                          .SetClassName(className)
                          .SetNamesapce(NamespaceName)
                          .AddUsings(GetUsings(elements))
                          .AddProperties(GetProperties(elements))
                          .AddMethods(GetHelpers(className, elements))
                          .AddFields(GetFields())
                          .Build();

            return(new ComponentGeneratorOutput
            {
                Body = body,
                CsFilePath = NamespaceFileConverter.ConvertNamespaceToFilePath(NamespaceName, className)
            });
        }