import { Updateable } from 'kysely'; import { StackEntity } from 'src/entities/stack.entity'; export const IStackRepository = 'IStackRepository'; export interface StackSearch { ownerId: string; primaryAssetId?: string; } export interface IStackRepository { search(query: StackSearch): Promise; create(stack: { ownerId: string; assetIds: string[] }): Promise; update(id: string, entity: Updateable): Promise; delete(id: string): Promise; deleteAll(ids: string[]): Promise; getById(id: string): Promise; }