17 lines
511 B
TypeScript
17 lines
511 B
TypeScript
/**
|
|
* Repository Interface: ISponsorRepository
|
|
*
|
|
* Defines operations for Sponsor aggregate persistence
|
|
*/
|
|
|
|
import type { Sponsor } from '../entities/Sponsor';
|
|
|
|
export interface ISponsorRepository {
|
|
findById(id: string): Promise<Sponsor | null>;
|
|
findAll(): Promise<Sponsor[]>;
|
|
findByEmail(email: string): Promise<Sponsor | null>;
|
|
create(sponsor: Sponsor): Promise<Sponsor>;
|
|
update(sponsor: Sponsor): Promise<Sponsor>;
|
|
delete(id: string): Promise<void>;
|
|
exists(id: string): Promise<boolean>;
|
|
} |