def METHOD_NAME(
    self, df: pd.DataFrame, mapping_dict: dict = {}
) -> pd.DataFrame:
    """
    Function to apply the column mapping defined by user for the output dataframe.
    DataFrame will be cut to selected columns - if any other columns need to be included in the output file,
    please add them to the mapping dictionary with original names.
    Args:
        df (pd.DataFrame): Input dataframe for the column mapping task.
        mapping_dict (dict, optional): Dictionary with original and new column names. Defaults to {}.
    Returns:
        pd.DataFrame: Output DataFrame with mapped columns.
    """
    self.logger.info("Applying user defined mapping for columns...")
    df = df[mapping_dict.keys()]
    df.columns = mapping_dict.values()
    self.logger.info(f"Successfully applied user mapping.")
    return df