import { Wallet } from '../entities/wallet.entity';

export interface IWalletRepository {
  findByUserId(userId: string): Promise<Wallet | null>;
  create(userId: string, currency?: string): Promise<Wallet>;
  save(wallet: Wallet): Promise<Wallet>;
  findByUserIdWithLock(userId: string): Promise<Wallet | null>;
}

export const WALLET_REPOSITORY = Symbol('IWalletRepository');
