@escapenavigator/types 2.0.14 → 2.0.16

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 (169) hide show
  1. package/dist/certificate-v2/certificate-design.ro.d.ts +1 -0
  2. package/dist/certificate-v2/certificate-design.ro.js +4 -0
  3. package/dist/certificate-v2/create-certificate-design.dto.d.ts +1 -0
  4. package/dist/certificate-v2/create-certificate-design.dto.js +6 -0
  5. package/dist/city-attraction/attraction-content-languages.d.ts +5 -0
  6. package/dist/city-attraction/attraction-content-languages.js +14 -0
  7. package/dist/city-attraction/attraction-content-prompt-version.d.ts +1 -0
  8. package/dist/city-attraction/attraction-content-prompt-version.js +5 -0
  9. package/dist/city-attraction/attraction-content.d.ts +24 -0
  10. package/dist/city-attraction/attraction-route-meta.d.ts +21 -0
  11. package/dist/city-attraction/attraction-triage.d.ts +29 -0
  12. package/dist/city-attraction/attraction-triage.js +41 -0
  13. package/dist/city-attraction/city-attraction-artifact.ro.d.ts +19 -0
  14. package/dist/city-attraction/city-attraction-artifact.ro.js +2 -0
  15. package/dist/city-attraction/city-attraction-locale.ro.d.ts +15 -0
  16. package/dist/city-attraction/city-attraction-locale.ro.js +2 -0
  17. package/dist/city-attraction/city-attraction.ro.d.ts +49 -0
  18. package/dist/city-attraction/city-attraction.ro.js +2 -0
  19. package/dist/city-attraction/create-city-attraction.dto.d.ts +40 -0
  20. package/dist/city-attraction/create-city-attraction.dto.js +215 -0
  21. package/dist/city-attraction/enum/attraction-artifact-kind.enum.d.ts +13 -0
  22. package/dist/city-attraction/enum/attraction-artifact-kind.enum.js +17 -0
  23. package/dist/city-attraction/enum/attraction-category.enum.d.ts +21 -0
  24. package/dist/city-attraction/enum/attraction-category.enum.js +25 -0
  25. package/dist/city-attraction/enum/attraction-fame.enum.d.ts +10 -0
  26. package/dist/city-attraction/enum/attraction-fame.enum.js +14 -0
  27. package/dist/city-attraction/enum/attraction-fun-fact-kind.enum.d.ts +4 -0
  28. package/dist/city-attraction/enum/attraction-fun-fact-kind.enum.js +8 -0
  29. package/dist/city-attraction/enum/attraction-indoor-outdoor.enum.d.ts +5 -0
  30. package/dist/city-attraction/enum/attraction-indoor-outdoor.enum.js +9 -0
  31. package/dist/city-attraction/enum/attraction-locale-status.enum.d.ts +11 -0
  32. package/dist/city-attraction/enum/attraction-locale-status.enum.js +15 -0
  33. package/dist/city-attraction/enum/attraction-review-status.enum.d.ts +10 -0
  34. package/dist/city-attraction/enum/attraction-review-status.enum.js +14 -0
  35. package/dist/city-attraction/enum/attraction-route-role.enum.d.ts +11 -0
  36. package/dist/city-attraction/enum/attraction-route-role.enum.js +15 -0
  37. package/dist/city-attraction/enum/attraction-source.enum.d.ts +12 -0
  38. package/dist/city-attraction/enum/attraction-source.enum.js +16 -0
  39. package/dist/city-attraction/moderate-city-attraction.dto.d.ts +5 -0
  40. package/dist/{partners-portal/admin/admin-moderate-portal-story.dto.js → city-attraction/moderate-city-attraction.dto.js} +7 -13
  41. package/dist/city-attraction/update-city-attraction.dto.d.ts +5 -0
  42. package/dist/city-attraction/update-city-attraction.dto.js +8 -0
  43. package/dist/city-attraction/upsert-city-attraction-artifact.dto.d.ts +19 -0
  44. package/dist/city-attraction/upsert-city-attraction-artifact.dto.js +104 -0
  45. package/dist/city-attraction/upsert-city-attraction-locale.dto.d.ts +14 -0
  46. package/dist/city-attraction/upsert-city-attraction-locale.dto.js +62 -0
  47. package/dist/city-person/city-person-attraction-link.dto.d.ts +12 -0
  48. package/dist/city-person/city-person-attraction-link.dto.js +61 -0
  49. package/dist/city-person/city-person-attraction-link.ro.d.ts +15 -0
  50. package/dist/city-person/city-person-attraction-link.ro.js +2 -0
  51. package/dist/city-person/city-person-locale.ro.d.ts +15 -0
  52. package/dist/city-person/city-person-locale.ro.js +2 -0
  53. package/dist/city-person/city-person.ro.d.ts +31 -0
  54. package/dist/city-person/city-person.ro.js +2 -0
  55. package/dist/city-person/create-city-person.dto.d.ts +24 -0
  56. package/dist/city-person/create-city-person.dto.js +128 -0
  57. package/dist/city-person/enum/person-attraction-role.enum.d.ts +8 -0
  58. package/dist/city-person/enum/person-attraction-role.enum.js +12 -0
  59. package/dist/city-person/enum/person-domain.enum.d.ts +5 -0
  60. package/dist/city-person/enum/person-domain.enum.js +9 -0
  61. package/dist/city-person/enum/person-fact-kind.enum.d.ts +7 -0
  62. package/dist/city-person/enum/person-fact-kind.enum.js +11 -0
  63. package/dist/city-person/enum/person-locale-status.enum.d.ts +8 -0
  64. package/dist/city-person/enum/person-locale-status.enum.js +12 -0
  65. package/dist/city-person/enum/person-occupation.enum.d.ts +21 -0
  66. package/dist/city-person/enum/person-occupation.enum.js +25 -0
  67. package/dist/city-person/enum/person-source.enum.d.ts +7 -0
  68. package/dist/city-person/enum/person-source.enum.js +11 -0
  69. package/dist/city-person/person-attraction-facts.d.ts +3 -0
  70. package/dist/city-person/person-attraction-facts.js +2 -0
  71. package/dist/city-person/person-content-languages.d.ts +5 -0
  72. package/dist/city-person/person-content-languages.js +14 -0
  73. package/dist/city-person/person-content-prompt-version.d.ts +2 -0
  74. package/dist/city-person/person-content-prompt-version.js +5 -0
  75. package/dist/city-person/person-locale-fact.d.ts +7 -0
  76. package/dist/city-person/person-locale-fact.js +2 -0
  77. package/dist/city-person/update-city-person.dto.d.ts +5 -0
  78. package/dist/city-person/update-city-person.dto.js +8 -0
  79. package/dist/city-person/upsert-city-person-locale.dto.d.ts +21 -0
  80. package/dist/{partners-portal/create-portal-story.dto.js → city-person/upsert-city-person-locale.dto.js} +35 -32
  81. package/dist/city-person/wikidata-autolink.d.ts +23 -0
  82. package/dist/city-person/wikidata-autolink.js +23 -0
  83. package/dist/city-quest/city-quest-content.d.ts +19 -5
  84. package/dist/city-quest/city-quest-locale-content.d.ts +35 -0
  85. package/dist/city-quest/city-quest-locale-content.js +2 -0
  86. package/dist/city-quest/city-quest-locale.ro.d.ts +12 -0
  87. package/dist/city-quest/city-quest-locale.ro.js +2 -0
  88. package/dist/city-quest/city-quest.ro.d.ts +11 -4
  89. package/dist/city-quest/city-quest.ro.js +17 -1
  90. package/dist/city-quest/enum/city-quest-locale-status.enum.d.ts +11 -0
  91. package/dist/city-quest/enum/city-quest-locale-status.enum.js +15 -0
  92. package/dist/city-quest/enum/city-quest-status.enum.d.ts +10 -5
  93. package/dist/city-quest/enum/city-quest-status.enum.js +9 -4
  94. package/dist/city-quest/quest-content-languages.d.ts +5 -0
  95. package/dist/city-quest/quest-content-languages.js +14 -0
  96. package/dist/city-quest/update-city-quest-content.dto.d.ts +5 -0
  97. package/dist/city-quest/update-city-quest-content.dto.js +23 -0
  98. package/dist/city-quest/update-city-quest-stop.dto.d.ts +9 -0
  99. package/dist/city-quest/update-city-quest-stop.dto.js +45 -0
  100. package/dist/city-quest/update-city-quest.dto.d.ts +6 -1
  101. package/dist/city-quest/update-city-quest.dto.js +12 -0
  102. package/dist/city-quest/upsert-city-quest-locale.dto.d.ts +10 -0
  103. package/dist/{partners-portal/update-portal-story.dto.js → city-quest/upsert-city-quest-locale.dto.js} +14 -17
  104. package/dist/openapi/certificates-v2/openapi-certificate-design.ro.d.ts +1 -0
  105. package/dist/openapi/certificates-v2/openapi-certificate-design.ro.js +4 -0
  106. package/dist/openapi/city-player/city-player.ro.d.ts +27 -0
  107. package/dist/openapi/city-player/free-route.d.ts +35 -0
  108. package/dist/openapi/city-player/free-route.js +2 -0
  109. package/dist/openapi/city-quest/play-state.ro.d.ts +15 -0
  110. package/dist/openapi/widget/openapi-resolve-promocode.ro.d.ts +2 -0
  111. package/dist/openapi/widget/openapi-resolve-promocode.ro.js +4 -0
  112. package/dist/openapi/widget/openapi-widget-info.ro.d.ts +6 -0
  113. package/dist/openapi/widget/openapi-widget-info.ro.js +4 -0
  114. package/dist/partners-portal/admin/admin-portal-partner.ro.d.ts +3 -3
  115. package/dist/partners-portal/create-partner-attraction.dto.d.ts +33 -0
  116. package/dist/partners-portal/create-partner-attraction.dto.js +173 -0
  117. package/dist/partners-portal/partner-city-quest.dto.d.ts +31 -0
  118. package/dist/partners-portal/partner-city-quest.dto.js +160 -0
  119. package/dist/partners-portal/partner-city-quest.ro.d.ts +11 -0
  120. package/dist/partners-portal/partner-city-quest.ro.js +2 -0
  121. package/dist/partners-portal/portal-stats.ro.d.ts +6 -6
  122. package/dist/partners-portal/update-partner-attraction.dto.d.ts +11 -0
  123. package/dist/partners-portal/update-partner-attraction.dto.js +35 -0
  124. package/dist/profile/marketing-automation/marketing-automation-capabilities.js +2 -1
  125. package/dist/profile/marketing-automation/marketing-automation-config.dto.d.ts +2 -1
  126. package/dist/profile/notification-chanel/notification-chanel.ro.d.ts +3 -0
  127. package/dist/profile/notification-chanel/notification-chanel.ro.js +6 -0
  128. package/dist/profile/notification-chanel/test-notification-chanel.dto.d.ts +6 -0
  129. package/dist/profile/notification-chanel/test-notification-chanel.dto.js +29 -0
  130. package/dist/profile/notification-chanel/webhook-health.ro.d.ts +36 -0
  131. package/dist/profile/notification-chanel/webhook-health.ro.js +54 -0
  132. package/dist/profile/notification-chanel/webhook-test-result.ro.d.ts +11 -0
  133. package/dist/profile/notification-chanel/webhook-test-result.ro.js +42 -0
  134. package/dist/promocode/create-promocode.dto.d.ts +5 -0
  135. package/dist/promocode/create-promocode.dto.js +18 -3
  136. package/dist/promocode/emun/promocode-type.enum.d.ts +7 -1
  137. package/dist/promocode/emun/promocode-type.enum.js +6 -0
  138. package/dist/promocode/promocode.ro.d.ts +1 -0
  139. package/dist/promocode/promocode.ro.js +4 -0
  140. package/dist/shared/ai-cover.d.ts +8 -0
  141. package/dist/shared/ai-cover.js +26 -0
  142. package/dist/shared/city-pipeline.d.ts +40 -0
  143. package/dist/shared/city-pipeline.js +52 -0
  144. package/dist/shared/city-research.d.ts +46 -0
  145. package/dist/shared/city-research.js +49 -0
  146. package/dist/shared/content-batch.d.ts +27 -0
  147. package/dist/shared/content-batch.js +41 -0
  148. package/dist/shared/wikidata-enrichment.d.ts +24 -0
  149. package/dist/shared/wikidata-enrichment.js +31 -0
  150. package/dist/shared/wikidata-import.d.ts +33 -0
  151. package/dist/shared/wikidata-import.js +53 -0
  152. package/dist/tsconfig.build.tsbuildinfo +1 -1
  153. package/dist/upload/enum/image-type.enum.d.ts +3 -1
  154. package/dist/upload/enum/image-type.enum.js +2 -0
  155. package/dist/user/crud/create-user.dto.js +1 -0
  156. package/dist/user/crud/update-user.dto.js +1 -0
  157. package/dist/widget/create-widget.dto.d.ts +1 -0
  158. package/dist/widget/create-widget.dto.js +7 -0
  159. package/dist/widget/widget.ro.d.ts +5 -0
  160. package/package.json +2 -2
  161. package/dist/partners-portal/admin/admin-moderate-portal-story.dto.d.ts +0 -8
  162. package/dist/partners-portal/create-portal-story.dto.d.ts +0 -18
  163. package/dist/partners-portal/enum/portal-story-status.enum.d.ts +0 -12
  164. package/dist/partners-portal/enum/portal-story-status.enum.js +0 -16
  165. package/dist/partners-portal/portal-story-step.d.ts +0 -19
  166. package/dist/partners-portal/portal-story.ro.d.ts +0 -19
  167. package/dist/partners-portal/update-portal-story.dto.d.ts +0 -9
  168. /package/dist/{partners-portal/portal-story-step.js → city-attraction/attraction-content.js} +0 -0
  169. /package/dist/{partners-portal/portal-story.ro.js → city-attraction/attraction-route-meta.js} +0 -0
