This commit is contained in:
@@ -73,17 +73,53 @@ export interface GameSession {
|
||||
status: "playing" | "finished";
|
||||
options: Record<string, any>;
|
||||
winnerIds?: string[];
|
||||
locationId?: string;
|
||||
profileId: string;
|
||||
updatedAt: number;
|
||||
deletedAt?: number; // tombstone pour la synchronisation
|
||||
dirty?: number; // 1 = modifié localement, à pousser (0/absent = synchronisé)
|
||||
}
|
||||
|
||||
export interface AppSettings {
|
||||
id: number;
|
||||
theme: "light" | "dark" | "system";
|
||||
language: string;
|
||||
activeProfileId: string;
|
||||
}
|
||||
|
||||
export interface SavedPlayer {
|
||||
id: string;
|
||||
name: string;
|
||||
createdAt: number;
|
||||
updatedAt: number;
|
||||
avatar?: string;
|
||||
profileId: string;
|
||||
linkedProfileId?: string; // réservé pour la Phase 4 (lien vers un ami)
|
||||
deletedAt?: number; // tombstone pour la synchronisation
|
||||
dirty?: number; // 1 = modifié localement, à pousser
|
||||
}
|
||||
|
||||
export interface Location {
|
||||
id: string;
|
||||
name: string;
|
||||
address?: string;
|
||||
createdAt: number;
|
||||
updatedAt: number;
|
||||
deletedAt?: number; // tombstone pour la synchronisation
|
||||
profileId: string;
|
||||
dirty?: number; // 1 = modifié localement, à pousser
|
||||
}
|
||||
|
||||
export interface SyncState {
|
||||
profileId: string;
|
||||
lastSyncedAt: number;
|
||||
}
|
||||
|
||||
export interface Profile {
|
||||
id: string;
|
||||
name: string;
|
||||
avatar?: string;
|
||||
createdAt: number;
|
||||
updatedAt: number;
|
||||
remoteUserId?: string; // réservé pour la Phase 3 (compte serveur)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user