gemcap-be-common 1.5.160 → 1.5.162

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -29,6 +29,12 @@ export interface IBorrowerDataOption {
29
29
  type: string;
30
30
  isActive: boolean;
31
31
  }
32
+ export interface IBorrowerDataOptionLean extends IBorrowerDataOption {
33
+ _id: mongoose.Types.ObjectId;
34
+ }
35
+ export interface IBorrowerDataOptionPlain extends IBorrowerDataOption {
36
+ _id: string;
37
+ }
32
38
  interface IBorrowerDataOptionDoc extends IBorrowerDataOption, Document {
33
39
  }
34
40
  export type TBorrowerDataOptionModel = mongoose.Model<IBorrowerDataOptionDoc>;
@@ -36,19 +42,19 @@ export declare const BorrowerDataOptionSchema: mongoose.Schema<any, mongoose.Mod
36
42
  timestamps: false;
37
43
  versionKey: false;
38
44
  }, {
39
- order: number;
40
45
  type: string;
41
46
  name: string;
47
+ order: number;
42
48
  isActive?: boolean;
43
49
  }, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
44
- order: number;
45
50
  type: string;
46
51
  name: string;
52
+ order: number;
47
53
  isActive?: boolean;
48
54
  }>> & mongoose.FlatRecord<{
49
- order: number;
50
55
  type: string;
51
56
  name: string;
57
+ order: number;
52
58
  isActive?: boolean;
53
59
  }> & {
54
60
  _id: mongoose.Types.ObjectId;
@@ -60,6 +66,13 @@ export interface IBorrowerData {
60
66
  }
61
67
  export interface IBorrowerDataDoc extends IBorrowerData, Document {
62
68
  }
69
+ export interface IBorrowerDataLean extends IBorrowerData {
70
+ _id: mongoose.Types.ObjectId;
71
+ }
72
+ export interface IBorrowerDataPlain extends Omit<IBorrowerData, 'dataOption'> {
73
+ _id: string;
74
+ dataOption: string;
75
+ }
63
76
  export interface IBorrowerDataDocWithName extends IBorrowerDataDoc {
64
77
  dataName: string;
65
78
  }
@@ -1,6 +1,6 @@
1
1
  import mongoose, { Document } from 'mongoose';
2
+
2
3
  import { MODEL_NAMES } from './_models';
3
- import { IFile } from './File.model';
4
4
 
5
5
  export interface IBorrowerDataOption {
6
6
  order: number;
@@ -9,6 +9,14 @@ export interface IBorrowerDataOption {
9
9
  isActive: boolean;
10
10
  }
11
11
 
12
+ export interface IBorrowerDataOptionLean extends IBorrowerDataOption {
13
+ _id: mongoose.Types.ObjectId;
14
+ }
15
+
16
+ export interface IBorrowerDataOptionPlain extends IBorrowerDataOption {
17
+ _id: string;
18
+ }
19
+
12
20
  interface IBorrowerDataOptionDoc extends IBorrowerDataOption, Document {
13
21
  }
14
22
 
@@ -38,13 +46,22 @@ export const BorrowerDataOptionSchema = new mongoose.Schema(
38
46
  export const BorrowerDataOptionModel: mongoose.Model<IBorrowerDataOptionDoc> = mongoose.model<IBorrowerDataOptionDoc>(MODEL_NAMES.borrowerDataOptions, BorrowerDataOptionSchema);
39
47
 
40
48
  export interface IBorrowerData {
41
- dataOption: mongoose.Types.ObjectId,
42
- dataValue: boolean | string
49
+ dataOption: mongoose.Types.ObjectId;
50
+ dataValue: boolean | string;
43
51
  }
44
52
 
45
53
  export interface IBorrowerDataDoc extends IBorrowerData, Document {
46
54
  }
47
55
 
56
+ export interface IBorrowerDataLean extends IBorrowerData {
57
+ _id: mongoose.Types.ObjectId;
58
+ }
59
+
60
+ export interface IBorrowerDataPlain extends Omit<IBorrowerData, 'dataOption'> {
61
+ _id: string;
62
+ dataOption: string;
63
+ }
64
+
48
65
  export interface IBorrowerDataDocWithName extends IBorrowerDataDoc {
49
66
  dataName: string;
50
67
  }
@@ -95,35 +95,35 @@ export declare const dataSchema: mongoose.Schema<any, mongoose.Model<any, any, a
95
95
  banks: mongoose.Types.ObjectId[];
96
96
  inventories: mongoose.Types.ObjectId[];
97
97
  receivables: mongoose.Types.ObjectId[];
98
+ options: mongoose.Types.ObjectId[];
99
+ insurance: mongoose.Types.ObjectId[];
98
100
  terms: mongoose.Types.ObjectId[];
99
101
  bootCollaterals: mongoose.Types.ObjectId[];
100
102
  contacts: mongoose.Types.ObjectId[];
101
103
  guarantees: mongoose.Types.ObjectId[];
102
104
  locations: mongoose.Types.ObjectId[];
103
- insurance: mongoose.Types.ObjectId[];
104
- options: mongoose.Types.ObjectId[];
105
105
  }, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
106
106
  banks: mongoose.Types.ObjectId[];
107
107
  inventories: mongoose.Types.ObjectId[];
108
108
  receivables: mongoose.Types.ObjectId[];
109
+ options: mongoose.Types.ObjectId[];
110
+ insurance: mongoose.Types.ObjectId[];
109
111
  terms: mongoose.Types.ObjectId[];
110
112
  bootCollaterals: mongoose.Types.ObjectId[];
111
113
  contacts: mongoose.Types.ObjectId[];
112
114
  guarantees: mongoose.Types.ObjectId[];
113
115
  locations: mongoose.Types.ObjectId[];
114
- insurance: mongoose.Types.ObjectId[];
115
- options: mongoose.Types.ObjectId[];
116
116
  }>> & mongoose.FlatRecord<{
117
117
  banks: mongoose.Types.ObjectId[];
118
118
  inventories: mongoose.Types.ObjectId[];
119
119
  receivables: mongoose.Types.ObjectId[];
120
+ options: mongoose.Types.ObjectId[];
121
+ insurance: mongoose.Types.ObjectId[];
120
122
  terms: mongoose.Types.ObjectId[];
121
123
  bootCollaterals: mongoose.Types.ObjectId[];
122
124
  contacts: mongoose.Types.ObjectId[];
123
125
  guarantees: mongoose.Types.ObjectId[];
124
126
  locations: mongoose.Types.ObjectId[];
125
- insurance: mongoose.Types.ObjectId[];
126
- options: mongoose.Types.ObjectId[];
127
127
  }> & {
128
128
  _id: mongoose.Types.ObjectId;
129
129
  }>;
@@ -139,20 +139,20 @@ export declare const BorrowerSettingsSchema: mongoose.Schema<any, mongoose.Model
139
139
  banks: mongoose.Types.ObjectId[];
140
140
  inventories: mongoose.Types.ObjectId[];
141
141
  receivables: mongoose.Types.ObjectId[];
142
+ options: mongoose.Types.ObjectId[];
143
+ insurance: mongoose.Types.ObjectId[];
142
144
  terms: mongoose.Types.ObjectId[];
143
145
  bootCollaterals: mongoose.Types.ObjectId[];
144
146
  contacts: mongoose.Types.ObjectId[];
145
147
  guarantees: mongoose.Types.ObjectId[];
146
148
  locations: mongoose.Types.ObjectId[];
147
- insurance: mongoose.Types.ObjectId[];
148
- options: mongoose.Types.ObjectId[];
149
149
  };
