export interface IUserTagRepository {
  findTagsByUserId(userId: string): Promise<string[]>;
  findUserIdsByTag(tag: string): Promise<string[]>;
  addTag(userId: string, tag: string): Promise<void>;
  removeTags(userId: string, tags: string[]): Promise<void>;
  syncTags(userId: string, tags: string[]): Promise<void>;
  getAllTags(): Promise<Array<{ tag: string; count: number }>>;
}

export const USER_TAG_REPOSITORY = Symbol('IUserTagRepository');
