I've been trying to make my custom widget reusable but kept on hitting dead ends... I want to be able to use change the colors of the icons, text within the card, the first card, and the enclosed card... Also, I should be able to change the icons, text that is within the icon and also the on tap function for each of the buttons should be able to do something different whenever it's tapped

```dart
   class _CustomCardState extends State<CustomCard> {
      @override
      Widget build(BuildContext context) {
        return Card(
          margin: EdgeInsets.fromLTRB(20, 10, 20, 1),
          color: Colors.red,
          child: InkWell(
            onTap: (){},
            child: ListTile(
              leading: Card(
                color: Colors.white,
                margin: EdgeInsets.all(5),
                child: Padding(
                  padding: EdgeInsets.all(8.0),
                  child: Icon(
                    KycIcons.add_a_photo,
                    size: 20,
                    color: Colors.red,
                  ),
                ),
              ),
              title: Text('Uplaod your selfie',
                  style: TextStyle(color: Colors.white, fontSize: 16)),
            ),
          ),
        );
      }
    }`

```