150
- queries?: any;
151
- dataTypes?: any;
152
150
  dataAvailability?: {
153
151
  inventories: boolean;
154
152
  receivables: boolean;
155
153
  };
154
+ queries?: any;
155
+ dataTypes?: any;
156
156
  }, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
157
157
  createdAt: NativeDate;
158
158
  updatedAt: NativeDate;
@@ -163,20 +163,20 @@ export declare const BorrowerSettingsSchema: mongoose.Schema<any, mongoose.Model
163
163
  banks: mongoose.Types.ObjectId[];
164
164
  inventories: mongoose.Types.ObjectId[];
165
165
  receivables: mongoose.Types.ObjectId[];
166
+ options: mongoose.Types.ObjectId[];
167
+ insurance: mongoose.Types.ObjectId[];
166
168
  terms: mongoose.Types.ObjectId[];
167
169
  bootCollaterals: mongoose.Types.ObjectId[];
168
170
  contacts: mongoose.Types.ObjectId[];
169
171
  guarantees: mongoose.Types.ObjectId[];
170
172
  locations: mongoose.Types.ObjectId[];
171
- insurance: mongoose.Types.ObjectId[];
172
- options: mongoose.Types.ObjectId[];
173
173
  };
174
- queries?: any;
175
- dataTypes?: any;
176
174
  dataAvailability?: {
177
175
  inventories: boolean;
178
176
  receivables: boolean;
179
177
  };
