//#region CollllabUsersData
interface CollabUsersScheme {
    userId: string;
    userName: string;
    projectId: string;
    versionId: string;

    camData: {
        position: { x: number; y: number; z: number };
        rotation: { x: number; y: number; z: number };
        target: { x: number; y: number; z: number };
    };

    followingUser: string | null;
}
//#endregion

//#region Thread
interface ThreadSchema {
    state: "active" | "inactive";
    threadId: string;
    creatorId: string;
    createdAt: string;
    threadTitle: string;
    lastUpdatedAt: string;
    position: [number, number, number];
    rotation: [number, number, number];
    comments: Reply[];
}

interface Reply {
    replyId: string;
    creatorId: string;
    createdAt: string;
    lastUpdatedAt: string;
    comment: string;
}

type ThreadsSchema = ThreadSchema[];
//#endregion
