import Model, { attr, hasMany, type AsyncHasMany } from '@ember-data/model' import type CustomAccountFieldModel from './custom-account-field' import type MediaMetadataModel from './media-metadata' import type OriginServer from './origin-server' export default class Account extends Model { @attr declare createdAt: Date @attr declare updatedAt: Date @attr declare username: string @attr declare originServer: OriginServer @attr declare originServerId: number @attr declare displayName: string @hasMany('custom-account-field') declare customFields: AsyncHasMany @attr declare customFieldIds: Array @attr declare isBot: boolean @attr declare description: string @attr declare icon: MediaMetadataModel @attr declare iconId: string @attr declare banner: MediaMetadataModel @attr declare bannerId: string @attr declare background: MediaMetadataModel @attr declare backgroundId: string @attr declare relationIds: Array @attr declare indexable: boolean @attr declare restrictedFollow: boolean @attr declare identifiesAs: Array @attr declare pronouns: Array @attr declare roles: Array } declare module 'ember-data/types/registries/model' { export default interface ModelRegistry { account: Account } }