sealed class PinState {
  final String pin;
  final String? error;

  const PinState({required this.pin, this.error});
}

// Состояние создания нового ПИН-кода
class PinCreateInProgress extends PinState {
  const PinCreateInProgress({required String pin, String? error})
      : super(pin: pin, error: error);
}

// Состояние ввода существующего ПИН-кода для входа
class PinLoginInProgress extends PinState {
  const PinLoginInProgress({required String pin, String? error})
      : super(pin: pin, error: error);
}

// Технические состояния
class PinLoading extends PinState {
  const PinLoading() : super(pin: '');
}

class PinSuccess extends PinState {
  const PinSuccess() : super(pin: '');
}