@replyke/core
Version:
Replyke: Build interactive apps with social features like comments, votes, feeds, user lists, notifications, and more.
34 lines (33 loc) • 1.12 kB
TypeScript
export type UserFull = {
id: string;
projectId: string;
foreignId: string | null;
role: "admin" | "editor" | "visitor";
email: string | null;
name: string | null;
username: string | null;
avatar: string | null;
bio: string | null;
birthdate: Date | null;
location: {
type: "Point";
coordinates: [number, number];
} | null;
metadata: Record<string, any>;
secureMetadata: Record<string, any>;
reputation: number;
isVerified: boolean;
isActive: boolean;
lastActive: Date;
createdAt: Date;
updatedAt: Date;
deletedAt: Date | null;
};
export type AuthUser = Pick<UserFull, "id" | "projectId" | "foreignId" | "role" | "email" | "name" | "username" | "avatar" | "bio" | "birthdate" | "metadata" | "reputation" | "isVerified" | "isActive" | "lastActive"> & {
suspensions: {
reason: string | null;
startDate: Date;
endDate: Date | null;
}[];
};
export type User = Omit<UserFull, "foreignId" | "email" | "secureMetadata" | "isVerified" | "isActive" | "lastActive" | "updatedAt" | "deletedAt">;