public string Expand()
        {
            var shouldGeneratePropertyBody = (bool)_member.UserData["GeneratePropertyBody"];

            if (!shouldGeneratePropertyBody)
            {
                return(string.Empty);
            }

            var shouldGenerateAccessModifier = (bool)_member.UserData["GenerateAccessModifier"];
            var accessModifier = shouldGenerateAccessModifier ? _member.GetAccessModifier() : string.Empty;
            var name           = _member.Name;
            var type           = _typescriptTypeMapper.GetTypeOutput(_member.Type);
            var parameters     = string.Empty;
            var parametersAndSetterValueExpression = $"value: {type}";

            if (_member.Parameters != null && _member.Parameters.Count > 0)
            {
                parameters = _member.Parameters.GetParametersFromExpressions(_expressionFactory, _options);
                parametersAndSetterValueExpression = $"{parametersAndSetterValueExpression}, {parametersAndSetterValueExpression}";
            }

            var getterMethod = string.Empty;

            if (_member.HasGet)
            {
                var getStatements = _member.GetStatements.GetStatementsFromCollection(_statementFactory, _options);
                getterMethod = $"{accessModifier} get{name}({parameters}): {type}{{{getStatements}{Environment.NewLine}}}";
            }

            var setterMethod = string.Empty;

            if (_member.HasSet)
            {
                var setStatements = _member.SetStatements.GetStatementsFromCollection(_statementFactory, _options);
                setterMethod = $"{accessModifier} set{name}({parametersAndSetterValueExpression}): void{{{setStatements}{Environment.NewLine}}}";
            }

            return($"{getterMethod}{Environment.NewLine}{setterMethod}");
        }