Files
SerpentRace/SerpentRace_Backend/dist/Domain/IRepository/IDeckRepository.d.ts
T

32 lines
1.3 KiB
TypeScript

import { DeckAggregate } from '../Deck/DeckAggregate';
export interface IDeckRepository {
create(deck: Partial<DeckAggregate>): Promise<DeckAggregate>;
findByPage(from: number, to: number): Promise<{
decks: DeckAggregate[];
totalCount: number;
}>;
findByPageIncludingDeleted(from: number, to: number): Promise<{
decks: DeckAggregate[];
totalCount: number;
}>;
findById(id: string): Promise<DeckAggregate | null>;
findByIdIncludingDeleted(id: string): Promise<DeckAggregate | null>;
search(query: string, limit?: number, offset?: number): Promise<{
decks: DeckAggregate[];
totalCount: number;
}>;
searchIncludingDeleted(query: string, limit?: number, offset?: number): Promise<{
decks: DeckAggregate[];
totalCount: number;
}>;
update(id: string, update: Partial<DeckAggregate>): Promise<DeckAggregate | null>;
delete(id: string): Promise<any>;
softDelete(id: string): Promise<DeckAggregate | null>;
countActiveByUserId(userId: string): Promise<number>;
countOrganizationalByUserId(userId: string): Promise<number>;
findFilteredDecks(userId: string, userOrgId?: string | null, isAdmin?: boolean, from?: number, to?: number): Promise<{
decks: DeckAggregate[];
totalCount: number;
}>;
}
//# sourceMappingURL=IDeckRepository.d.ts.map