@@ -0,0 +1,173 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreatePartnerAttractionDto = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ const attraction_category_enum_1 = require("../city-attraction/enum/attraction-category.enum");
16
+ const attraction_fame_enum_1 = require("../city-attraction/enum/attraction-fame.enum");
17
+ const attraction_indoor_outdoor_enum_1 = require("../city-attraction/enum/attraction-indoor-outdoor.enum");
18
+ const attraction_route_role_enum_1 = require("../city-attraction/enum/attraction-route-role.enum");
19
+ const is_not_blank_1 = require("../shared/is-not-blank");
20
+ /**
21
+ * Partner-facing create payload. cityId/country come from the story;
22
+ * reviewStatus is forced to needReview server-side.
23
+ */
24
+ class CreatePartnerAttractionDto {
25
+ }
26
+ exports.CreatePartnerAttractionDto = CreatePartnerAttractionDto;
27
+ __decorate([
28
+ (0, is_not_blank_1.IsNotBlank)(),
29
+ (0, class_transformer_1.Expose)(),
30
+ __metadata("design:type", String)
31
+ ], CreatePartnerAttractionDto.prototype, "title", void 0);
32
+ __decorate([
33
+ (0, class_validator_1.IsOptional)(),
34
+ (0, class_validator_1.IsString)(),
35
+ (0, class_transformer_1.Expose)(),
36
+ __metadata("design:type", String)
37
+ ], CreatePartnerAttractionDto.prototype, "description", void 0);
38
+ __decorate([
39
+ (0, class_validator_1.IsOptional)(),
40
+ (0, class_validator_1.IsString)(),
41
+ (0, class_transformer_1.Expose)(),
42
+ __metadata("design:type", String)
43
+ ], CreatePartnerAttractionDto.prototype, "knownFor", void 0);
44
+ __decorate([
45
+ (0, class_validator_1.IsOptional)(),
46
+ (0, class_validator_1.IsString)(),
47
+ (0, class_transformer_1.Expose)(),
48
+ __metadata("design:type", String)
49
+ ], CreatePartnerAttractionDto.prototype, "knownForRu", void 0);
50
+ __decorate([
51
+ (0, class_validator_1.IsEnum)(attraction_category_enum_1.AttractionCategoryEnum),
52
+ (0, class_transformer_1.Expose)(),
53
+ __metadata("design:type", String)
54
+ ], CreatePartnerAttractionDto.prototype, "category", void 0);
55
+ __decorate([
56
+ (0, class_validator_1.IsEnum)(attraction_fame_enum_1.AttractionFameEnum),
57
+ (0, class_transformer_1.Expose)(),
58
+ __metadata("design:type", String)
59
+ ], CreatePartnerAttractionDto.prototype, "fame", void 0);
60
+ __decorate([
61
+ (0, class_transformer_1.Type)(() => Number),
62
+ (0, class_validator_1.IsInt)(),
63
+ (0, class_transformer_1.Expose)(),
64
+ __metadata("design:type", Number)
65
+ ], CreatePartnerAttractionDto.prototype, "cityId", void 0);
66
+ __decorate([
67
+ (0, class_validator_1.IsOptional)(),
68
+ (0, class_validator_1.IsString)(),
69
+ (0, class_transformer_1.Expose)(),
70
+ __metadata("design:type", String)
71
+ ], CreatePartnerAttractionDto.prototype, "address", void 0);
72
+ __decorate([
73
+ (0, class_validator_1.IsOptional)(),
74
+ (0, class_validator_1.IsString)(),
75
+ (0, class_transformer_1.Expose)(),
76
+ __metadata("design:type", String)
77
+ ], CreatePartnerAttractionDto.prototype, "district", void 0);
78
+ __decorate([
79
+ (0, class_transformer_1.Type)(() => Number),
80
+ (0, class_validator_1.IsNumber)(),
81
+ (0, class_transformer_1.Expose)(),
82
+ __metadata("design:type", Number)
83
+ ], CreatePartnerAttractionDto.prototype, "lat", void 0);
84
+ __decorate([
85
+ (0, class_transformer_1.Type)(() => Number),
86
+ (0, class_validator_1.IsNumber)(),
87
+ (0, class_transformer_1.Expose)(),
88
+ __metadata("design:type", Number)
89
+ ], CreatePartnerAttractionDto.prototype, "lng", void 0);
90
+ __decorate([
91
+ (0, class_validator_1.IsOptional)(),
92
+ (0, class_validator_1.IsArray)(),
93
+ (0, class_validator_1.IsString)({ each: true }),
94
+ (0, class_transformer_1.Expose)(),
95
+ __metadata("design:type", Array)
96
+ ], CreatePartnerAttractionDto.prototype, "photos", void 0);
97
+ __decorate([
98
+ (0, class_validator_1.IsOptional)(),
99
+ (0, class_transformer_1.Type)(() => Number),
100
+ (0, class_validator_1.IsInt)(),
101
+ (0, class_validator_1.Min)(0),
102
+ (0, class_transformer_1.Expose)(),
103
+ __metadata("design:type", Number)
104
+ ], CreatePartnerAttractionDto.prototype, "coverPhotoIndex", void 0);
105
+ __decorate([
106
+ (0, class_validator_1.IsOptional)(),
107
+ (0, class_validator_1.IsArray)(),
108
+ (0, class_validator_1.IsString)({ each: true }),
109
+ (0, class_transformer_1.Expose)(),
110
+ __metadata("design:type", Array)
111
+ ], CreatePartnerAttractionDto.prototype, "tags", void 0);
112
+ __decorate([
113
+ (0, class_validator_1.IsOptional)(),
114
+ (0, class_transformer_1.Type)(() => Number),
115
+ (0, class_validator_1.IsInt)(),
116
+ (0, class_validator_1.Min)(1),
117
+ (0, class_validator_1.Max)(10),
118
+ (0, class_transformer_1.Expose)(),
119
+ __metadata("design:type", Number)
120
+ ], CreatePartnerAttractionDto.prototype, "mustSeeScore", void 0);
121
+ __decorate([
122
+ (0, class_validator_1.IsOptional)(),
123
+ (0, class_transformer_1.Type)(() => Number),
124
+ (0, class_validator_1.IsInt)(),
125
+ (0, class_validator_1.Min)(1),
126
+ (0, class_validator_1.Max)(10),
127
+ (0, class_transformer_1.Expose)(),
128
+ __metadata("design:type", Number)
129
+ ], CreatePartnerAttractionDto.prototype, "wowScore", void 0);
130
+ __decorate([
131
+ (0, class_validator_1.IsOptional)(),
132
+ (0, class_transformer_1.Type)(() => Number),
133
+ (0, class_validator_1.IsInt)(),
134
+ (0, class_validator_1.Min)(1),
135
+ (0, class_validator_1.Max)(10),
136
+ (0, class_transformer_1.Expose)(),
137
+ __metadata("design:type", Number)
138
+ ], CreatePartnerAttractionDto.prototype, "touristCrowdScore", void 0);
139
+ __decorate([
140
+ (0, class_validator_1.IsOptional)(),
141
+ (0, class_transformer_1.Type)(() => Number),
142
+ (0, class_validator_1.IsInt)(),
143
+ (0, class_validator_1.Min)(1),
144
+ (0, class_validator_1.Max)(10),
145
+ (0, class_transformer_1.Expose)(),
146
+ __metadata("design:type", Number)
147
+ ], CreatePartnerAttractionDto.prototype, "localExperienceScore", void 0);
148
+ __decorate([
149
+ (0, class_validator_1.IsOptional)(),
150
+ (0, class_validator_1.IsEnum)(attraction_route_role_enum_1.AttractionRouteRoleEnum),
151
+ (0, class_transformer_1.Expose)(),
152
+ __metadata("design:type", String)
153
+ ], CreatePartnerAttractionDto.prototype, "routeRole", void 0);
154
+ __decorate([
155
+ (0, class_validator_1.IsOptional)(),
156
+ (0, class_transformer_1.Type)(() => Number),
157
+ (0, class_validator_1.IsInt)(),
158
+ (0, class_validator_1.Min)(1),
159
+ (0, class_validator_1.Max)(100),
160
+ (0, class_transformer_1.Expose)(),
161
+ __metadata("design:type", Number)
162
+ ], CreatePartnerAttractionDto.prototype, "routePriority", void 0);
163
+ __decorate([
164
+ (0, class_validator_1.IsOptional)(),
165
+ (0, class_validator_1.IsEnum)(attraction_indoor_outdoor_enum_1.AttractionIndoorOutdoorEnum),
166
+ (0, class_transformer_1.Expose)(),
167
+ __metadata("design:type", String)
168
+ ], CreatePartnerAttractionDto.prototype, "indoorOutdoor", void 0);
169
+ __decorate([
170
+ (0, class_validator_1.IsOptional)(),
171
+ (0, class_transformer_1.Expose)(),
172
+ __metadata("design:type", Object)
173
+ ], CreatePartnerAttractionDto.prototype, "routeMeta", void 0);
@@ -0,0 +1,31 @@
1
+ import { Languages } from '../shared/enum/languages.enum';
2
+ /** Partner-friendly stop shape; mapped server-side into CityQuestStop. */
3
+ export declare class PartnerCityQuestStopDto {
4
+ id?: string;
5
+ order: number;
6
+ attractionId: number;
7
+ /** In-game / chapter label (prefilled from attraction). */
8
+ title: string;
9
+ storyBefore?: string;
10
+ storyAfter?: string;
11
+ fromPrevious?: string;
12
+ walkMicroTask?: string;
13
+ arrivalInstruction?: string;
14
+ riddle?: string;
15
+ answer?: string;
16
+ hint?: string;
17
+ }
18
+ export declare class CreatePartnerCityQuestDto {
19
+ cityId: number;
20
+ title: string;
21
+ tagline?: string | null;
22
+ language: Languages;
23
+ stops?: PartnerCityQuestStopDto[];
24
+ }
25
+ export declare class UpdatePartnerCityQuestDto {
26
+ title?: string;
27
+ tagline?: string | null;
28
+ language?: Languages;
29
+ cityId?: number;
30
+ stops?: PartnerCityQuestStopDto[];
31
+ }
@@ -0,0 +1,160 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.UpdatePartnerCityQuestDto = exports.CreatePartnerCityQuestDto = exports.PartnerCityQuestStopDto = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ const languages_enum_1 = require("../shared/enum/languages.enum");
16
+ const is_not_blank_1 = require("../shared/is-not-blank");
17
+ /** Partner-friendly stop shape; mapped server-side into CityQuestStop. */
18
+ class PartnerCityQuestStopDto {
19
+ }
20
+ exports.PartnerCityQuestStopDto = PartnerCityQuestStopDto;
21
+ __decorate([
22
+ (0, class_validator_1.IsOptional)(),
23
+ (0, class_validator_1.IsString)(),
24
+ (0, class_transformer_1.Expose)(),
25
+ __metadata("design:type", String)
26
+ ], PartnerCityQuestStopDto.prototype, "id", void 0);
27
+ __decorate([
28
+ (0, class_transformer_1.Type)(() => Number),
29
+ (0, class_validator_1.IsInt)(),
30
+ (0, class_transformer_1.Expose)(),
31
+ __metadata("design:type", Number)
32
+ ], PartnerCityQuestStopDto.prototype, "order", void 0);
33
+ __decorate([
34
+ (0, class_transformer_1.Type)(() => Number),
35
+ (0, class_validator_1.IsInt)(),
36
+ (0, class_transformer_1.Expose)(),
37
+ __metadata("design:type", Number)
38
+ ], PartnerCityQuestStopDto.prototype, "attractionId", void 0);
39
+ __decorate([
40
+ (0, is_not_blank_1.IsNotBlank)(),
41
+ (0, class_transformer_1.Expose)(),
42
+ __metadata("design:type", String)
43
+ ], PartnerCityQuestStopDto.prototype, "title", void 0);
44
+ __decorate([
45
+ (0, class_validator_1.IsOptional)(),
46
+ (0, class_validator_1.IsString)(),
47
+ (0, class_transformer_1.Expose)(),
48
+ __metadata("design:type", String)
49
+ ], PartnerCityQuestStopDto.prototype, "storyBefore", void 0);
50
+ __decorate([
51
+ (0, class_validator_1.IsOptional)(),
52
+ (0, class_validator_1.IsString)(),
53
+ (0, class_transformer_1.Expose)(),
54
+ __metadata("design:type", String)
55
+ ], PartnerCityQuestStopDto.prototype, "storyAfter", void 0);
56
+ __decorate([
57
+ (0, class_validator_1.IsOptional)(),
58
+ (0, class_validator_1.IsString)(),
59
+ (0, class_transformer_1.Expose)(),
60
+ __metadata("design:type", String)
61
+ ], PartnerCityQuestStopDto.prototype, "fromPrevious", void 0);
62
+ __decorate([
63
+ (0, class_validator_1.IsOptional)(),
64
+ (0, class_validator_1.IsString)(),
65
+ (0, class_transformer_1.Expose)(),
66
+ __metadata("design:type", String)
67
+ ], PartnerCityQuestStopDto.prototype, "walkMicroTask", void 0);
68
+ __decorate([
69
+ (0, class_validator_1.IsOptional)(),
70
+ (0, class_validator_1.IsString)(),
71
+ (0, class_transformer_1.Expose)(),
72
+ __metadata("design:type", String)
73
+ ], PartnerCityQuestStopDto.prototype, "arrivalInstruction", void 0);
74
+ __decorate([
75
+ (0, class_validator_1.IsOptional)(),
76
+ (0, class_validator_1.IsString)(),
77
+ (0, class_transformer_1.Expose)(),
78
+ __metadata("design:type", String)
79
+ ], PartnerCityQuestStopDto.prototype, "riddle", void 0);
80
+ __decorate([
81
+ (0, class_validator_1.IsOptional)(),
82
+ (0, class_validator_1.IsString)(),
83
+ (0, class_transformer_1.Expose)(),
84
+ __metadata("design:type", String)
85
+ ], PartnerCityQuestStopDto.prototype, "answer", void 0);
86
+ __decorate([
87
+ (0, class_validator_1.IsOptional)(),
88
+ (0, class_validator_1.IsString)(),
89
+ (0, class_transformer_1.Expose)(),
90
+ __metadata("design:type", String)
91
+ ], PartnerCityQuestStopDto.prototype, "hint", void 0);
92
+ class CreatePartnerCityQuestDto {
93
+ }
94
+ exports.CreatePartnerCityQuestDto = CreatePartnerCityQuestDto;
95
+ __decorate([
96
+ (0, class_transformer_1.Type)(() => Number),
97
+ (0, class_validator_1.IsInt)(),
98
+ (0, class_transformer_1.Expose)(),
99
+ __metadata("design:type", Number)
100
+ ], CreatePartnerCityQuestDto.prototype, "cityId", void 0);
101
+ __decorate([
102
+ (0, is_not_blank_1.IsNotBlank)(),
103
+ (0, class_transformer_1.Expose)(),
104
+ __metadata("design:type", String)
105
+ ], CreatePartnerCityQuestDto.prototype, "title", void 0);
106
+ __decorate([
107
+ (0, class_validator_1.IsOptional)(),
108
+ (0, class_validator_1.IsString)(),
109
+ (0, class_transformer_1.Expose)(),
110
+ __metadata("design:type", String)
111
+ ], CreatePartnerCityQuestDto.prototype, "tagline", void 0);
112
+ __decorate([
113
+ (0, class_validator_1.IsEnum)(languages_enum_1.Languages),
114
+ (0, class_transformer_1.Expose)(),
115
+ __metadata("design:type", String)
116
+ ], CreatePartnerCityQuestDto.prototype, "language", void 0);
117
+ __decorate([
118
+ (0, class_validator_1.IsOptional)(),
119
+ (0, class_validator_1.IsArray)(),
120
+ (0, class_validator_1.ValidateNested)({ each: true }),
121
+ (0, class_transformer_1.Type)(() => PartnerCityQuestStopDto),
122
+ (0, class_transformer_1.Expose)(),
123
+ __metadata("design:type", Array)
124
+ ], CreatePartnerCityQuestDto.prototype, "stops", void 0);
125
+ class UpdatePartnerCityQuestDto {
126
+ }
127
+ exports.UpdatePartnerCityQuestDto = UpdatePartnerCityQuestDto;
128
+ __decorate([
129
+ (0, class_validator_1.IsOptional)(),
130
+ (0, is_not_blank_1.IsNotBlank)(),
131
+ (0, class_transformer_1.Expose)(),
132
+ __metadata("design:type", String)
133
+ ], UpdatePartnerCityQuestDto.prototype, "title", void 0);
134
+ __decorate([
135
+ (0, class_validator_1.IsOptional)(),
136
+ (0, class_validator_1.IsString)(),
137
+ (0, class_transformer_1.Expose)(),
138
+ __metadata("design:type", String)
139
+ ], UpdatePartnerCityQuestDto.prototype, "tagline", void 0);
140
+ __decorate([
141
+ (0, class_validator_1.IsOptional)(),
142
+ (0, class_validator_1.IsEnum)(languages_enum_1.Languages),
143
+ (0, class_transformer_1.Expose)(),
144
+ __metadata("design:type", String)
145
+ ], UpdatePartnerCityQuestDto.prototype, "language", void 0);
146
+ __decorate([
147
+ (0, class_validator_1.IsOptional)(),
148
+ (0, class_transformer_1.Type)(() => Number),
149
+ (0, class_validator_1.IsInt)(),
150
+ (0, class_transformer_1.Expose)(),
151
+ __metadata("design:type", Number)
152
+ ], UpdatePartnerCityQuestDto.prototype, "cityId", void 0);
153
+ __decorate([
154
+ (0, class_validator_1.IsOptional)(),
155
+ (0, class_validator_1.IsArray)(),
156
+ (0, class_validator_1.ValidateNested)({ each: true }),
157
+ (0, class_transformer_1.Type)(() => PartnerCityQuestStopDto),
158
+ (0, class_transformer_1.Expose)(),
159
+ __metadata("design:type", Array)
160
+ ], UpdatePartnerCityQuestDto.prototype, "stops", void 0);
@@ -0,0 +1,11 @@
1
+ import { CityQuestRO } from '../city-quest/city-quest.ro';
2
+ import { CityQuestContent } from '../city-quest/city-quest-content';
3
+ import { Languages } from '../shared/enum/languages.enum';
4
+ import { PartnerCityQuestStopDto } from './partner-city-quest.dto';
5
+ /** Partner editor view: quest meta + friendly stops (+ raw content for advanced). */
6
+ export type PartnerCityQuestRO = CityQuestRO & {
7
+ language: Languages;
8
+ tagline: string | null;
9
+ content: CityQuestContent | null;
10
+ stops: PartnerCityQuestStopDto[];
11
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -13,10 +13,10 @@ export type PortalMonthlyStatsRO = {
13
13
  /** Commission in minor units, grouped by currency code. */
14
14
  commission: Record<string, number>;
15
15
  };
16
- export type PortalStoryStatsRO = {
17
- storyId: number;
18
- storyTitle: string;
19
- /** Total games granted for the produced quest. */
16
+ export type PortalQuestStatsRO = {
17
+ questId: number;
18
+ questTitle: string;
19
+ /** Total games granted for the quest. */
20
20
  games: number;
21
21
  /** Gross sales in minor units by currency. */
22
22
  sales: Record<string, number>;
@@ -33,6 +33,6 @@ export type PortalPartnerStatsRO = {
33
33
  totalCommission: Record<string, number>;
34
34
  /** Last 12 months, oldest first. */
35
35
  monthly: PortalMonthlyStatsRO[];
36
- /** Author only: per-story breakdown. */
37
- stories?: PortalStoryStatsRO[];
36
+ /** Author only: per-quest breakdown. */
37
+ quests?: PortalQuestStatsRO[];
38
38
  };
@@ -0,0 +1,11 @@
1
+ import { AttractionReviewStatusEnum } from '../city-attraction/enum/attraction-review-status.enum';
2
+ import { CreatePartnerAttractionDto } from './create-partner-attraction.dto';
3
+ declare const UpdatePartnerAttractionDto_base: import("@nestjs/mapped-types").MappedType<Partial<CreatePartnerAttractionDto>>;
4
+ /** Partners may only edit their own needReview attractions. */
5
+ export declare class UpdatePartnerAttractionDto extends UpdatePartnerAttractionDto_base {
6
+ }
7
+ export declare class AdminModerateAttractionDto {
8
+ reviewStatus: AttractionReviewStatusEnum;
9
+ rejectionReason?: string | null;
10
+ }
11
+ export {};
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AdminModerateAttractionDto = exports.UpdatePartnerAttractionDto = void 0;
13
+ const mapped_types_1 = require("@nestjs/mapped-types");
14
+ const class_transformer_1 = require("class-transformer");
15
+ const class_validator_1 = require("class-validator");
16
+ const attraction_review_status_enum_1 = require("../city-attraction/enum/attraction-review-status.enum");
17
+ const create_partner_attraction_dto_1 = require("./create-partner-attraction.dto");
18
+ /** Partners may only edit their own needReview attractions. */
19
+ class UpdatePartnerAttractionDto extends (0, mapped_types_1.PartialType)(create_partner_attraction_dto_1.CreatePartnerAttractionDto) {
20
+ }
21
+ exports.UpdatePartnerAttractionDto = UpdatePartnerAttractionDto;
22
+ class AdminModerateAttractionDto {
23
+ }
24
+ exports.AdminModerateAttractionDto = AdminModerateAttractionDto;
25
+ __decorate([
26
+ (0, class_validator_1.IsEnum)(attraction_review_status_enum_1.AttractionReviewStatusEnum),
27
+ (0, class_transformer_1.Expose)(),
28
+ __metadata("design:type", String)
29
+ ], AdminModerateAttractionDto.prototype, "reviewStatus", void 0);
30
+ __decorate([
31
+ (0, class_validator_1.IsOptional)(),
32
+ (0, class_validator_1.IsString)(),
33
+ (0, class_transformer_1.Expose)(),
34
+ __metadata("design:type", String)
35
+ ], AdminModerateAttractionDto.prototype, "rejectionReason", void 0);
@@ -19,7 +19,8 @@ exports.MARKETING_AUTOMATION_CAPABILITIES = {
19
19
  supportsDiscount: false,
20
20
  },
21
21
  [marketing_automation_type_enum_1.MarketingAutomationTypeEnum.RETARGETING]: {
22
- timing: null,
22
+ // Точка отсчёта — момент покидания бронирования (не дата игры).
23
+ timing: { direction: 'after', unit: 'hours', min: 1, max: 72, default: 24 },
23
24
  supportsSendImmediately: false,
24
25
  supportsDiscount: true,
25
26
  },
@@ -14,8 +14,9 @@ export declare class MarketingAutomationConfigDto {
14
14
  * Единое поле тайминга: заменяет `sendAfter` / `sendBefore` /
15
15
  * `sendBeforeDays`. Величина в натуральной единице типа (capabilities
16
16
  * определяет, часы это или дни и в какую сторону от события).
17
+ * Для `retargeting` — часы после покидания бронирования (дефолт 24).
17
18
  * `undefined` — у типов без настраиваемого тайминга
18
- * (`retargeting` — фикс +1 день, `custom_booking` — транзакционно).
19
+ * (`custom_booking` — транзакционно).
19
20
  */
20
21
  sendOffset?: number;
21
22
  /**
@@ -1,6 +1,7 @@
1
1
  import { RO } from '../../shared/ro-class';
2
2
  import { NotificationTriggerEnum } from './notification-chanel-action.enum';
3
3
  import { NotificationChanelTypeEnum } from './notification-chanel-type.enum';
4
+ import { WebhookHealthRO } from './webhook-health.ro';
4
5
  export declare class NotificationChanelRO extends RO {
5
6
  url: string;
6
7
  userId: number;
@@ -10,4 +11,6 @@ export declare class NotificationChanelRO extends RO {
10
11
  allLocations: boolean;
11
12
  locationIds: number[];
12
13
  profileId: number;
14
+ /** Здоровье доставки — только для каналов типа WEBHOOK. */
15
+ health?: WebhookHealthRO;
13
16
  }
@@ -13,6 +13,7 @@ exports.NotificationChanelRO = void 0;
13
13
  const class_transformer_1 = require("class-transformer");
14
14
  const ro_class_1 = require("../../shared/ro-class");
15
15
  const notification_chanel_type_enum_1 = require("./notification-chanel-type.enum");
16
+ const webhook_health_ro_1 = require("./webhook-health.ro");
16
17
  class NotificationChanelRO extends ro_class_1.RO {
17
18
  }
18
19
  exports.NotificationChanelRO = NotificationChanelRO;
@@ -48,3 +49,8 @@ __decorate([
48
49
  (0, class_transformer_1.Expose)(),
49
50
  __metadata("design:type", Number)
50
51
  ], NotificationChanelRO.prototype, "profileId", void 0);
52
+ __decorate([
53
+ (0, class_transformer_1.Expose)(),
54
+ (0, class_transformer_1.Type)(() => webhook_health_ro_1.WebhookHealthRO),
55
+ __metadata("design:type", webhook_health_ro_1.WebhookHealthRO)
56
+ ], NotificationChanelRO.prototype, "health", void 0);
@@ -0,0 +1,6 @@
1
+ import { NotificationTriggerEnum } from './notification-chanel-action.enum';
2
+ export declare class TestNotificationChanelDto {
3
+ /** ID заказа, на котором прогоняется тестовое событие. */
4
+ orderId: number;
5
+ trigger?: NotificationTriggerEnum;
6
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.TestNotificationChanelDto = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ const notification_chanel_action_enum_1 = require("./notification-chanel-action.enum");
16
+ class TestNotificationChanelDto {
17
+ }
18
+ exports.TestNotificationChanelDto = TestNotificationChanelDto;
19
+ __decorate([
20
+ (0, class_validator_1.IsInt)(),
21
+ (0, class_transformer_1.Expose)(),
22
+ __metadata("design:type", Number)
23
+ ], TestNotificationChanelDto.prototype, "orderId", void 0);
24
+ __decorate([
25
+ (0, class_validator_1.IsOptional)(),
26
+ (0, class_validator_1.IsEnum)(notification_chanel_action_enum_1.NotificationTriggerEnum),
27
+ (0, class_transformer_1.Expose)(),
28
+ __metadata("design:type", String)
29
+ ], TestNotificationChanelDto.prototype, "trigger", void 0);
@@ -0,0 +1,36 @@
1
+ import { NotificationTriggerEnum } from './notification-chanel-action.enum';
2
+ /** Классифицированный тип ошибки доставки вебхука (вместо сырых стектрейсов). */
3
+ export declare enum WebhookErrorKindEnum {
4
+ DNS = "dns",
5
+ REFUSED = "refused",
6
+ TIMEOUT = "timeout",
7
+ TLS = "tls",
8
+ HTTP_4XX = "http-4xx",
9
+ HTTP_5XX = "http-5xx",
10
+ INVALID_URL = "invalid-url",
11
+ OTHER = "other"
12
+ }
13
+ export declare enum WebhookHealthStatusEnum {
14
+ HEALTHY = "healthy",
15
+ DEGRADED = "degraded",
16
+ FAILING = "failing"
17
+ }
18
+ /** Одна запись в капнутом списке последних ошибок канала. */
19
+ export type WebhookRecentError = {
20
+ /** ISO-дата ошибки. */
21
+ at: string;
22
+ trigger: NotificationTriggerEnum | string;
23
+ kind: WebhookErrorKindEnum;
24
+ httpStatus?: number;
25
+ /** Обрезанное сообщение ошибки (для деталей, не для парсинга). */
26
+ message?: string;
27
+ orderId?: number;
28
+ certificateId?: number;
29
+ };
30
+ export declare class WebhookHealthRO {
31
+ status: WebhookHealthStatusEnum;
32
+ lastSuccessAt: string | null;
33
+ lastFailureAt: string | null;
34
+ consecutiveFailures: number;
35
+ recentErrors: WebhookRecentError[];
36
+ }
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.WebhookHealthRO = exports.WebhookHealthStatusEnum = exports.WebhookErrorKindEnum = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ /** Классифицированный тип ошибки доставки вебхука (вместо сырых стектрейсов). */
15
+ var WebhookErrorKindEnum;
16
+ (function (WebhookErrorKindEnum) {
17
+ WebhookErrorKindEnum["DNS"] = "dns";
18
+ WebhookErrorKindEnum["REFUSED"] = "refused";
19
+ WebhookErrorKindEnum["TIMEOUT"] = "timeout";
20
+ WebhookErrorKindEnum["TLS"] = "tls";
21
+ WebhookErrorKindEnum["HTTP_4XX"] = "http-4xx";
22
+ WebhookErrorKindEnum["HTTP_5XX"] = "http-5xx";
23
+ WebhookErrorKindEnum["INVALID_URL"] = "invalid-url";
24
+ WebhookErrorKindEnum["OTHER"] = "other";
25
+ })(WebhookErrorKindEnum || (exports.WebhookErrorKindEnum = WebhookErrorKindEnum = {}));
26
+ var WebhookHealthStatusEnum;
27
+ (function (WebhookHealthStatusEnum) {
28
+ WebhookHealthStatusEnum["HEALTHY"] = "healthy";
29
+ WebhookHealthStatusEnum["DEGRADED"] = "degraded";
30
+ WebhookHealthStatusEnum["FAILING"] = "failing";
31
+ })(WebhookHealthStatusEnum || (exports.WebhookHealthStatusEnum = WebhookHealthStatusEnum = {}));
32
+ class WebhookHealthRO {
33
+ }
34
+ exports.WebhookHealthRO = WebhookHealthRO;
35
+ __decorate([
36
+ (0, class_transformer_1.Expose)(),
37
+ __metadata("design:type", String)
38
+ ], WebhookHealthRO.prototype, "status", void 0);
39
+ __decorate([
40
+ (0, class_transformer_1.Expose)(),
41
+ __metadata("design:type", String)
42
+ ], WebhookHealthRO.prototype, "lastSuccessAt", void 0);
43
+ __decorate([
44
+ (0, class_transformer_1.Expose)(),
45
+ __metadata("design:type", String)
46
+ ], WebhookHealthRO.prototype, "lastFailureAt", void 0);
47
+ __decorate([
48
+ (0, class_transformer_1.Expose)(),
49
+ __metadata("design:type", Number)
50
+ ], WebhookHealthRO.prototype, "consecutiveFailures", void 0);
51
+ __decorate([
52
+ (0, class_transformer_1.Expose)(),
53
+ __metadata("design:type", Array)
54
+ ], WebhookHealthRO.prototype, "recentErrors", void 0);
@@ -0,0 +1,11 @@
1
+ import { WebhookErrorKindEnum } from './webhook-health.ro';
2
+ /** Результат ручного теста вебхука («ввести ID игры и прогнать событие»). */
3
+ export declare class WebhookTestResultRO {
4
+ ok: boolean;
5
+ httpStatus?: number;
6
+ durationMs: number;
7
+ /** Первые ~500 символов тела ответа приёмника. */
8
+ responseSnippet?: string;
9
+ errorKind?: WebhookErrorKindEnum;
10
+ errorMessage?: string;
11
+ }