import { Attr } from 'ts-framework' import { CreateUserEmailDTO } from './user-email' import { CreateUserPhoneDTO } from './user-phones' export class RegisterUserWithoutPhoneDTO { @Attr({ type: String }) firstName: string @Attr({ type: String }) lastName: string @Attr({ type: String }) password: string @Attr({ type: String }) username: string @Attr({ type: String, optional: true }) photo?: string @Attr({ type: String, optional: true }) emailAddress?: string @Attr({ type: String, optional: true }) birthDate?: string } export class MobileRegisterDTO { @Attr({ type: String }) userCreationToken: string @Attr({ type: RegisterUserWithoutPhoneDTO }) user: RegisterUserWithoutPhoneDTO } export class InviteEmailParamsDTO { @Attr({ type: String }) roles: string[] } export class RegisterUserWithoutPasswordDTO { @Attr({ type: String, optional: true }) birthDate?: string @Attr({ type: String }) firstName: string @Attr({ type: String }) lastName: string @Attr({ type: String }) username: string @Attr({ type: CreateUserPhoneDTO, optional: true }) phones?: CreateUserPhoneDTO[] @Attr({ type: Array, optional: true }) middleName?: string @Attr({ type: String, optional: true }) note?: string @Attr({ type: String, optional: true }) externalId?: string @Attr({ type: String, optional: true }) rolesInApp?: string[] @Attr({ type: String, optional: true }) photo?: string @Attr({ type: CreateUserEmailDTO, optional: true }) email?: CreateUserEmailDTO @Attr({ type: CreateUserEmailDTO, optional: true }) emailParams?: InviteEmailParamsDTO @Attr({ type: String, optional: true }) organizationId?: string @Attr({ type: String, optional: true }) organizationName?: string }