import { Observable } from 'rxjs' ; import { Metadata } from 'grpc' ; import { IId , IQuery , ICount } from '../commons/commons.interface' ; import { User , UsersConnection } from '../graphql/typings' ; import { UserDto } from './user.dto' ; interface UpdateUserInput { id : string ; data : UserDto ; } export interface IUsersService { find ( query , metadata ? ) : Observable < UsersConnection > ; findById ( id , metadata ? ) : Observable < User > ; findOne ( query , metadata ? ) : Observable < User > ; count ( query , metadata ? ) : Observable < ICount > ; create ( input , metadata ? ) : Observable < User > ; update ( input ) : Observable < User > ; destroy ( query , metadata ? ) : Observable < ICount > ; }