export interface Photo {
  readonly id: string;
  readonly deviceId: string;
  readonly albumId: string | null;
  readonly externalId: string;
  readonly filename: string;
  readonly mediaType: string;
  readonly width: number;
  readonly height: number;
  readonly duration: number | null;
  readonly takenAt: string | null;
  readonly storageBucket: string | null;
  readonly storageKey: string | null;
  readonly syncedAt: string;
}

export interface PhotoDraft {
  readonly id: string;
  readonly deviceId: string;
  readonly albumId?: string | null;
  readonly externalId: string;
  readonly filename: string;
  readonly mediaType: string;
  readonly width: number;
  readonly height: number;
  readonly duration?: number | null;
  readonly takenAt?: string | null;
  readonly storageBucket?: string | null;
  readonly storageKey?: string | null;
}

export interface PhotoFilter {
  readonly deviceId?: string;
  readonly albumId?: string;
  readonly since?: string;
  readonly limit?: number;
}
