import { Discussion, DiscussionSchema, Message } from "../types/discussion.types.js";
import * as mongoose$1 from "mongoose";
import { Schema } from "mongoose";

//#region src/schemas/discussion.schema.d.ts
declare const discussionSchema: Schema<DiscussionSchema, mongoose$1.Model<DiscussionSchema, any, any, any, (mongoose$1.Document<unknown, any, DiscussionSchema, any, mongoose$1.DefaultSchemaOptions> & Omit<Discussion, "id"> & {
  _id: mongoose$1.Types.ObjectId;
} & Required<{
  _id: mongoose$1.Types.ObjectId;
}> & {
  __v: number;
} & {
  id: string;
}) | (mongoose$1.Document<unknown, any, DiscussionSchema, any, mongoose$1.DefaultSchemaOptions> & Omit<Discussion, "id"> & {
  _id: mongoose$1.Types.ObjectId;
} & Required<{
  _id: mongoose$1.Types.ObjectId;
}> & {
  __v: number;
}), any, DiscussionSchema>, {}, {}, {}, {}, mongoose$1.DefaultSchemaOptions, DiscussionSchema, mongoose$1.Document<unknown, {}, DiscussionSchema, {
  id: string;
}, mongoose$1.DefaultSchemaOptions> & Omit<Omit<Discussion, "id"> & {
  _id: mongoose$1.Types.ObjectId;
} & Required<{
  _id: mongoose$1.Types.ObjectId;
}> & {
  __v: number;
}, "id"> & {
  id: string;
}, {
  _id?: mongoose$1.SchemaDefinitionProperty<mongoose$1.Types.ObjectId, DiscussionSchema, mongoose$1.Document<unknown, {}, DiscussionSchema, {
    id: string;
  }, mongoose$1.DefaultSchemaOptions> & Omit<Omit<Discussion, "id"> & {
    _id: mongoose$1.Types.ObjectId;
  } & Required<{
    _id: mongoose$1.Types.ObjectId;
  }> & {
    __v: number;
  }, "id"> & {
    id: string;
  }>;
  createdAt?: mongoose$1.SchemaDefinitionProperty<Date, DiscussionSchema, mongoose$1.Document<unknown, {}, DiscussionSchema, {
    id: string;
  }, mongoose$1.DefaultSchemaOptions> & Omit<Omit<Discussion, "id"> & {
    _id: mongoose$1.Types.ObjectId;
  } & Required<{
    _id: mongoose$1.Types.ObjectId;
  }> & {
    __v: number;
  }, "id"> & {
    id: string;
  }>;
  updatedAt?: mongoose$1.SchemaDefinitionProperty<Date, DiscussionSchema, mongoose$1.Document<unknown, {}, DiscussionSchema, {
    id: string;
  }, mongoose$1.DefaultSchemaOptions> & Omit<Omit<Discussion, "id"> & {
    _id: mongoose$1.Types.ObjectId;
  } & Required<{
    _id: mongoose$1.Types.ObjectId;
  }> & {
    __v: number;
  }, "id"> & {
    id: string;
  }>;
  title?: mongoose$1.SchemaDefinitionProperty<string, DiscussionSchema, mongoose$1.Document<unknown, {}, DiscussionSchema, {
    id: string;
  }, mongoose$1.DefaultSchemaOptions> & Omit<Omit<Discussion, "id"> & {
    _id: mongoose$1.Types.ObjectId;
  } & Required<{
    _id: mongoose$1.Types.ObjectId;
  }> & {
    __v: number;
  }, "id"> & {
    id: string;
  }>;
  userId?: mongoose$1.SchemaDefinitionProperty<mongoose$1.Types.ObjectId, DiscussionSchema, mongoose$1.Document<unknown, {}, DiscussionSchema, {
    id: string;
  }, mongoose$1.DefaultSchemaOptions> & Omit<Omit<Discussion, "id"> & {
    _id: mongoose$1.Types.ObjectId;
  } & Required<{
    _id: mongoose$1.Types.ObjectId;
  }> & {
    __v: number;
  }, "id"> & {
    id: string;
  }>;
  projectId?: mongoose$1.SchemaDefinitionProperty<mongoose$1.Types.ObjectId, DiscussionSchema, mongoose$1.Document<unknown, {}, DiscussionSchema, {
    id: string;
  }, mongoose$1.DefaultSchemaOptions> & Omit<Omit<Discussion, "id"> & {
    _id: mongoose$1.Types.ObjectId;
  } & Required<{
    _id: mongoose$1.Types.ObjectId;
  }> & {
    __v: number;
  }, "id"> & {
    id: string;
  }>;
  organizationId?: mongoose$1.SchemaDefinitionProperty<mongoose$1.Types.ObjectId, DiscussionSchema, mongoose$1.Document<unknown, {}, DiscussionSchema, {
    id: string;
  }, mongoose$1.DefaultSchemaOptions> & Omit<Omit<Discussion, "id"> & {
    _id: mongoose$1.Types.ObjectId;
  } & Required<{
    _id: mongoose$1.Types.ObjectId;
  }> & {
    __v: number;
  }, "id"> & {
    id: string;
  }>;
  discussionId?: mongoose$1.SchemaDefinitionProperty<string, DiscussionSchema, mongoose$1.Document<unknown, {}, DiscussionSchema, {
    id: string;
  }, mongoose$1.DefaultSchemaOptions> & Omit<Omit<Discussion, "id"> & {
    _id: mongoose$1.Types.ObjectId;
  } & Required<{
    _id: mongoose$1.Types.ObjectId;
  }> & {
    __v: number;
  }, "id"> & {
    id: string;
  }>;
  messages?: mongoose$1.SchemaDefinitionProperty<Message[], DiscussionSchema, mongoose$1.Document<unknown, {}, DiscussionSchema, {
    id: string;
  }, mongoose$1.DefaultSchemaOptions> & Omit<Omit<Discussion, "id"> & {
    _id: mongoose$1.Types.ObjectId;
  } & Required<{
    _id: mongoose$1.Types.ObjectId;
  }> & {
    __v: number;
  }, "id"> & {
    id: string;
  }>;
  isArchived?: mongoose$1.SchemaDefinitionProperty<boolean, DiscussionSchema, mongoose$1.Document<unknown, {}, DiscussionSchema, {
    id: string;
  }, mongoose$1.DefaultSchemaOptions> & Omit<Omit<Discussion, "id"> & {
    _id: mongoose$1.Types.ObjectId;
  } & Required<{
    _id: mongoose$1.Types.ObjectId;
  }> & {
    __v: number;
  }, "id"> & {
    id: string;
  }>;
}, DiscussionSchema>;
//#endregion
export { discussionSchema };
//# sourceMappingURL=discussion.schema.d.ts.map