@upv/ushi-shared
Version:
Shared DTOs, types, and utilities for the USHI platform (LMS, Trials, Social, Wallet).
27 lines (26 loc) • 916 B
TypeScript
import BaseDto from '../base/BaseDto';
import { IPersonDto, IPerson, IPersonStatus } from '../../../types/person';
/**
* PersonDto
*
* DTO for the global Person entity in the USHI platform.
* This is the root person object shared across all systems (LMS, Trials, Social).
* Includes identity linkage via Cognito ID and optional phone number for verification.
*/
declare class PersonDto extends BaseDto<IPersonDto> {
protected _personId: string;
protected _cognitoId?: string;
protected _name: string;
protected _email: string;
protected _phoneNumber?: string;
protected _status: IPersonStatus;
constructor(data: IPersonDto);
serialize(): Promise<IPerson>;
get personId(): string;
get cognitoId(): string | undefined;
get name(): string;
get email(): string;
get phoneNumber(): string | undefined;
get status(): IPersonStatus;
}
export default PersonDto;