34 lines
739 B
TypeScript
34 lines
739 B
TypeScript
import type { Presenter } from '@gridpilot/shared/presentation';
|
|
|
|
export interface TeamListItemViewModel {
|
|
id: string;
|
|
name: string;
|
|
tag: string;
|
|
description: string;
|
|
memberCount: number;
|
|
leagues: string[];
|
|
specialization?: 'endurance' | 'sprint' | 'mixed';
|
|
region?: string;
|
|
languages?: string[];
|
|
}
|
|
|
|
export interface AllTeamsViewModel {
|
|
teams: TeamListItemViewModel[];
|
|
totalCount: number;
|
|
}
|
|
|
|
export interface AllTeamsResultDTO {
|
|
teams: Array<{
|
|
id: string;
|
|
name: string;
|
|
tag: string;
|
|
description: string;
|
|
ownerId: string;
|
|
leagues: string[];
|
|
createdAt: Date;
|
|
memberCount: number;
|
|
}>;
|
|
}
|
|
|
|
export interface IAllTeamsPresenter
|
|
extends Presenter<AllTeamsResultDTO, AllTeamsViewModel> {} |