use crate::{ common::domain::failure::failure::IFailure, features::{ {{feature_name}}::application::interactor::i_{{snake_case_feature_name}}_interactor::I{{capitalize_feature_name}}Interactor, {{feature_name}}::domain::repository::i_{{snake_case_feature_name}}_repository::I{{capitalize_feature_name}}Repository, }, }; pub struct {{capitalize_feature_name}}InteractorImpl { repository: Box, } impl {{capitalize_feature_name}}InteractorImpl { pub fn new(repository: Box) -> {{capitalize_feature_name}}InteractorImpl { {{capitalize_feature_name}}InteractorImpl { repository } } } impl I{{capitalize_feature_name}}Interactor for {{capitalize_feature_name}}InteractorImpl { // fn sign_up(&self, entity: CredentialsInfoEntity) -> Result> { // self.repository.sign_up(entity) // } }