UNPKG

@beincom/dto

Version:

Share dto for all projects of Beincom

91 lines (90 loc) 2.44 kB
import { COUNTRY_CODE, INTEREST, LANGUAGE, USER_DIRECT_MESSAGE_PRIVACY, USER_GENDER, USER_INVITATION_PRIVACY, USER_RELATIONSHIP_STATUS, USER_STAFF_ROLE } from '@beincom/constants'; import { BindedUserSubscriptionDto } from './subscription.dto'; declare class CommunityInfo { id: string; name: string; } export declare class ShowingBadgeDto { id: string; name: string; iconUrl: string; community?: CommunityInfo; isNew?: boolean; } export declare class ShowingBadgesByUserIdMapDto { [key: string]: ShowingBadgeDto[]; } export declare class LatestWorkExperienceDto { company: string; titlePosition: string; } export declare class UserDto { id: string; primaryId?: string; username: string; fullname: string; email: string; avatar: string; chatId: string; beinStaffRole: USER_STAFF_ROLE; countryCode: string; country: string; city: string; address: string; backgroundImgUrl: string; birthday: Date; description: string; gender: USER_GENDER; language: string[]; phone: string; relationshipStatus: USER_RELATIONSHIP_STATUS; isDeactivated: boolean; isVerified: boolean; isPhoneVerified: boolean; isProfsCreator: boolean; referralCode: string; interests: INTEREST[]; nationality?: COUNTRY_CODE; latestWork?: LatestWorkExperienceDto; showingBadges?: ShowingBadgeDto[]; shouldCreatePwd?: boolean; subscriptions?: BindedUserSubscriptionDto[]; isPrimary?: boolean; createdAt: Date; updatedAt: Date; deletedAt?: Date; } export interface SharedUserDto { id: string; username: string; fullname: string; avatar: string; email: string; isDeactivated: boolean; isVerified: boolean; blockings: string[]; groups: string[]; showingBadges?: ShowingBadgeDto[]; setting?: UserSettingDto; } export declare class UserSettingDto { userId: string; invitationPrivacy: USER_INVITATION_PRIVACY; directMessagePrivacy: USER_DIRECT_MESSAGE_PRIVACY; language: LANGUAGE; showOwnedCommunities: boolean; showJoinedCommunities: boolean; showContent: boolean; showPersonalInfo: boolean; createdAt?: Date; updatedAt?: Date; } export declare class UserPublicInfoDto { fullname: string; avatar: string; } export declare class UserBasicInfo extends UserPublicInfoDto { id: string; username: string; } export {};