import { Realm } from '@realm/react'; import { Tag } from './tag'; enum MEME_TYPE { IMAGE = 'IMAGE', GIF = 'GIF', ALMBUM = 'ALMBUM', VIDEO = 'VIDEO', AUDIO = 'AUDIO', TEXT = 'TEXT', } class Meme extends Realm.Object { id!: Realm.BSON.UUID; type!: MEME_TYPE; uri!: string; size!: number; title!: string; description?: string; isFavorite!: boolean; tags!: Realm.List; dateCreated!: Date; dateModified!: Date; dateUsed?: Date; timesUsed!: number; static schema: Realm.ObjectSchema = { name: 'Meme', primaryKey: 'id', properties: { id: 'uuid', type: { type: 'string', indexed: true }, uri: 'string', size: 'int', title: 'string', description: 'string?', isFavorite: { type: 'bool', indexed: true, default: false }, tags: 'Tag[]', dateCreated: 'date', dateModified: 'date', dateUsed: 'date?', timesUsed: { type: 'int', default: 0 }, }, }; } export { MEME_TYPE, Meme };