@positivegrid/pg-mongoose-schema 27.8.4 → 28.0.0-beta.1

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.
Files changed (120) hide show
  1. package/dist/index.d.ts +5 -0
  2. package/dist/index.js +34 -0
  3. package/dist/index.js.map +1 -0
  4. package/dist/models/banks.d.ts +3 -0
  5. package/dist/models/banks.js +33 -0
  6. package/dist/models/banks.js.map +1 -0
  7. package/dist/models/device.d.ts +3 -0
  8. package/dist/models/device.js +48 -0
  9. package/dist/models/device.js.map +1 -0
  10. package/dist/models/featuredList.d.ts +3 -0
  11. package/dist/models/featuredList.js +70 -0
  12. package/dist/models/featuredList.js.map +1 -0
  13. package/dist/models/hardware.d.ts +3 -0
  14. package/dist/models/hardware.js +213 -0
  15. package/dist/models/hardware.js.map +1 -0
  16. package/dist/models/homeConfig.d.ts +3 -0
  17. package/dist/models/homeConfig.js +38 -0
  18. package/dist/models/homeConfig.js.map +1 -0
  19. package/dist/models/oauth.d.ts +3 -0
  20. package/dist/models/oauth.js +48 -0
  21. package/dist/models/oauth.js.map +1 -0
  22. package/dist/models/partner.d.ts +3 -0
  23. package/dist/models/partner.js +165 -0
  24. package/dist/models/partner.js.map +1 -0
  25. package/dist/models/payment.d.ts +3 -0
  26. package/dist/models/payment.js +859 -0
  27. package/dist/models/payment.js.map +1 -0
  28. package/dist/models/pgConfig.d.ts +3 -0
  29. package/dist/models/pgConfig.js +64 -0
  30. package/dist/models/pgConfig.js.map +1 -0
  31. package/dist/models/preset.d.ts +3 -0
  32. package/dist/models/preset.js +802 -0
  33. package/dist/models/preset.js.map +1 -0
  34. package/dist/models/promotion.d.ts +3 -0
  35. package/dist/models/promotion.js +585 -0
  36. package/dist/models/promotion.js.map +1 -0
  37. package/dist/models/redeem.d.ts +3 -0
  38. package/dist/models/redeem.js +26 -0
  39. package/dist/models/redeem.js.map +1 -0
  40. package/dist/models/toneTheme.d.ts +3 -0
  41. package/dist/models/toneTheme.js +29 -0
  42. package/dist/models/toneTheme.js.map +1 -0
  43. package/dist/models/toneThemeFeaturedList.d.ts +3 -0
  44. package/dist/models/toneThemeFeaturedList.js +18 -0
  45. package/dist/models/toneThemeFeaturedList.js.map +1 -0
  46. package/dist/models/user.d.ts +3 -0
  47. package/dist/models/user.js +565 -0
  48. package/dist/models/user.js.map +1 -0
  49. package/dist/models/userTrack.d.ts +3 -0
  50. package/dist/models/userTrack.js +82 -0
  51. package/dist/models/userTrack.js.map +1 -0
  52. package/dist/types/banks.types.d.ts +25 -0
  53. package/dist/types/banks.types.js +3 -0
  54. package/dist/types/banks.types.js.map +1 -0
  55. package/dist/types/device.types.d.ts +41 -0
  56. package/dist/types/device.types.js +3 -0
  57. package/dist/types/device.types.js.map +1 -0
  58. package/dist/types/featuredList.types.d.ts +32 -0
  59. package/dist/types/featuredList.types.js +3 -0
  60. package/dist/types/featuredList.types.js.map +1 -0
  61. package/dist/types/hardware.types.d.ts +123 -0
  62. package/dist/types/hardware.types.js +3 -0
  63. package/dist/types/hardware.types.js.map +1 -0
  64. package/dist/types/homeConfig.types.d.ts +24 -0
  65. package/dist/types/homeConfig.types.js +3 -0
  66. package/dist/types/homeConfig.types.js.map +1 -0
  67. package/dist/types/index.d.ts +17 -0
  68. package/dist/types/index.js +34 -0
  69. package/dist/types/index.js.map +1 -0
  70. package/dist/types/oauth.types.d.ts +38 -0
  71. package/dist/types/oauth.types.js +3 -0
  72. package/dist/types/oauth.types.js.map +1 -0
  73. package/dist/types/partner.types.d.ts +91 -0
  74. package/dist/types/partner.types.js +3 -0
  75. package/dist/types/partner.types.js.map +1 -0
  76. package/dist/types/payment.types.d.ts +304 -0
  77. package/dist/types/payment.types.js +3 -0
  78. package/dist/types/payment.types.js.map +1 -0
  79. package/dist/types/pgConfig.types.d.ts +35 -0
  80. package/dist/types/pgConfig.types.js +3 -0
  81. package/dist/types/pgConfig.types.js.map +1 -0
  82. package/dist/types/preset.types.d.ts +110 -0
  83. package/dist/types/preset.types.js +3 -0
  84. package/dist/types/preset.types.js.map +1 -0
  85. package/dist/types/promotion.types.d.ts +282 -0
  86. package/dist/types/promotion.types.js +3 -0
  87. package/dist/types/promotion.types.js.map +1 -0
  88. package/dist/types/redeem.types.d.ts +16 -0
  89. package/dist/types/redeem.types.js +3 -0
  90. package/dist/types/redeem.types.js.map +1 -0
  91. package/dist/types/toneTheme.types.d.ts +16 -0
  92. package/dist/types/toneTheme.types.js +3 -0
  93. package/dist/types/toneTheme.types.js.map +1 -0
  94. package/dist/types/toneThemeFeaturedList.types.d.ts +9 -0
  95. package/dist/types/toneThemeFeaturedList.types.js +3 -0
  96. package/dist/types/toneThemeFeaturedList.types.js.map +1 -0
  97. package/dist/types/user.types.d.ts +166 -0
  98. package/dist/types/user.types.js +6 -0
  99. package/dist/types/user.types.js.map +1 -0
  100. package/dist/types/userTrack.types.d.ts +39 -0
  101. package/dist/types/userTrack.types.js +12 -0
  102. package/dist/types/userTrack.types.js.map +1 -0
  103. package/package.json +38 -12
  104. package/index.js +0 -28
  105. package/models/banks.js +0 -42
  106. package/models/device.js +0 -51
  107. package/models/featuredList.js +0 -91
  108. package/models/hardware.js +0 -256
  109. package/models/homeConfig.js +0 -86
  110. package/models/oauth.js +0 -52
  111. package/models/partner.js +0 -265
  112. package/models/payment.js +0 -899
  113. package/models/pgConfig.js +0 -88
  114. package/models/preset.js +0 -845
  115. package/models/promotion.js +0 -590
  116. package/models/redeem.js +0 -26
  117. package/models/toneTheme.js +0 -78
  118. package/models/toneThemeFeaturedList.js +0 -49
  119. package/models/user.js +0 -639
  120. package/models/userTrack.js +0 -107
