@becomes/cms-cloud-client
Version:
SDK for accessing BCMS Cloud API
15 lines (14 loc) • 775 B
TypeScript
import type { FSDBRepository } from '@becomes/purple-cheetah-mod-fsdb/types';
import type { MongoDBRepository } from '@becomes/purple-cheetah-mod-mongodb/types';
import type { Module } from '@becomes/purple-cheetah/types';
import { User } from './models';
export interface UserRepoMethods {
findAllByOrgId(orgId: string): Promise<User[]>;
findByIdAndOrgId(id: string, orgId: string): Promise<User | null>;
findByEmail(email: string): Promise<User | null>;
findByOauthId(oauthId: string): Promise<User | null>;
findOrgOwner(orgId: string): Promise<User | null>;
findAllAdmin(): Promise<User[]>;
}
export type UserRepo = MongoDBRepository<User, UserRepoMethods> | FSDBRepository<User, UserRepoMethods>;
export declare function createUserRepo(): Module;