import { IUser , IUserWithGroups , IUserWithRoles , UserType , } from "../entities/User" ; export default interface IUsersStorage { findOne ( id ) : Promise < IUser | null > ; findOneWithGroups ( id ) : Promise < IUserWithGroups | null > ; findOneWithRolesByIdpAndIdpId ( idp , idpId ) : Promise < IUserWithRoles | null > ; findMany ( ) : Promise < IUser [ ] > ; oneExistsWithIdpAndIdpId ( idp , idpId ) : Promise < boolean > ; anyExistsWithGroup ( groupId ) : Promise < boolean > ; createOne ( user ) : Promise < IUser > ; updateOne ( id , patch ) : Promise < IUser > ; deleteOne ( id ) : Promise < void > ; }