Question: In Java when you are defining an enum, you can do something similar to the following, i.e. add members to an `enum`. Is this possible in Dart?

```dart
enum Foo {
  one(1), two(2);
  final num value;
  Foo(this.value);
}

```

Answer: 
Dart enums are used only for the simplest cases. If you need more powerful or more flexible enums, use classes with static const fields like shown in <https://stackoverflow.com/a/15854550/217408>

This way you can add whatever you need.
I did this (inspired form the accepted answer by @vovahost)

```dart
enum CodeVerifyFlow {
  SignUp, Recovery, Settings
}

extension CatExtension on CodeVerifyFlow {
  String get name {
    return ["sign_up", "recovery", "settings"][index];
  }
}

// use it like
CodeVerifyFlow.SignUp.name

```

thank me later!