feat(ADM-018): completed feature
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
* Ports (driven interfaces). Domain owns them; infrastructure implements them.
|
||||
* All operations are scoped by userId so ownership is enforced in the query.
|
||||
*/
|
||||
import type { Profile, ProfilePatch } from './profile.js';
|
||||
import type { CustomerListOptions, CustomerListResult, CustomerSummary, Profile, ProfilePatch } from './profile.js';
|
||||
import type { Address, AddressPatch, NewAddress } from './address.js';
|
||||
|
||||
export interface ProfileRepository {
|
||||
@@ -10,6 +10,8 @@ export interface ProfileRepository {
|
||||
/** Idempotent upsert; only provided fields change. */
|
||||
upsert(userId: string, patch: ProfilePatch): Promise<Profile>;
|
||||
list(): Promise<Profile[]>;
|
||||
listCustomers(opts: CustomerListOptions): Promise<CustomerListResult>;
|
||||
findCustomerById(userId: string): Promise<CustomerSummary | undefined>;
|
||||
}
|
||||
|
||||
export interface AddressRepository {
|
||||
|
||||
Reference in New Issue
Block a user