header_dict = {
    'productname': ['description', 'productdescription', 'articledescription', 'descriptionofgood', 'itemdescription', 
                    'brandmodel', 'itemdepartment', 'departmentbrand', 'department', 'certificateno',
                    'product', 'modelname', 'paticulars', 'device', 'items', 'itemno'],
    'modelnumber': ['serialno', 'serial', 'articles', 'simimeiserial', 'article', 'articlenumber', 'articleidmaterialcode', 
                    'itemcode', 'code', 'mcode', 'productcode', 'model', 'product', 'imeiccid', 'transaction'],
    'qty': ['quantity', 'invoicequantity']
}

key_dict = {
    'purchase_date': ['date', 'purchasedate', 'datetime', 'orderdate', 'orderdatetime', 'invoicedate', 'dateredeemed', 'issuedate', 'billingdocdate'],
    'retailername': ['retailer', 'retailername', 'ownedoperatedby'],
    'serial_number': ['serialnumber', 'serialno'],
    'imei_number': ['imeiesim', 'imeislot1', 'imeislot2', 'imei', 'imei1', 'imei2']
}

extra_dict = {
    'serial_number': ['sn'],
    'imei_number': ['imel', 'imed'],
    'modelnumber': ['sku', 'sn', 'imei'],
    'qty': ['qty'] 
}

def get_dict(type: str):
    if type == "key":
        return key_dict
    elif type == "header":
        return header_dict
    elif type == "extra":
        return extra_dict
    else:
        raise ValueError(f'[ERROR] Dictionary type of {type} is not supported')