hunk.code_window:   getFirstAssetForAlbumId(albumId: string): Promise<AssetEntity | null>;
     deleteAll(ownerId: string): Promise<void>;
     getAll(options?: AssetSearchOptions): Promise<AssetEntity[]>;
     save(asset: Partial<AssetEntity>): Promise<AssetEntity>;
     findLivePhotoMatch(livePhotoCID: string, otherAssetId: string, type: AssetType): Promise<AssetEntity | null>;
   }
hunk.labels: keep keep keep keep replace keep
hunk.after_edit:   findLivePhotoMatch(options: LivePhotoSearchOptions): Promise<AssetEntity | null>;
  
hunk.file_path: server/libs/domain/src/asset/asset.repository.ts
hunk.type: replace
file: import { Column, CreateDateColumn, Entity, ManyToOne, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm';
  import { UserEntity } from './user.entity';
  
  @Entity('api_keys')
  export class APIKeyEntity {
    @PrimaryGeneratedColumn('uuid')
    id!: string;
  
    @Column()
    name!: string;
  
    @Column({ select: false })
    key?: string;
  
    @ManyToOne(() => UserEntity)
    user?: UserEntity;
  
    @Column()
    userId!: string;
  
    @CreateDateColumn({ type: 'timestamptz' })
    createdAt!: string;
  
    @UpdateDateColumn({ type: 'timestamptz' })
    updatedAt!: string;
  }
  