@chevre/domain 23.2.0-alpha.2 → 23.2.0-alpha.20
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.
- package/example/src/chevre/actions/checkAuthorizePaymentActions.ts +55 -0
- package/example/src/chevre/event/importEventsFromCOAByTitle.ts +1 -1
- package/example/src/chevre/eventSeries/migrateEventSeriesOffers.ts +75 -0
- package/example/src/chevre/eventSeries/migrateEventSeriesVideoFormat.ts +80 -0
- package/example/src/chevre/place/adminEntranceGates.ts +68 -0
- package/example/src/chevre/place/checkEntranceGatesCount.ts +82 -0
- package/example/src/chevre/place/findRooms.ts +24 -0
- package/example/src/chevre/place/findSections.ts +28 -0
- package/example/src/chevre/place/migrateSectionIdentifier.ts +92 -0
- package/example/src/chevre/place/seatsJson2csv.ts +63 -0
- package/example/src/chevre/place/upsertSeatsByBranchCode.ts +72 -0
- package/example/src/chevre/reIndex.ts +1 -1
- package/example/src/chevre/roles/addAdminEventSeriesReadPermissionIfNotExists.ts +49 -0
- package/example/src/chevre/roles/addAdminMovieReadPermissionIfNotExists.ts +49 -0
- package/example/src/chevre/roles/addAdminMovieTheaterReadPermissionIfNotExists.ts +34 -0
- package/example/src/chevre/roles/addAdminMovieTheaterWritePermissionIfNotExists.ts +34 -0
- package/example/src/chevre/roles/addAdminRoomReadPermissionIfNotExists.ts +34 -0
- package/example/src/chevre/roles/addAdminRoomWritePermissionIfNotExists.ts +34 -0
- package/lib/chevre/repo/acceptedPaymentMethod.js +14 -10
- package/lib/chevre/repo/aggregateOrder.js +0 -93
- package/lib/chevre/repo/aggregateReservation.d.ts +0 -1
- package/lib/chevre/repo/aggregateReservation.js +0 -2
- package/lib/chevre/repo/creativeWork.js +9 -5
- package/lib/chevre/repo/eventSeries.js +16 -12
- package/lib/chevre/repo/mongoose/schemas/aggregateReservation.js +0 -1
- package/lib/chevre/repo/mongoose/schemas/creativeWork.js +10 -9
- package/lib/chevre/repo/mongoose/schemas/eventSeries.js +10 -0
- package/lib/chevre/repo/place/entranceGate.d.ts +58 -0
- package/lib/chevre/repo/place/entranceGate.js +159 -0
- package/lib/chevre/repo/place/movieTheater.d.ts +5 -2
- package/lib/chevre/repo/place/movieTheater.js +3 -1
- package/lib/chevre/repo/place/screeningRoom.d.ts +38 -31
- package/lib/chevre/repo/place/screeningRoom.js +166 -135
- package/lib/chevre/repo/place/seat.d.ts +47 -45
- package/lib/chevre/repo/place/seat.js +175 -45
- package/lib/chevre/repo/place/section.d.ts +36 -30
- package/lib/chevre/repo/place/section.js +214 -130
- package/lib/chevre/repository.d.ts +8 -0
- package/lib/chevre/repository.js +16 -0
- package/lib/chevre/service/assetTransaction/pay/validateAcceptedPaymentMethodIfNeeded.d.ts +6 -1
- package/lib/chevre/service/assetTransaction/pay/validateAcceptedPaymentMethodIfNeeded.js +26 -4
- package/lib/chevre/service/assetTransaction/pay.d.ts +3 -0
- package/lib/chevre/service/event/processUpdateMovieTheater.d.ts +1 -1
- package/lib/chevre/service/event/processUpdateMovieTheater.js +1 -1
- package/lib/chevre/service/event/saveScreeningEvents.d.ts +1 -1
- package/lib/chevre/service/event/saveScreeningEvents.js +1 -1
- package/lib/chevre/service/offer/event/searchEventTicketOffers.js +7 -4
- package/lib/chevre/service/offer/event/searchOfferAppliesToMovieTicket.js +9 -6
- package/lib/chevre/service/offer/event/searchOffersByIds.js +7 -4
- package/lib/chevre/service/offer/onEventChanged.js +7 -5
- package/lib/chevre/service/payment/any/factory.d.ts +5 -0
- package/lib/chevre/service/payment/any/factory.js +11 -2
- package/lib/chevre/service/payment/any.d.ts +8 -0
- package/lib/chevre/service/payment/any.js +3 -2
- package/lib/chevre/service/task/authorizePayment.js +3 -1
- package/lib/chevre/service/task/createEvent/createEventBySchedule/factory.d.ts +1 -1
- package/lib/chevre/service/task/createEvent/createEventBySchedule/factory.js +2 -2
- package/lib/chevre/service/task/createEvent/createEventBySchedule/schedule2events.js +1 -1
- package/lib/chevre/service/task/onResourceUpdated.js +2 -2
- package/lib/chevre/service/task/publishPaymentUrl.js +3 -1
- package/lib/chevre/service/task/syncResourcesFromCOA.js +1 -1
- package/lib/chevre/service/transaction/placeOrder/confirm/validation/factory.d.ts +2 -2
- package/lib/chevre/service/transaction/placeOrder/confirm/validation.js +3 -1
- package/lib/chevre/service/transaction/placeOrder/confirm.js +3 -1
- package/package.json +3 -2
- package/lib/chevre/service/eventOld.d.ts +0 -60
- package/lib/chevre/service/eventOld.js +0 -864
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.EntranceGateRepo = void 0;
|
|
13
|
+
const mongoose_1 = require("mongoose");
|
|
14
|
+
const factory = require("../../factory");
|
|
15
|
+
const settings_1 = require("../../settings");
|
|
16
|
+
const civicStructure_1 = require("../mongoose/schemas/civicStructure");
|
|
17
|
+
/**
|
|
18
|
+
* 施設の入場ゲートリポジトリ
|
|
19
|
+
*/
|
|
20
|
+
class EntranceGateRepo {
|
|
21
|
+
constructor(connection, operater) {
|
|
22
|
+
this.civicStructureModel = connection.model(civicStructure_1.modelName, (0, civicStructure_1.createSchema)());
|
|
23
|
+
this.operator = operater;
|
|
24
|
+
}
|
|
25
|
+
findEntranceGates(params) {
|
|
26
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
var _a, _b, _c;
|
|
28
|
+
const matchStages = [
|
|
29
|
+
{ $match: { _id: { $eq: new mongoose_1.Types.ObjectId(this.operator.id) } } }
|
|
30
|
+
];
|
|
31
|
+
const projectIdEq = (_b = (_a = params.project) === null || _a === void 0 ? void 0 : _a.id) === null || _b === void 0 ? void 0 : _b.$eq;
|
|
32
|
+
if (typeof projectIdEq === 'string') {
|
|
33
|
+
matchStages.push({ $match: { 'project.id': { $eq: projectIdEq } } });
|
|
34
|
+
}
|
|
35
|
+
const identifierEq = (_c = params.identifier) === null || _c === void 0 ? void 0 : _c.$eq;
|
|
36
|
+
if (typeof identifierEq === 'string') {
|
|
37
|
+
matchStages.push({ $match: { 'hasEntranceGate.identifier': { $eq: identifierEq } } });
|
|
38
|
+
}
|
|
39
|
+
const aggregate = this.civicStructureModel.aggregate([
|
|
40
|
+
{
|
|
41
|
+
$unwind: {
|
|
42
|
+
path: '$hasEntranceGate'
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
...matchStages,
|
|
46
|
+
{ $sort: { 'hasEntranceGate.identifier': factory.sortType.Ascending } },
|
|
47
|
+
{
|
|
48
|
+
$project: {
|
|
49
|
+
_id: 0,
|
|
50
|
+
identifier: '$hasEntranceGate.identifier',
|
|
51
|
+
name: '$hasEntranceGate.name'
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
]);
|
|
55
|
+
const { limit, page } = params;
|
|
56
|
+
if (typeof limit === 'number' && limit > 0) {
|
|
57
|
+
const pageMustBePositive = (typeof page === 'number' && page > 0) ? page : 1;
|
|
58
|
+
aggregate.skip(limit * (pageMustBePositive - 1))
|
|
59
|
+
.limit(limit);
|
|
60
|
+
}
|
|
61
|
+
return aggregate.option({ maxTimeMS: settings_1.MONGO_MAX_TIME_MS })
|
|
62
|
+
.exec();
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
addEntranceGatesByIdentifierIfNotExist(params, options) {
|
|
66
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
const { project } = options;
|
|
68
|
+
const movieTheaterId = new mongoose_1.Types.ObjectId(this.operator.id);
|
|
69
|
+
const bulkWriteOps = [];
|
|
70
|
+
if (Array.isArray(params)) {
|
|
71
|
+
params.forEach(({ $set }) => {
|
|
72
|
+
const { identifier, name } = $set;
|
|
73
|
+
// ゲートを含まない施設があれば
|
|
74
|
+
const filter = {
|
|
75
|
+
'project.id': { $eq: project.id },
|
|
76
|
+
_id: { $eq: movieTheaterId },
|
|
77
|
+
'hasEntranceGate.identifier': { $ne: identifier }
|
|
78
|
+
};
|
|
79
|
+
const creatingEntranceGate = Object.assign({ identifier, typeOf: factory.placeType.Place }, (typeof (name === null || name === void 0 ? void 0 : name.ja) === 'string' || typeof (name === null || name === void 0 ? void 0 : name.en) === 'string') ? { name } : undefined);
|
|
80
|
+
// ゲートをpush
|
|
81
|
+
const update = {
|
|
82
|
+
$push: { hasEntranceGate: creatingEntranceGate }
|
|
83
|
+
};
|
|
84
|
+
const updateOne = { filter, update };
|
|
85
|
+
bulkWriteOps.push({ updateOne });
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
if (bulkWriteOps.length > 0) {
|
|
89
|
+
const bulkWriteResult = yield this.civicStructureModel.bulkWrite(bulkWriteOps, { ordered: false });
|
|
90
|
+
return { bulkWriteResult };
|
|
91
|
+
}
|
|
92
|
+
return {};
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
updateEntranceGatesByIdentifier(params, options) {
|
|
96
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
97
|
+
const { project } = options;
|
|
98
|
+
const movieTheaterId = new mongoose_1.Types.ObjectId(this.operator.id);
|
|
99
|
+
const bulkWriteOps = [];
|
|
100
|
+
if (Array.isArray(params)) {
|
|
101
|
+
params.forEach(({ $set }) => {
|
|
102
|
+
const { identifier, name } = $set;
|
|
103
|
+
// ゲートを含む施設があれば
|
|
104
|
+
const filter = {
|
|
105
|
+
'project.id': { $eq: project.id },
|
|
106
|
+
_id: { $eq: movieTheaterId },
|
|
107
|
+
'hasEntranceGate.identifier': { $eq: identifier }
|
|
108
|
+
};
|
|
109
|
+
const updatingEntranceGate = Object.assign({ identifier, typeOf: factory.placeType.Place }, (typeof (name === null || name === void 0 ? void 0 : name.ja) === 'string' || typeof (name === null || name === void 0 ? void 0 : name.en) === 'string') ? { name } : undefined);
|
|
110
|
+
const update = {
|
|
111
|
+
$set: {
|
|
112
|
+
'hasEntranceGate.$[entranceGate]': updatingEntranceGate
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
// ゲートコードで$set
|
|
116
|
+
const arrayFilters = [
|
|
117
|
+
{ 'entranceGate.identifier': { $eq: identifier } }
|
|
118
|
+
];
|
|
119
|
+
const updateOne = { filter, update, arrayFilters };
|
|
120
|
+
bulkWriteOps.push({ updateOne });
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
if (bulkWriteOps.length > 0) {
|
|
124
|
+
const bulkWriteResult = yield this.civicStructureModel.bulkWrite(bulkWriteOps, { ordered: false });
|
|
125
|
+
return { bulkWriteResult };
|
|
126
|
+
}
|
|
127
|
+
return {};
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
deleteEntranceGatesByIdentifier(params, options) {
|
|
131
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
132
|
+
const { project } = options;
|
|
133
|
+
const movieTheaterId = new mongoose_1.Types.ObjectId(this.operator.id);
|
|
134
|
+
const bulkWriteOps = [];
|
|
135
|
+
if (Array.isArray(params)) {
|
|
136
|
+
params.forEach(({ identifier }) => {
|
|
137
|
+
// ゲートを含む施設があれば
|
|
138
|
+
const filter = {
|
|
139
|
+
'project.id': { $eq: project.id },
|
|
140
|
+
_id: { $eq: movieTheaterId },
|
|
141
|
+
'hasEntranceGate.identifier': { $eq: identifier }
|
|
142
|
+
};
|
|
143
|
+
// ゲートをpull
|
|
144
|
+
const update = {
|
|
145
|
+
$pull: { hasEntranceGate: { identifier: { $eq: identifier } } }
|
|
146
|
+
};
|
|
147
|
+
const updateOne = { filter, update };
|
|
148
|
+
bulkWriteOps.push({ updateOne });
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
if (bulkWriteOps.length > 0) {
|
|
152
|
+
const bulkWriteResult = yield this.civicStructureModel.bulkWrite(bulkWriteOps, { ordered: false });
|
|
153
|
+
return { bulkWriteResult };
|
|
154
|
+
}
|
|
155
|
+
return {};
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
exports.EntranceGateRepo = EntranceGateRepo;
|
|
@@ -5,7 +5,10 @@ export type IScreeningRoomFoundByBranchCode = Pick<factory.place.screeningRoom.I
|
|
|
5
5
|
export type IMovieTheaterIncludingScreeningRooms = Pick<factory.place.movieTheater.IPlace, 'additionalProperty' | 'branchCode' | 'kanaName' | 'name' | 'offers' | 'parentOrganization' | 'project' | 'telephone' | 'typeOf'> & {
|
|
6
6
|
containsPlace: factory.place.screeningRoom.IPlace[];
|
|
7
7
|
};
|
|
8
|
-
type IKeyOfProjection = keyof factory.place.movieTheater.IPlace;
|
|
8
|
+
type IKeyOfProjection = keyof factory.place.movieTheater.IPlace | 'offers.availabilityStartsGraceTime' | 'offers.availabilityEndsGraceTime';
|
|
9
|
+
type IMovieTheaterPublicAttributes = Pick<factory.place.movieTheater.IPlace, 'additionalProperty' | 'branchCode' | 'id' | 'kanaName' | 'name' | 'parentOrganization' | 'project' | 'telephone' | 'typeOf' | 'url'> & {
|
|
10
|
+
offers?: Pick<factory.place.movieTheater.IOffer, 'availabilityEndsGraceTime' | 'availabilityStartsGraceTime'>;
|
|
11
|
+
};
|
|
9
12
|
/**
|
|
10
13
|
* 施設リポジトリ
|
|
11
14
|
*/
|
|
@@ -24,7 +27,7 @@ export declare class MovieTheaterRepo {
|
|
|
24
27
|
* 施設のpublic属性検索
|
|
25
28
|
* 2024-09-18~
|
|
26
29
|
*/
|
|
27
|
-
projectPublicFields(params: factory.place.movieTheater.ISearchConditions): Promise<
|
|
30
|
+
projectPublicFields(params: factory.place.movieTheater.ISearchConditions): Promise<IMovieTheaterPublicAttributes[]>;
|
|
28
31
|
/**
|
|
29
32
|
* 施設検索
|
|
30
33
|
* redefine(2024-09-18~)
|
|
@@ -26,7 +26,9 @@ const settings_1 = require("../../settings");
|
|
|
26
26
|
const civicStructure_1 = require("../mongoose/schemas/civicStructure");
|
|
27
27
|
const AVAILABLE_PROJECT_FIELDS = [
|
|
28
28
|
'additionalProperty', 'branchCode', 'hasEntranceGate', 'kanaName', 'name',
|
|
29
|
-
'offers', 'parentOrganization', 'project', 'telephone', 'typeOf', 'url'
|
|
29
|
+
'offers', 'parentOrganization', 'project', 'telephone', 'typeOf', 'url',
|
|
30
|
+
'offers.availabilityStartsGraceTime',
|
|
31
|
+
'offers.availabilityEndsGraceTime'
|
|
30
32
|
];
|
|
31
33
|
/**
|
|
32
34
|
* 施設リポジトリ
|
|
@@ -1,6 +1,16 @@
|
|
|
1
|
-
import type { Connection } from 'mongoose';
|
|
1
|
+
import type { Connection, FilterQuery, PipelineStage } from 'mongoose';
|
|
2
2
|
import * as factory from '../../factory';
|
|
3
3
|
export type IScreeningRoomFoundByBranchCode = Pick<factory.place.screeningRoom.IPlace, 'typeOf' | 'branchCode' | 'name' | 'containsPlace' | 'seatCount' | 'parentOrganization'>;
|
|
4
|
+
type IMatchStage = PipelineStage.Match;
|
|
5
|
+
interface IUpdateOptions {
|
|
6
|
+
project: {
|
|
7
|
+
id: string;
|
|
8
|
+
};
|
|
9
|
+
parentOrganization?: {
|
|
10
|
+
id?: string;
|
|
11
|
+
};
|
|
12
|
+
movieTheaterCode: string;
|
|
13
|
+
}
|
|
4
14
|
/**
|
|
5
15
|
* ルーム編集時レスポンス
|
|
6
16
|
*/
|
|
@@ -23,47 +33,22 @@ export declare class ScreeningRoomRepo {
|
|
|
23
33
|
private readonly civicStructureModel;
|
|
24
34
|
private readonly placeModel;
|
|
25
35
|
constructor(connection: Connection);
|
|
36
|
+
static CREATE_ROOM_MONGO_CONDITIONS(searchConditions: Omit<factory.place.screeningRoom.ISearchConditions, '$projection' | 'limit' | 'page'>): IMatchStage[];
|
|
26
37
|
saveScreeningRooms4coa(params: IMovieTheaterIncludingScreeningRooms): Promise<void>;
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
branchCode: string;
|
|
30
|
-
};
|
|
31
|
-
parentOrganization?: {
|
|
32
|
-
id?: string;
|
|
33
|
-
};
|
|
34
|
-
}): Promise<IUpdateScreeningRoomResult>;
|
|
35
|
-
updateScreeningRoom(screeningRoom: Omit<factory.place.screeningRoom.IPlace, 'containedInPlace' | 'containsPlace' | 'parentOrganization'> & {
|
|
36
|
-
containedInPlace: {
|
|
37
|
-
branchCode: string;
|
|
38
|
-
};
|
|
39
|
-
parentOrganization?: {
|
|
40
|
-
id?: string;
|
|
41
|
-
};
|
|
42
|
-
}, $unset: any): Promise<IUpdateScreeningRoomResult>;
|
|
38
|
+
createRoom(screeningRoom: Pick<factory.place.screeningRoom.IPlace, 'additionalProperty' | 'address' | 'branchCode' | 'name' | 'openSeatingAllowed'>, options: IUpdateOptions): Promise<IUpdateScreeningRoomResult>;
|
|
39
|
+
updateRoomByBranchCode(screeningRoom: Pick<factory.place.screeningRoom.IPlace, 'additionalProperty' | 'address' | 'branchCode' | 'name' | 'openSeatingAllowed'>, $unset: any, options: IUpdateOptions): Promise<IUpdateScreeningRoomResult>;
|
|
43
40
|
updateScreeningRoomsByContainedInPlaceId(screeningRoom: {
|
|
44
41
|
project: {
|
|
45
42
|
id: string;
|
|
46
43
|
};
|
|
47
44
|
containedInPlace: Pick<factory.place.screeningRoom.IContainedInPlace, 'id' | 'name'>;
|
|
48
45
|
}): Promise<void>;
|
|
49
|
-
|
|
50
|
-
project: {
|
|
51
|
-
id: string;
|
|
52
|
-
};
|
|
53
|
-
parentOrganization?: {
|
|
54
|
-
id?: string;
|
|
55
|
-
};
|
|
46
|
+
deleteRoomByBranchCode(screeningRoom: {
|
|
56
47
|
/**
|
|
57
48
|
* ルームコード
|
|
58
49
|
*/
|
|
59
50
|
branchCode: string;
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* 施設コード
|
|
63
|
-
*/
|
|
64
|
-
branchCode: string;
|
|
65
|
-
};
|
|
66
|
-
}): Promise<IUpdateScreeningRoomResult>;
|
|
51
|
+
}, options: IUpdateOptions): Promise<IUpdateScreeningRoomResult>;
|
|
67
52
|
deleteScreeningRoomsByMovieTheaterId(params: {
|
|
68
53
|
project: {
|
|
69
54
|
id: string;
|
|
@@ -76,6 +61,7 @@ export declare class ScreeningRoomRepo {
|
|
|
76
61
|
};
|
|
77
62
|
}): Promise<import("mongodb").DeleteResult>;
|
|
78
63
|
searchScreeningRooms(searchConditions: factory.place.screeningRoom.ISearchConditions): Promise<Omit<factory.place.screeningRoom.IPlace, 'containsPlace' | 'parentOrganization'>[]>;
|
|
64
|
+
findRooms(params: Omit<factory.place.screeningRoom.ISearchConditions, '$projection'>): Promise<Pick<factory.place.screeningRoom.IPlace, 'additionalProperty' | 'address' | 'branchCode' | 'name' | 'openSeatingAllowed' | 'maximumAttendeeCapacity'>[]>;
|
|
79
65
|
/**
|
|
80
66
|
* セクションと座席も含めたひとつのルームを取得する
|
|
81
67
|
*/
|
|
@@ -114,5 +100,26 @@ export declare class ScreeningRoomRepo {
|
|
|
114
100
|
id: string;
|
|
115
101
|
};
|
|
116
102
|
}): Promise<void>;
|
|
103
|
+
getCursor(conditions: FilterQuery<any>, projection: any): import("mongoose").Cursor<import("mongoose").Document<unknown, {}, import("@chevre/factory/lib/place/screeningRoom").IPlace & {
|
|
104
|
+
description?: any;
|
|
105
|
+
openingHoursSpecification?: any;
|
|
106
|
+
smokingAllowed?: boolean;
|
|
107
|
+
}> & import("@chevre/factory/lib/place/screeningRoom").IPlace & {
|
|
108
|
+
description?: any;
|
|
109
|
+
openingHoursSpecification?: any;
|
|
110
|
+
smokingAllowed?: boolean;
|
|
111
|
+
} & {
|
|
112
|
+
_id: import("mongoose").Types.ObjectId;
|
|
113
|
+
}, import("mongoose").QueryOptions<import("mongoose").Document<unknown, {}, import("@chevre/factory/lib/place/screeningRoom").IPlace & {
|
|
114
|
+
description?: any;
|
|
115
|
+
openingHoursSpecification?: any;
|
|
116
|
+
smokingAllowed?: boolean;
|
|
117
|
+
}> & import("@chevre/factory/lib/place/screeningRoom").IPlace & {
|
|
118
|
+
description?: any;
|
|
119
|
+
openingHoursSpecification?: any;
|
|
120
|
+
smokingAllowed?: boolean;
|
|
121
|
+
} & {
|
|
122
|
+
_id: import("mongoose").Types.ObjectId;
|
|
123
|
+
}>>;
|
|
117
124
|
}
|
|
118
125
|
export {};
|