178
+ queries?: any;
179
+ dataTypes?: any;
180
180
  }>> & mongoose.FlatRecord<{
181
181
  createdAt: NativeDate;
182
182
  updatedAt: NativeDate;
@@ -187,20 +187,20 @@ export declare const BorrowerSettingsSchema: mongoose.Schema<any, mongoose.Model
187
187
  banks: mongoose.Types.ObjectId[];
188
188
  inventories: mongoose.Types.ObjectId[];
189
189
  receivables: mongoose.Types.ObjectId[];
190
+ options: mongoose.Types.ObjectId[];
191
+ insurance: mongoose.Types.ObjectId[];
190
192
  terms: mongoose.Types.ObjectId[];
191
193
  bootCollaterals: mongoose.Types.ObjectId[];
192
194
  contacts: mongoose.Types.ObjectId[];
193
195
  guarantees: mongoose.Types.ObjectId[];
194
196
  locations: mongoose.Types.ObjectId[];
195
- insurance: mongoose.Types.ObjectId[];
196
- options: mongoose.Types.ObjectId[];
197
197
  };
198
- queries?: any;
199
- dataTypes?: any;
200
198
  dataAvailability?: {
201
199
  inventories: boolean;
202
200
  receivables: boolean;
203
201
  };
202
+ queries?: any;
203
+ dataTypes?: any;
204
204
  }> & {
205
205
  _id: mongoose.Types.ObjectId;
206
206
  }>;
