15 lines
584 B
TypeScript
15 lines
584 B
TypeScript
import { IUsersRepository } from "../../repositories/users.repository"
|
|
import { IInstrumentationService } from "../../services/instrumentation.service.interface"
|
|
|
|
export type IDeleteUserUseCase = ReturnType<typeof deleteUserUseCase>
|
|
|
|
const deleteUserUseCase = (
|
|
instrumentationService: IInstrumentationService,
|
|
usersRepository: IUsersRepository
|
|
) => async (id: string): Promise<void> => {
|
|
return await instrumentationService.startSpan({ name: "deleteUser Use Case", op: "function" },
|
|
async () => {
|
|
await usersRepository.deleteUser(id)
|
|
}
|
|
)
|
|
} |