16 lines
568 B
TypeScript
16 lines
568 B
TypeScript
/**
|
|
* Repository Interface: ISponsorAccountRepository
|
|
*
|
|
* Defines persistence operations for SponsorAccount entities.
|
|
*/
|
|
|
|
import type { SponsorAccount } from '../entities/SponsorAccount';
|
|
import type { UserId } from '../value-objects/UserId';
|
|
|
|
export interface ISponsorAccountRepository {
|
|
save(account: SponsorAccount): Promise<void>;
|
|
findById(id: UserId): Promise<SponsorAccount | null>;
|
|
findBySponsorId(sponsorId: string): Promise<SponsorAccount | null>;
|
|
findByEmail(email: string): Promise<SponsorAccount | null>;
|
|
delete(id: UserId): Promise<void>;
|
|
} |