@@ -0,0 +1,304 @@
1
+ import type { Document, Model, Types } from "mongoose";
2
+ export interface IOemSupportLicense {
3
+ support_type: {
4
+ product_name: string;
5
+ type: string;
6
+ };
7
+ display_name: string;
8
+ }
9
+ export interface IOemResult {
10
+ oem_name: string;
11
+ license_name: string;
12
+ }
13
+ export interface IProduct {
14
+ sku: string;
15
+ name: string;
16
+ display_name: string;
17
+ description: string;
18
+ price: number;
19
+ product_type: number;
20
+ status: number;
21
+ quota: number;
22
+ addition: number;
23
+ version: string;
24
+ max_purchase?: number;
25
+ can_upgrade_addition?: boolean;
26
+ can_free_trial?: boolean;
27
+ upgrade?: {
28
+ to?: Types.ObjectId;
29
+ price?: number;
30
+ description?: string;
31
+ };
32
+ upgrade_metadata?: Array<{
33
+ to?: Types.ObjectId;
34
+ price?: number;
35
+ description?: string;
36
+ }>;
37
+ discount?: unknown;
38
+ gift_list?: Types.ObjectId[] | null;
39
+ require_list?: unknown;
40
+ require_one_list?: Types.ObjectId[];
41
+ require_one_bundles?: Types.ObjectId[];
42
+ free_upgrade_list?: Array<{
43
+ has?: Types.ObjectId;
44
+ to?: Types.ObjectId;
45
+ }>;
46
+ remap_product_sku?: string;
47
+ extra_payment_fields?: unknown;
48
+ created_on: Date;
49
+ updated_on: Date;
50
+ }
51
+ export interface IProductDocument extends Document, IProduct {
52
+ }
53
+ export interface IProductModel extends Model<IProductDocument> {
54
+ getProductsByCondition(condition?: Record<string, unknown>): Promise<IProductDocument[]>;
55
+ createProduct(data: Partial<IProduct>): Promise<IProductDocument>;
56
+ }
57
+ export interface ILicense {
58
+ user_id: Types.ObjectId;
59
+ product_id: Types.ObjectId;
60
+ bc_order_id?: number | null;
61
+ bc_coupon?: string[] | null;
62
+ quota: number;
63
+ from_redeem?: string | null;
64
+ redeem_id?: Types.ObjectId;
65
+ from_bundle?: Types.ObjectId | null;
66
+ from_hardware?: Types.ObjectId | null;
67
+ from_gift?: Types.ObjectId | null;
68
+ from_guest?: Types.ObjectId | null;
69
+ from_remap?: Types.ObjectId;
70
+ from_free_trial?: Types.ObjectId | null;
71
+ upgrade_to?: Types.ObjectId | null;
72
+ price_amount?: number | null;
73
+ due_date?: Date | null;
74
+ iap_device_id?: string | null;
75
+ iap_source?: string | null;
76
+ metadata?: string | null;
77
+ custom_metadata?: Record<string, unknown> | null;
78
+ status: number;
79
+ created_on: Date;
80
+ updated_on: Date;
81
+ }
82
+ export interface ILicenseDocument extends Document, ILicense {
83
+ product: Types.ObjectId;
84
+ oem: IOemResult | null;
85
+ free_trial_meta: {
86
+ is_free_trial: true;
87
+ start_date: Date;
88
+ end_date: Date | null | undefined;
89
+ } | null;
90
+ }
91
+ export interface ILicenseQueryParams {
92
+ [key: string]: unknown;
93
+ }
94
+ export interface IGetUserPurchaseOpts {
95
+ isLean?: boolean;
96
+ [key: string]: unknown;
97
+ }
98
+ export interface ILicenseModel extends Model<ILicenseDocument> {
99
+ hasLicenseOrNot(userId: Types.ObjectId | string, productId: Types.ObjectId | string): Promise<void>;
100
+ hasLicensePromise(userId: Types.ObjectId | string, productId: Types.ObjectId | string): Promise<ILicenseDocument | null>;
101
+ getLicenseByRedeem(redeem: string): Promise<ILicenseDocument[]>;
102
+ getLicenseByRedeemPromise(redeem: string, userId: string): Promise<ILicenseDocument[]>;
103
+ getUserLicense(query: ILicenseQueryParams): Promise<ILicenseDocument[]>;
104
+ getUserLicensePromise(query: ILicenseQueryParams): Promise<ILicenseDocument[]>;
105
+ getUserPurchase(query: ILicenseQueryParams, productType: string): Promise<ILicenseDocument[]>;
106
+ getUserPurchasePromise(query: ILicenseQueryParams, productType: string, opts?: IGetUserPurchaseOpts): Promise<ILicenseDocument[]>;
107
+ getUserIapLicenses(userId: Types.ObjectId, iapIds: Types.ObjectId[]): Promise<unknown[]>;
108
+ createTrialLicense(data: Partial<ILicense> & {
109
+ due_date: string | Date;
110
+ }): Promise<ILicenseDocument>;
111
+ createLicense(data: Partial<ILicense>): Promise<ILicenseDocument>;
112
+ createLicensePromise(data: Partial<ILicense>): Promise<ILicenseDocument>;
113
+ removeLicense(licenseId: Types.ObjectId | string): Promise<ILicenseDocument | null>;
114
+ }
115
+ export interface ILicenseUpgradeMeta {
116
+ bc_cart_id: string;
117
+ user_id: Types.ObjectId;
118
+ upgrade_from?: Types.ObjectId | null;
119
+ upgrade_to?: Types.ObjectId | null;
120
+ upgrade_bundle_from?: Types.ObjectId[];
121
+ upgrade_bundle_to?: Types.ObjectId | null;
122
+ status: number;
123
+ created_on: Date;
124
+ }
125
+ export interface ILicenseUpgradeMetaDocument extends Document, ILicenseUpgradeMeta {
126
+ }
127
+ export interface ILicenseUpgradeMetaModel extends Model<ILicenseUpgradeMetaDocument> {
128
+ saveUpgradeOrder(bcCartId: string, userId: Types.ObjectId | string, upgradeFromProductId: Types.ObjectId | string, upgradeToProductId: Types.ObjectId | string): Promise<ILicenseUpgradeMetaDocument | null>;
129
+ saveBundleUpgradeOrder(bcCartId: string, userId: Types.ObjectId | string, userOwnedProductIds: Types.ObjectId[], upgradeToBundleId: Types.ObjectId | string): Promise<ILicenseUpgradeMetaDocument | null>;
130
+ updateLicenseUpgradeStatusIfExist(bcCartId: string, userId: Types.ObjectId | string, targetProductId: Types.ObjectId | string): Promise<unknown>;
131
+ updateBundleUpgradeStatusIfExist(bcCartId: string, userId: Types.ObjectId | string, targetBundleId: Types.ObjectId | string): Promise<boolean>;
132
+ }
133
+ export interface IBundle {
134
+ name: string;
135
+ display_name: string;
136
+ display_detail?: string | null;
137
+ description: unknown[];
138
+ price: number;
139
+ sku?: string | null;
140
+ products?: Types.ObjectId[];
141
+ validate_list?: Types.ObjectId[];
142
+ discount?: unknown;
143
+ partial_purchase?: Array<{
144
+ product_id?: unknown;
145
+ exclude_product_ids?: Types.ObjectId[];
146
+ discount_price?: number;
147
+ discount_type?: string;
148
+ }>;
149
+ require_list?: unknown;
150
+ require_one_list?: unknown;
151
+ extra_payment_fields?: unknown;
152
+ status: number;
153
+ created_on: Date;
154
+ updated_on: Date;
155
+ }
156
+ export interface IBundleDocument extends Document, IBundle {
157
+ }
158
+ export type IBundleModel = Model<IBundleDocument>;
159
+ export interface IDiscount {
160
+ own_product: Types.ObjectId;
161
+ discount_product?: Types.ObjectId;
162
+ discount_bundle?: Types.ObjectId;
163
+ discount_type: string;
164
+ discount_amount: number;
165
+ start_date?: Date | null;
166
+ end_date?: Date | null;
167
+ status: boolean;
168
+ created_on: Date;
169
+ }
170
+ export interface IDiscountDocument extends Document, IDiscount {
171
+ }
172
+ export type IDiscountModel = Model<IDiscountDocument>;
173
+ export interface IEduDomain {
174
+ domain: string;
175
+ name: string;
176
+ status: number;
177
+ }
178
+ export interface IEduDomainDocument extends Document, IEduDomain {
179
+ }
180
+ export type IEduDomainModel = Model<IEduDomainDocument>;
181
+ export interface IEduUser {
182
+ edu_domain_id?: Types.ObjectId;
183
+ user_id: Types.ObjectId;
184
+ edu_email: string;
185
+ verify_token?: string | null;
186
+ university_field?: string | null;
187
+ coupon?: string | null;
188
+ status: number;
189
+ created_on: Date;
190
+ }
191
+ export interface IEduUserDocument extends Document, IEduUser {
192
+ }
193
+ export type IEduUserModel = Model<IEduUserDocument>;
194
+ export interface IGuestCheckout {
195
+ email: string;
196
+ status: number;
197
+ bc_order_id?: number | null;
198
+ user_id?: Types.ObjectId | null;
199
+ purchased_items?: Array<{
200
+ sku: string;
201
+ number: number;
202
+ }>;
203
+ store_code?: string;
204
+ created_on: Date;
205
+ updated_on: Date;
206
+ }
207
+ export interface IGuestCheckoutDocument extends Document, IGuestCheckout {
208
+ }
209
+ export type IGuestCheckoutModel = Model<IGuestCheckoutDocument>;
210
+ export interface ICnCoupon {
211
+ code: string;
212
+ user_id?: Types.ObjectId;
213
+ stripe_order_id?: string;
214
+ multiple_use?: boolean;
215
+ value?: number;
216
+ ratio?: number;
217
+ type: number;
218
+ status: number;
219
+ created_on: Date;
220
+ expired_on?: Date;
221
+ }
222
+ export interface ICnCouponDocument extends Document, ICnCoupon {
223
+ calculateFinalPrice(price: number): number;
224
+ calculateDeducted(price: number): number;
225
+ consumeCoupon(opts: {
226
+ orderId: string;
227
+ }): Promise<ICnCouponDocument | undefined>;
228
+ }
229
+ export interface ICnCouponModel extends Model<ICnCouponDocument> {
230
+ createCoupon(opts: {
231
+ value?: number;
232
+ user?: {
233
+ _id: Types.ObjectId | string;
234
+ };
235
+ }): Promise<ICnCouponDocument>;
236
+ findCoupon(code: string): Promise<ICnCouponDocument | null>;
237
+ }
238
+ export interface ICnSalesMeta {
239
+ product_id: Types.ObjectId;
240
+ status: number;
241
+ price: number;
242
+ discount?: number | null;
243
+ gift?: Types.ObjectId[] | null;
244
+ date: Date;
245
+ }
246
+ export interface ICnSalesMetaDocument extends Document, ICnSalesMeta {
247
+ }
248
+ export interface ICnSalesMetaModel extends Model<ICnSalesMetaDocument> {
249
+ getAllSaleItems(query?: Record<string, unknown>): Promise<unknown[]>;
250
+ }
251
+ export interface IAdditionalPurchase {
252
+ main_product_sku: string[];
253
+ rule: string;
254
+ category?: string | null;
255
+ multiplier: number;
256
+ additional_purchase: {
257
+ sku: string;
258
+ disount_type: string;
259
+ disount_price: number;
260
+ };
261
+ include_country?: string[];
262
+ exclude_country?: string[];
263
+ status: number;
264
+ created_on: Date;
265
+ }
266
+ export interface IAdditionalPurchaseDocument extends Document, IAdditionalPurchase {
267
+ }
268
+ export interface IAdditionalPurchaseModel extends Model<IAdditionalPurchaseDocument> {
269
+ canPurchaseAdditional(ownedSku: string[], additionalSku: string[]): Promise<boolean>;
270
+ verifyAdditionalPurchase(skus: string[]): Promise<boolean>;
271
+ }
272
+ export interface IBcCartUpdateStatus {
273
+ bc_cart_id: string;
274
+ cart_item_id: string;
275
+ status: number;
276
+ created_on: Date;
277
+ }
278
+ export interface IBcCartUpdateStatusDocument extends Document, IBcCartUpdateStatus {
279
+ }
280
+ export interface IBcCartUpdateStatusModel extends Model<IBcCartUpdateStatusDocument> {
281
+ initCartUpdate(cartId: string, itemId: string): Promise<IBcCartUpdateStatusDocument | null>;
282
+ finishCartUpdate(cartId: string, itemId: string): Promise<IBcCartUpdateStatusDocument | null>;
283
+ handleCartUpdateError(cartId: string, itemId: string): Promise<IBcCartUpdateStatusDocument | null>;
284
+ }
285
+ export interface IUserOrder {
286
+ orderId: number;
287
+ customerId?: number;
288
+ statusId?: number;
289
+ country?: string;
290
+ totalPrice?: number;
291
+ purchaseItems?: Array<{
292
+ sku?: string;
293
+ name?: string;
294
+ quantity?: number;
295
+ price?: number;
296
+ }>;
297
+ orderData?: unknown;
298
+ createdAt: Date;
299
+ updatedAt: Date;
300
+ }
301
+ export interface IUserOrderDocument extends Document, IUserOrder {
302
+ }
303
+ export type IUserOrderModel = Model<IUserOrderDocument>;
304
+ //# sourceMappingURL=payment.types.d.ts.map
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=payment.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payment.types.js","sourceRoot":"","sources":["../../src/types/payment.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,35 @@
1
+ import type { Document, Model, Types } from "mongoose";
2
+ export interface IPgConfigDocument extends Document {
3
+ config_key: string;
4
+ config_value: unknown;
5
+ created_on: Date;
6
+ }
7
+ export interface IPgConfigModel extends Model<IPgConfigDocument> {
8
+ getConfigByKey(configKey: string): Promise<IPgConfigDocument | null>;
9
+ createOrUpdateConfig(key: string, value: unknown, doMerge?: boolean): Promise<IPgConfigDocument>;
10
+ deleteConfig(key: string): Promise<IPgConfigDocument>;
11
+ }
12
+ export interface IPgLoggingDocument extends Document {
13
+ type: string;
14
+ log_id: string;
15
+ log_content: unknown;
16
+ user_id: Types.ObjectId | null;
17
+ created_on: Date;
18
+ }
19
+ export type IPgLoggingModel = Model<IPgLoggingDocument>;
20
+ export interface IKeyValueDocument extends Document {
21
+ key: string;
22
+ value: unknown;
23
+ created_on: Date;
24
+ expire_at: Date | null;
25
+ }
26
+ export type IKeyValueModel = Model<IKeyValueDocument>;
27
+ export interface ICrashDataDocument extends Document {
28
+ product: string;
29
+ crash_data: unknown;
30
+ email: string | null;
31
+ crash_file: string;
32
+ created_on: Date;
33
+ }
34
+ export type ICrashDataModel = Model<ICrashDataDocument>;
35
+ //# sourceMappingURL=pgConfig.types.d.ts.map
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=pgConfig.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pgConfig.types.js","sourceRoot":"","sources":["../../src/types/pgConfig.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,110 @@
1
+ import type { Document, Model, Types } from "mongoose";
2
+ export interface PresetRequest {
3
+ query: Record<string, any>;
4
+ }
5
+ export interface IPresetVersion {
6
+ major: number;
7
+ minor: number;
8
+ }
9
+ export interface IPresetDocument extends Document {
10
+ name: string;
11
+ creator_id: Types.ObjectId;
12
+ preset_for: string;
13
+ status: number;
14
+ description?: string;
15
+ tags: string[] | null;
16
+ is_featured: boolean;
17
+ category?: string;
18
+ active_effects?: string;
19
+ preset_data?: string;
20
+ preset_features: Record<string, unknown> | null;
21
+ version: IPresetVersion;
22
+ preset_meta: unknown;
23
+ preset_scene: unknown[];
24
+ license_tier: string[] | null;
25
+ num_comments: number;
26
+ num_downloads: number;
27
+ num_likes: number;
28
+ rating_sum: number;
29
+ rating_avg: number;
30
+ rating_count: number;
31
+ image_url?: string;
32
+ thumb_url?: string;
33
+ signal_chain_type?: "in1" | "in2";
34
+ created_on: Date;
35
+ updated_on: Date;
36
+ preset_version: string;
37
+ }
38
+ export interface IPresetGetOneOpts {
39
+ sort?: Record<string, 1 | -1>;
40
+ select?: string;
41
+ }
42
+ export interface IPresetModel extends Model<IPresetDocument> {
43
+ getPresetByUserId(userId: string | Types.ObjectId): Promise<IPresetDocument[]>;
44
+ getPresetByQuery(req: PresetRequest, opts?: {
45
+ full?: boolean;
46
+ }): Promise<any[]>;
47
+ getPresetsBySearch(req: PresetRequest): Promise<any[]>;
48
+ getPresetsList(query: Record<string, any>, sort: Record<string, number>, req: PresetRequest): Promise<IPresetDocument[]>;
49
+ getPresetsListPromise(query: Record<string, any>, sort: Record<string, number>, req: PresetRequest): Promise<IPresetDocument[]>;
50
+ getMyPresets(query: Record<string, any>, sort: Record<string, number>, req: PresetRequest): Promise<IPresetDocument[]>;
51
+ getOnePresetByCondition(query: Record<string, any>, opts: IPresetGetOneOpts): Promise<IPresetDocument | null>;
52
+ getSinglePreset(id: string | Types.ObjectId): Promise<IPresetDocument | null>;
53
+ getValidSinglePreset(id: string | Types.ObjectId): Promise<IPresetDocument | null>;
54
+ }
55
+ export interface IPresetCommentDocument extends Document {
56
+ user_id: Types.ObjectId;
57
+ preset_id: Types.ObjectId;
58
+ comment_text: string;
59
+ preset_for?: string;
60
+ status: number;
61
+ date_comment: Date;
62
+ }
63
+ export interface IPresetCommentModel extends Model<IPresetCommentDocument> {
64
+ getPresetComments(presetId: string, req: PresetRequest): Promise<any[]>;
65
+ }
66
+ export interface IPresetLikeDocument extends Document {
67
+ user_id: Types.ObjectId;
68
+ preset_id: Types.ObjectId;
69
+ preset_for?: string;
70
+ date_like: Date;
71
+ }
72
+ export interface IPresetLikeModel extends Model<IPresetLikeDocument> {
73
+ getCountByPresetCondition(query: Record<string, any>, condition: string): Promise<number>;
74
+ getPresetLikeList(query: Record<string, any>, sort: Record<string, number>, req: PresetRequest): Promise<any[]>;
75
+ getPresetLikeListPromise(query: Record<string, any>, sort: Record<string, number>, req: PresetRequest): Promise<any[]>;
76
+ }
77
+ export interface IPresetDownloadDocument extends Document {
78
+ user_id: Types.ObjectId;
79
+ preset_id: Types.ObjectId;
80
+ preset_for: string;
81
+ date_download: Date;
82
+ updated_on: Date;
83
+ }
84
+ export type IPresetDownloadModel = Model<IPresetDownloadDocument>;
85
+ export interface IPopularPresetListDocument extends Document {
86
+ preset_for: string;
87
+ popular_range: string;
88
+ popular_preset_list: Types.ObjectId[];
89
+ created_on: Date;
90
+ }
91
+ export type IPopularPresetListModel = Model<IPopularPresetListDocument>;
92
+ export interface IFakePresetLikeDocument extends Document {
93
+ preset_id: Types.ObjectId;
94
+ likes: number;
95
+ }
96
+ export type IFakePresetLikeModel = Model<IFakePresetLikeDocument>;
97
+ export interface IPresetTagsMetaDocument extends Document {
98
+ name: string;
99
+ count: number;
100
+ preset_for: string;
101
+ created_on: Date;
102
+ }
103
+ export type IPresetTagsMetaModel = Model<IPresetTagsMetaDocument>;
104
+ export interface IPresetSongMappingDocument extends Document {
105
+ preset_id: Types.ObjectId;
106
+ song_id: string;
107
+ created_on: Date;
108
+ }
109
+ export type IPresetSongMappingModel = Model<IPresetSongMappingDocument>;
110
+ //# sourceMappingURL=preset.types.d.ts.map
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=preset.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preset.types.js","sourceRoot":"","sources":["../../src/types/preset.types.ts"],"names":[],"mappings":""}