/**
 * ⚠️ WARNING: THIS FILE IS AUTO-GENERATED ⚠️
 * 
 * This file is generated by the type generation system.
 * Any manual changes will be overwritten on next server start and should always be committed.
 * 
 */

import { Type } from "@sinclair/typebox"

export const WorkSessionSchema = {
  $id: "#workSession/base",
  title: "core/workSession",
  type: "object",
  required: [
    "_id",
    "project",
    "createdAt",
    "updatedAt",
  ],
  properties: {
    _id: {
      type: "string",
    },
    userId: {
      type: "string",
    },
    accessType: {
      default: "anonymous",
      enum: [
        "anonymous",
      ],
      type: "string",
    },
    compositionId: {
      type: "string",
    },
    project: {
      type: "string",
    },
    expiryDate: {
      format: "date-time",
      type: "string",
    },
    isActive: {
      default: true,
      type: "boolean",
    },
    permissions: {
      default: 6,
      type: "number",
    },
    pluginData: {
      default: {},
      type: "object",
      patternProperties: {
        "^(.*)$": {},
      },
    },
    composition: {},
    createdAt: {
      format: "date-time",
      type: "string",
    },
    updatedAt: {
      format: "date-time",
      type: "string",
    },
  },
}



export default WorkSessionSchema
