docstr: Returns the names of all transformed / added columns.
  
  Note that in sklearn the get_feature_names_out function takes the feature_names_in as an argument
  and determines the output feature names using the input. A fit is usually not necessary and if so a
  NotFittedError is raised.
  We just require a fit all the time and return the fitted output columns.
  
  Returns
  -------
  feature_names: np.ndarray
      A numpy array with all feature names transformed or added.
      Note: potentially dropped features (because the feature is constant/invariant) are not included!
docstr_tok: ["Returns","the","names","of","all","transformed","\/","added","columns",".","Note","that","in","sklearn","the","get_feature_names_out","function","takes","the","feature_names_in","as","an","argument","and","determines","the","output","feature","names","using","the","input",".","A","fit","is","usually","not","necessary","and","if","so","a","NotFittedError","is","raised",".","We","just","require","a","fit","all","the","time","and","return","the","fitted","output","columns",".","Returns","--","--","--","-","feature_names",":","np.ndarray","A","numpy","array","with","all","feature","names","transformed","or","added",".","Note",":","potentially","dropped","features","(","because","the","feature","is","constant\/invariant",")","are","not","included","!"]
code: def get_feature_names_out(self, input_features=None) -> np.ndarray:
      """
      Returns the names of all transformed / added columns.
  
      Note that in sklearn the get_feature_names_out function takes the feature_names_in as an argument
      and determines the output feature names using the input. A fit is usually not necessary and if so a
      NotFittedError is raised.
      We just require a fit all the time and return the fitted output columns.
  
      Returns
      -------
      feature_names: np.ndarray
          A numpy array with all feature names transformed or added.
          Note: potentially dropped features (because the feature is constant/invariant) are not included!
  
      """
      out_feats = getattr(self, "feature_names_out_", None)
      if not isinstance(out_feats, list):
          raise NotFittedError(
              "Estimator has to be fitted to return feature names."
          )
      else:
          return np.array(out_feats, dtype=object)
  
imports: from abc import abstractmethod
  from enum import Enum, auto
  import warnings
  import pandas
  import numpy
  import sklearn.base
  from pandas.api.types import is_object_dtype, is_string_dtype, is_numeric_dtype
  from pandas.core.dtypes.dtypes import CategoricalDtype
  from sklearn.base import BaseEstimator, TransformerMixin
  from sklearn.exceptions import NotFittedError
  from typing import Dict, List, Optional, Union
  from scipy.sparse import csr_matrix
  from sklearn.preprocessing import LabelEncoder
label_desc: Use image node_id 8 for calling the BaseEncoder obj's underlying member method code with example usage: obj.get_feature_names_out(input_features) and returns: np