import { Injectable } from '@angular/core'; import { z } from "zod"; import { ValidateSchema } from 'src/app/services/decorators/validate-schema.decorator'; import { RoomRemoteDataSourceService } from '../../data/repository/room-remote-repository.service'; // Define the schema for the entire response const MemberSetAdminDTOSchema = z.object({ roomId: z.string(), memberId: z.string() }); export type MemberSetAdminDTO = z.infer @Injectable({ providedIn: 'root' }) export class MemberAdminUseCaseService { constructor( public repository: RoomRemoteDataSourceService ) { } @ValidateSchema(MemberSetAdminDTOSchema) execute(input: MemberSetAdminDTO) { return this.repository.setAmin(input) } }