@@ -0,0 +1,48 @@
1
+ /// <reference types="mongoose/types/aggregate" />
2
+ /// <reference types="mongoose/types/callback" />
3
+ /// <reference types="mongoose/types/collection" />
4
+ /// <reference types="mongoose/types/connection" />
5
+ /// <reference types="mongoose/types/cursor" />
6
+ /// <reference types="mongoose/types/document" />
7
+ /// <reference types="mongoose/types/error" />
8
+ /// <reference types="mongoose/types/expressions" />
9
+ /// <reference types="mongoose/types/helpers" />
10
+ /// <reference types="mongoose/types/middlewares" />
11
+ /// <reference types="mongoose/types/indexes" />
12
+ /// <reference types="mongoose/types/models" />
13
+ /// <reference types="mongoose/types/mongooseoptions" />
14
+ /// <reference types="mongoose/types/pipelinestage" />
15
+ /// <reference types="mongoose/types/populate" />
16
+ /// <reference types="mongoose/types/query" />
17
+ /// <reference types="mongoose/types/schemaoptions" />
18
+ /// <reference types="mongoose/types/schematypes" />
19
+ /// <reference types="mongoose/types/session" />
20
+ /// <reference types="mongoose/types/types" />
21
+ /// <reference types="mongoose/types/utility" />
22
+ /// <reference types="mongoose/types/validation" />
23
+ /// <reference types="mongoose/types/virtuals" />
24
+ /// <reference types="mongoose/types/inferschematype" />
25
+ import mongoose from 'mongoose';
26
+ interface IDataRoom {
27
+ prospectId: mongoose.Types.ObjectId;
28
+ createdBy: string;
29
+ sharepointSyncedAt?: Date;
30
+ }
31
+ export type TDataRoomDoc = mongoose.HydratedDocument<IDataRoom>;
32
+ export interface IDataRoomLean extends IDataRoom {
33
+ _id: mongoose.Types.ObjectId;
34
+ createdAt: Date;
35
+ updatedAt: Date;
36
+ }
37
+ export interface IDataRoomPlain extends Omit<IDataRoom, 'prospectId'> {
38
+ _id: string;
39
+ prospectId: string;
40
+ createdAt: Date;
41
+ updatedAt: Date;
42
+ }
43
+ export type TDataRoomModel = mongoose.Model<IDataRoom>;
44
+ export declare const DataRoomSchema: mongoose.Schema<IDataRoom, TDataRoomModel, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, IDataRoom, mongoose.Document<unknown, {}, mongoose.FlatRecord<IDataRoom>> & mongoose.FlatRecord<IDataRoom> & {
45
+ _id: mongoose.Types.ObjectId;
46
+ }>;
47
+ export declare const DataRoom: TDataRoomModel;
48
+ export {};
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DataRoom = exports.DataRoomSchema = void 0;
7
+ const mongoose_1 = __importDefault(require("mongoose"));
8
+ const _models_1 = require("./_models");
9
+ exports.DataRoomSchema = new mongoose_1.default.Schema({
10
+ prospectId: {
11
+ type: mongoose_1.default.Schema.Types.ObjectId,
12
+ ref: _models_1.MODEL_NAMES.CRMProspects,
13
+ required: true,
14
+ },
15
+ createdBy: {
16
+ type: String,
17
+ required: true,
18
+ },
19
+ sharepointSyncedAt: {
20
+ type: Date,
21
+ required: false,
22
+ },
23
+ }, {
24
+ timestamps: { createdAt: true, updatedAt: true },
25
+ versionKey: false,
26
+ });
27
+ exports.DataRoom = mongoose_1.default.model(_models_1.MODEL_NAMES.dataRoom, exports.DataRoomSchema);
@@ -0,0 +1,50 @@
1
+ import mongoose from 'mongoose';
2
+
3
+ import { MODEL_NAMES } from './_models';
4
+
5
+ interface IDataRoom {
6
+ prospectId: mongoose.Types.ObjectId;
7
+ createdBy: string;
8
+ sharepointSyncedAt?: Date;
9
+ }
10
+
11
+ export type TDataRoomDoc = mongoose.HydratedDocument<IDataRoom>;
12
+
13
+ export interface IDataRoomLean extends IDataRoom {
14
+ _id: mongoose.Types.ObjectId;
15
+ createdAt: Date;
16
+ updatedAt: Date;
17
+ }
18
+
19
+ export interface IDataRoomPlain extends Omit<IDataRoom, 'prospectId'> {
20
+ _id: string;
21
+ prospectId: string;
22
+ createdAt: Date;
23
+ updatedAt: Date;
24
+ }
25
+
26
+ export type TDataRoomModel = mongoose.Model<IDataRoom>;
27
+
28
+ export const DataRoomSchema = new mongoose.Schema<IDataRoom, TDataRoomModel>(
29
+ {
30
+ prospectId: {
31
+ type: mongoose.Schema.Types.ObjectId,
32
+ ref: MODEL_NAMES.CRMProspects,
33
+ required: true,
34
+ },
35
+ createdBy: {
36
+ type: String,
37
+ required: true,
38
+ },
39
+ sharepointSyncedAt: {
40
+ type: Date,
41
+ required: false,
42
+ },
43
+ },
44
+ {
45
+ timestamps: { createdAt: true, updatedAt: true },
46
+ versionKey: false,
47
+ },
48
+ );
49
+
50
+ export const DataRoom = mongoose.model<IDataRoom, TDataRoomModel>(MODEL_NAMES.dataRoom, DataRoomSchema);
@@ -0,0 +1,52 @@
1
+ /// <reference types="mongoose/types/aggregate" />
2
+ /// <reference types="mongoose/types/callback" />
3
+ /// <reference types="mongoose/types/collection" />
4
+ /// <reference types="mongoose/types/connection" />
5
+ /// <reference types="mongoose/types/cursor" />
6
+ /// <reference types="mongoose/types/document" />
7
+ /// <reference types="mongoose/types/error" />
8
+ /// <reference types="mongoose/types/expressions" />
9
+ /// <reference types="mongoose/types/helpers" />
10
+ /// <reference types="mongoose/types/middlewares" />
11
+ /// <reference types="mongoose/types/indexes" />
12
+ /// <reference types="mongoose/types/models" />
13
+ /// <reference types="mongoose/types/mongooseoptions" />
14
+ /// <reference types="mongoose/types/pipelinestage" />
15
+ /// <reference types="mongoose/types/populate" />
16
+ /// <reference types="mongoose/types/query" />
17
+ /// <reference types="mongoose/types/schemaoptions" />
18
+ /// <reference types="mongoose/types/schematypes" />
19
+ /// <reference types="mongoose/types/session" />
20
+ /// <reference types="mongoose/types/types" />
21
+ /// <reference types="mongoose/types/utility" />
22
+ /// <reference types="mongoose/types/validation" />
23
+ /// <reference types="mongoose/types/virtuals" />
24
+ /// <reference types="mongoose/types/inferschematype" />
25
+ import mongoose from 'mongoose';
26
+ import { TDataRoomPermission } from './DataRoomContact.model';
27
+ interface IDataRoomAccess {
28
+ dataRoomId: mongoose.Types.ObjectId;
29
+ contactId: mongoose.Types.ObjectId;
30
+ permission: TDataRoomPermission;
31
+ invitedAt?: Date;
32
+ invitedBy?: string;
33
+ }
34
+ export type TDataRoomAccessDoc = mongoose.HydratedDocument<IDataRoomAccess>;
35
+ export interface IDataRoomAccessLean extends IDataRoomAccess {
36
+ _id: mongoose.Types.ObjectId;
37
+ createdAt: Date;
38
+ updatedAt: Date;
39
+ }
40
+ export interface IDataRoomAccessPlain extends Omit<IDataRoomAccess, 'dataRoomId' | 'contactId'> {
41
+ _id: string;
42
+ dataRoomId: string;
43
+ contactId: string;
44
+ createdAt: Date;
45
+ updatedAt: Date;
46
+ }
47
+ export type TDataRoomAccessModel = mongoose.Model<IDataRoomAccess>;
48
+ export declare const DataRoomAccessSchema: mongoose.Schema<IDataRoomAccess, TDataRoomAccessModel, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, IDataRoomAccess, mongoose.Document<unknown, {}, mongoose.FlatRecord<IDataRoomAccess>> & mongoose.FlatRecord<IDataRoomAccess> & {
49
+ _id: mongoose.Types.ObjectId;
50
+ }>;
51
+ export declare const DataRoomAccess: TDataRoomAccessModel;
52
+ export {};
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DataRoomAccess = exports.DataRoomAccessSchema = void 0;
7
+ const mongoose_1 = __importDefault(require("mongoose"));
8
+ const _models_1 = require("./_models");
9
+ const DataRoomContact_model_1 = require("./DataRoomContact.model");
10
+ exports.DataRoomAccessSchema = new mongoose_1.default.Schema({
11
+ dataRoomId: {
12
+ type: mongoose_1.default.Schema.Types.ObjectId,
13
+ ref: _models_1.MODEL_NAMES.dataRoom,
14
+ required: true,
15
+ },
16
+ contactId: {
17
+ type: mongoose_1.default.Schema.Types.ObjectId,
18
+ ref: _models_1.MODEL_NAMES.dataRoomContact,
19
+ required: true,
20
+ },
21
+ permission: {
22
+ type: String,
23
+ enum: DataRoomContact_model_1.DATA_ROOM_PERMISSIONS,
24
+ required: true,
25
+ },
26
+ invitedAt: {
27
+ type: Date,
28
+ required: false,
29
+ },
30
+ invitedBy: {
31
+ type: String,
32
+ required: false,
33
+ },
34
+ }, {
35
+ timestamps: { createdAt: true, updatedAt: true },
36
+ versionKey: false,
37
+ });
38
+ exports.DataRoomAccessSchema.index({ dataRoomId: 1, contactId: 1 }, { unique: true });
39
+ exports.DataRoomAccess = mongoose_1.default.model(_models_1.MODEL_NAMES.dataRoomAccess, exports.DataRoomAccessSchema);
@@ -0,0 +1,70 @@
1
+ import mongoose from 'mongoose';
2
+
3
+ import { MODEL_NAMES } from './_models';
4
+ import {
5
+ DATA_ROOM_PERMISSIONS,
6
+ TDataRoomPermission,
7
+ } from './DataRoomContact.model';
8
+
9
+ interface IDataRoomAccess {
10
+ dataRoomId: mongoose.Types.ObjectId;
11
+ contactId: mongoose.Types.ObjectId;
12
+ permission: TDataRoomPermission;
13
+ invitedAt?: Date;
14
+ invitedBy?: string;
15
+ }
16
+
17
+ export type TDataRoomAccessDoc = mongoose.HydratedDocument<IDataRoomAccess>;
18
+
19
+ export interface IDataRoomAccessLean extends IDataRoomAccess {
20
+ _id: mongoose.Types.ObjectId;
21
+ createdAt: Date;
22
+ updatedAt: Date;
23
+ }
24
+
25
+ export interface IDataRoomAccessPlain
26
+ extends Omit<IDataRoomAccess, 'dataRoomId' | 'contactId'> {
27
+ _id: string;
28
+ dataRoomId: string;
29
+ contactId: string;
30
+ createdAt: Date;
31
+ updatedAt: Date;
32
+ }
33
+
34
+ export type TDataRoomAccessModel = mongoose.Model<IDataRoomAccess>;
35
+
36
+ export const DataRoomAccessSchema = new mongoose.Schema<IDataRoomAccess, TDataRoomAccessModel>(
37
+ {
38
+ dataRoomId: {
39
+ type: mongoose.Schema.Types.ObjectId,
40
+ ref: MODEL_NAMES.dataRoom,
41
+ required: true,
42
+ },
43
+ contactId: {
44
+ type: mongoose.Schema.Types.ObjectId,
45
+ ref: MODEL_NAMES.dataRoomContact,
46
+ required: true,
47
+ },
48
+ permission: {
49
+ type: String,
50
+ enum: DATA_ROOM_PERMISSIONS,
51
+ required: true,
52
+ },
53
+ invitedAt: {
54
+ type: Date,
55
+ required: false,
56
+ },
57
+ invitedBy: {
58
+ type: String,
59
+ required: false,
60
+ },
61
+ },
62
+ {
63
+ timestamps: { createdAt: true, updatedAt: true },
64
+ versionKey: false,
65
+ },
66
+ );
67
+
68
+ DataRoomAccessSchema.index({ dataRoomId: 1, contactId: 1 }, { unique: true });
69
+
70
+ export const DataRoomAccess = mongoose.model<IDataRoomAccess, TDataRoomAccessModel>(MODEL_NAMES.dataRoomAccess, DataRoomAccessSchema);
@@ -0,0 +1,51 @@
1
+ /// <reference types="mongoose/types/aggregate" />
2
+ /// <reference types="mongoose/types/callback" />
3
+ /// <reference types="mongoose/types/collection" />
4
+ /// <reference types="mongoose/types/connection" />
5
+ /// <reference types="mongoose/types/cursor" />
6
+ /// <reference types="mongoose/types/document" />
7
+ /// <reference types="mongoose/types/error" />
8
+ /// <reference types="mongoose/types/expressions" />
9
+ /// <reference types="mongoose/types/helpers" />
10
+ /// <reference types="mongoose/types/middlewares" />
11
+ /// <reference types="mongoose/types/indexes" />
12
+ /// <reference types="mongoose/types/models" />
13
+ /// <reference types="mongoose/types/mongooseoptions" />
14
+ /// <reference types="mongoose/types/pipelinestage" />
15
+ /// <reference types="mongoose/types/populate" />
16
+ /// <reference types="mongoose/types/query" />
17
+ /// <reference types="mongoose/types/schemaoptions" />
18
+ /// <reference types="mongoose/types/schematypes" />
19
+ /// <reference types="mongoose/types/session" />
20
+ /// <reference types="mongoose/types/types" />
21
+ /// <reference types="mongoose/types/utility" />
22
+ /// <reference types="mongoose/types/validation" />
23
+ /// <reference types="mongoose/types/virtuals" />
24
+ /// <reference types="mongoose/types/inferschematype" />
25
+ import mongoose from 'mongoose';
26
+ export declare const DATA_ROOM_PERMISSIONS: readonly ["read", "read_upload"];
27
+ export type TDataRoomPermission = (typeof DATA_ROOM_PERMISSIONS)[number];
28
+ interface IDataRoomContact {
29
+ name: string;
30
+ email: string;
31
+ normalizedEmail: string;
32
+ company?: string;
33
+ createdBy: string;
34
+ }
35
+ export type TDataRoomContactDoc = mongoose.HydratedDocument<IDataRoomContact>;
36
+ export interface IDataRoomContactLean extends IDataRoomContact {
37
+ _id: mongoose.Types.ObjectId;
38
+ createdAt: Date;
39
+ updatedAt: Date;
40
+ }
41
+ export interface IDataRoomContactPlain extends IDataRoomContact {
42
+ _id: string;
43
+ createdAt: Date;
44
+ updatedAt: Date;
45
+ }
46
+ export type TDataRoomContactModel = mongoose.Model<IDataRoomContact>;
47
+ export declare const DataRoomContactSchema: mongoose.Schema<IDataRoomContact, TDataRoomContactModel, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, IDataRoomContact, mongoose.Document<unknown, {}, mongoose.FlatRecord<IDataRoomContact>> & mongoose.FlatRecord<IDataRoomContact> & {
48
+ _id: mongoose.Types.ObjectId;
49
+ }>;
50
+ export declare const DataRoomContact: TDataRoomContactModel;
51
+ export {};
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DataRoomContact = exports.DataRoomContactSchema = exports.DATA_ROOM_PERMISSIONS = void 0;
7
+ const mongoose_1 = __importDefault(require("mongoose"));
8
+ const _models_1 = require("./_models");
9
+ exports.DATA_ROOM_PERMISSIONS = ['read', 'read_upload'];
10
+ exports.DataRoomContactSchema = new mongoose_1.default.Schema({
11
+ name: {
12
+ type: String,
13
+ required: true,
14
+ },
15
+ email: {
16
+ type: String,
17
+ required: true,
18
+ },
19
+ normalizedEmail: {
20
+ type: String,
21
+ required: true,
22
+ trim: true,
23
+ lowercase: true,
24
+ },
25
+ company: {
26
+ type: String,
27
+ required: false,
28
+ },
29
+ createdBy: {
30
+ type: String,
31
+ required: true,
32
+ },
33
+ }, {
34
+ timestamps: { createdAt: true, updatedAt: true },
35
+ versionKey: false,
36
+ });
37
+ exports.DataRoomContactSchema.index({ normalizedEmail: 1 }, { unique: true });
38
+ exports.DataRoomContact = mongoose_1.default.model(_models_1.MODEL_NAMES.dataRoomContact, exports.DataRoomContactSchema);
@@ -0,0 +1,66 @@
1
+ import mongoose from 'mongoose';
2
+
3
+ import { MODEL_NAMES } from './_models';
4
+
5
+ export const DATA_ROOM_PERMISSIONS = ['read', 'read_upload'] as const;
6
+
7
+ export type TDataRoomPermission = (typeof DATA_ROOM_PERMISSIONS)[number];
8
+
9
+ interface IDataRoomContact {
10
+ name: string;
11
+ email: string;
12
+ normalizedEmail: string;
13
+ company?: string;
14
+ createdBy: string;
15
+ }
16
+
17
+ export type TDataRoomContactDoc = mongoose.HydratedDocument<IDataRoomContact>;
18
+
19
+ export interface IDataRoomContactLean extends IDataRoomContact {
20
+ _id: mongoose.Types.ObjectId;
21
+ createdAt: Date;
22
+ updatedAt: Date;
23
+ }
24
+
25
+ export interface IDataRoomContactPlain extends IDataRoomContact {
26
+ _id: string;
27
+ createdAt: Date;
28
+ updatedAt: Date;
29
+ }
30
+
31
+ export type TDataRoomContactModel = mongoose.Model<IDataRoomContact>;
32
+
33
+ export const DataRoomContactSchema = new mongoose.Schema<IDataRoomContact, TDataRoomContactModel>(
34
+ {
35
+ name: {
36
+ type: String,
37
+ required: true,
38
+ },
39
+ email: {
40
+ type: String,
41
+ required: true,
42
+ },
43
+ normalizedEmail: {
44
+ type: String,
45
+ required: true,
46
+ trim: true,
47
+ lowercase: true,
48
+ },
49
+ company: {
50
+ type: String,
51
+ required: false,
52
+ },
53
+ createdBy: {
54
+ type: String,
55
+ required: true,
56
+ },
57
+ },
58
+ {
59
+ timestamps: { createdAt: true, updatedAt: true },
60
+ versionKey: false,
61
+ },
62
+ );
63
+
64
+ DataRoomContactSchema.index({ normalizedEmail: 1 }, { unique: true });
65
+
66
+ export const DataRoomContact = mongoose.model<IDataRoomContact, TDataRoomContactModel>(MODEL_NAMES.dataRoomContact, DataRoomContactSchema);