// DB Types export type User = { id: string name: string email: string username: string avatarUrl: string | null createdAt: Date generations: number sandbox: Sandbox[] usersToSandboxes: UsersToSandboxes[] } export type Sandbox = { id: string name: string type: string visibility: "public" | "private" createdAt: Date userId: string usersToSandboxes: UsersToSandboxes[] } export type UsersToSandboxes = { userId: string sandboxId: string sharedOn: Date } export type R2Files = { objects: R2FileData[] truncated: boolean delimitedPrefixes: any[] } export type R2FileData = { storageClass: string uploaded: string checksums: any httpEtag: string etag: string size: number version: string key: string } export type TFolder = { id: string type: "folder" name: string children: (TFile | TFolder)[] } export type TFile = { id: string type: "file" name: string } export type TTab = TFile & { saved: boolean } export type TFileData = { id: string data: string }