import { Action } from "./Action" ; import { GenerativeToken } from "./GenerativeToken" ; import { Objkt } from "./Objkt" ; import { Offer } from "./Offer" ; export interface UserItems { generativeTokens ? : GenerativeToken [ ] ; objkts ? : Objkt [ ] ; offers ? : Offer [ ] ; actions ? : Action [ ] ; } export enum UserRole { USER = "USER" , MODERATOR = "MODERATOR" , ADMIN = "ADMIN" } export enum UserFlag { NONE = "NONE" , REVIEW = "REVIEW" , SUSPICIOUS = "SUSPICIOUS" , MALICIOUS = "MALICIOUS" , VERIFIED = "VERIFIED" } export const UserFlagValues = { NONE : 0 , REVIEW : 1 , SUSPICIOUS : 2 , MALICIOUS : 3 , VERIFIED : 10 , } ; export interface User { id : string ; name ? : string ; role : UserRole ; flag : UserFlag ; metadata ? : Record < string , any > ; metadataUri ? : string ; description ? : string ; avatarUri ? : string ; generativeTokens ? : GenerativeToken [ ] ; actionsAsIssuer : Action [ ] ; actionsAsTarget : Action [ ] ; objkts : Objkt [ ] ; offers : Offer [ ] ; createdAt : Date ; updatedAt : Date ; actions ? : Action [ ] ; } export interface ConnectedUser extends Partial < User > { id : string ; } export interface UserAlias { id : string ; alias : Partial < User > ; }