linstrom/frontend-reactive/app/models/account.ts
mStar 5fb5dae31e Start work on account display
Also no idea wtf is going on with the models
2024-11-21 16:34:20 +01:00

36 lines
1.3 KiB
TypeScript

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<CustomAccountFieldModel>;
@attr declare customFieldIds: Array<number>;
@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<number>;
@attr declare indexable: boolean;
@attr declare restrictedFollow: boolean;
@attr declare identifiesAs: Array<string>;
@attr declare pronouns: Array<string>;
@attr declare roles: Array<string>;
}
declare module 'ember-data/types/registries/model' {
export default interface ModelRegistry {
account: Account;
}
}