@d19n/youfibre-odin-sdk 2.0.13-beta.1 → 2.0.13
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/README.md +11 -10
- package/dist/actions-v2/CreateOrderFromBrskDto.d.ts +75 -0
- package/dist/actions-v2/CreateOrderItemFromBrskDto.d.ts +191 -0
- package/dist/actions-v2/CreateOrderItemFromBrskDto.js +52 -0
- package/dist/entities-v2/Order.d.ts +7 -0
- package/dist/entities-v2/Order.js +2 -0
- package/dist/entities-v2/OrderItem.d.ts +7 -0
- package/dist/entities-v2/OrderItem.js +2 -0
- package/dist/entities-v2/Product.d.ts +0 -42
- package/dist/entities-v2/Product.js +0 -2
- package/dist/records-v2/AccountCreditRecord.d.ts +62 -1
- package/dist/records-v2/AccountCreditRecord.js +91 -0
- package/dist/records-v2/AccountRecord.d.ts +306 -2
- package/dist/records-v2/AccountRecord.js +451 -0
- package/dist/records-v2/ActivityLogRecord.d.ts +122 -1
- package/dist/records-v2/ActivityLogRecord.js +190 -0
- package/dist/records-v2/ActivityRecord.d.ts +255 -2
- package/dist/records-v2/ActivityRecord.js +387 -0
- package/dist/records-v2/AddressRecord.d.ts +321 -0
- package/dist/records-v2/AddressRecord.js +532 -0
- package/dist/records-v2/AffiliateCodeRecord.d.ts +102 -1
- package/dist/records-v2/AffiliateCodeRecord.js +157 -0
- package/dist/records-v2/AppointmentRecord.d.ts +141 -0
- package/dist/records-v2/AppointmentRecord.js +235 -0
- package/dist/records-v2/BillingAdjustmentRecord.d.ts +81 -0
- package/dist/records-v2/BillingAdjustmentRecord.js +136 -0
- package/dist/records-v2/BillingRequestRecord.d.ts +178 -2
- package/dist/records-v2/BillingRequestRecord.js +271 -0
- package/dist/records-v2/BlockageA55Record.d.ts +103 -2
- package/dist/records-v2/BlockageA55Record.js +157 -0
- package/dist/records-v2/BrskEntityMigrationErrorRecord.d.ts +21 -1
- package/dist/records-v2/BrskEntityMigrationErrorRecord.js +21 -0
- package/dist/records-v2/CallEventRecord.d.ts +82 -1
- package/dist/records-v2/CallEventRecord.js +124 -0
- package/dist/records-v2/CallLegRecord.d.ts +82 -1
- package/dist/records-v2/CallLegRecord.js +124 -0
- package/dist/records-v2/CallRecord.d.ts +202 -1
- package/dist/records-v2/CallRecord.js +322 -0
- package/dist/records-v2/CallTransferRecord.d.ts +102 -1
- package/dist/records-v2/CallTransferRecord.js +157 -0
- package/dist/records-v2/CampaignRecord.d.ts +83 -2
- package/dist/records-v2/CampaignRecord.js +124 -0
- package/dist/records-v2/CaseRecord.d.ts +418 -2
- package/dist/records-v2/CaseRecord.js +667 -0
- package/dist/records-v2/ChangeReasonRecord.d.ts +171 -2
- package/dist/records-v2/ChangeReasonRecord.js +238 -0
- package/dist/records-v2/ChurnRequestRecord.d.ts +62 -1
- package/dist/records-v2/ChurnRequestRecord.js +91 -0
- package/dist/records-v2/ContactRecord.d.ts +560 -0
- package/dist/records-v2/ContactRecord.js +927 -0
- package/dist/records-v2/ContractBuyOutRecord.d.ts +162 -1
- package/dist/records-v2/ContractBuyOutRecord.js +256 -0
- package/dist/records-v2/ConversationFeedbackRecord.d.ts +102 -1
- package/dist/records-v2/ConversationFeedbackRecord.js +157 -0
- package/dist/records-v2/ConversationRecord.d.ts +102 -1
- package/dist/records-v2/ConversationRecord.js +157 -0
- package/dist/records-v2/CreditNoteRecord.d.ts +81 -0
- package/dist/records-v2/CreditNoteRecord.js +136 -0
- package/dist/records-v2/CrmDatasetRecord.d.ts +191 -2
- package/dist/records-v2/CrmDatasetRecord.js +271 -0
- package/dist/records-v2/CustomerDeviceAtaRecord.d.ts +21 -0
- package/dist/records-v2/CustomerDeviceAtaRecord.js +37 -0
- package/dist/records-v2/CustomerDeviceConfigurationRecord.d.ts +62 -1
- package/dist/records-v2/CustomerDeviceConfigurationRecord.js +91 -0
- package/dist/records-v2/CustomerDeviceOntRecord.d.ts +181 -0
- package/dist/records-v2/CustomerDeviceOntRecord.js +301 -0
- package/dist/records-v2/CustomerDeviceRouterRecord.d.ts +141 -0
- package/dist/records-v2/CustomerDeviceRouterRecord.js +235 -0
- package/dist/records-v2/CustomerPhonePortingRecord.d.ts +21 -0
- package/dist/records-v2/CustomerPhonePortingRecord.js +37 -0
- package/dist/records-v2/DiscountRecord.d.ts +121 -0
- package/dist/records-v2/DiscountRecord.js +202 -0
- package/dist/records-v2/EmailRecord.d.ts +230 -2
- package/dist/records-v2/EmailRecord.js +336 -0
- package/dist/records-v2/EmailSenderRecord.d.ts +42 -1
- package/dist/records-v2/EmailSenderRecord.js +58 -0
- package/dist/records-v2/EmailTemplateRecord.d.ts +21 -1
- package/dist/records-v2/EmailTemplateRecord.js +21 -0
- package/dist/records-v2/FieldServiceDispatchedProductRecord.d.ts +135 -2
- package/dist/records-v2/FieldServiceDispatchedProductRecord.js +189 -0
- package/dist/records-v2/FieldServiceProductRecord.d.ts +115 -2
- package/dist/records-v2/FieldServiceProductRecord.js +156 -0
- package/dist/records-v2/FileRecord.d.ts +1211 -2
- package/dist/records-v2/FileRecord.js +1902 -0
- package/dist/records-v2/ImpersonationTrackerRecord.d.ts +62 -1
- package/dist/records-v2/ImpersonationTrackerRecord.js +91 -0
- package/dist/records-v2/InternalInstallAuditRecord.d.ts +83 -2
- package/dist/records-v2/InternalInstallAuditRecord.js +124 -0
- package/dist/records-v2/InvoiceItemRecord.d.ts +40 -0
- package/dist/records-v2/InvoiceItemRecord.js +69 -0
- package/dist/records-v2/InvoiceRecord.d.ts +399 -2
- package/dist/records-v2/InvoiceRecord.js +635 -0
- package/dist/records-v2/KnowledgeArticleRecord.d.ts +98 -2
- package/dist/records-v2/KnowledgeArticleRecord.js +139 -0
- package/dist/records-v2/LeadRecord.d.ts +261 -0
- package/dist/records-v2/LeadRecord.js +433 -0
- package/dist/records-v2/MessageRecord.d.ts +99 -2
- package/dist/records-v2/MessageRecord.js +140 -0
- package/dist/records-v2/NetworkDeviceRecord.d.ts +43 -2
- package/dist/records-v2/NetworkDeviceRecord.js +58 -0
- package/dist/records-v2/NoteRecord.d.ts +1121 -1
- package/dist/records-v2/NoteRecord.js +1839 -0
- package/dist/records-v2/OfferRecord.d.ts +154 -2
- package/dist/records-v2/OfferRecord.js +221 -0
- package/dist/records-v2/OhAuditOfInstallationRecord.d.ts +83 -2
- package/dist/records-v2/OhAuditOfInstallationRecord.js +124 -0
- package/dist/records-v2/OhExternalAuditRecord.d.ts +83 -2
- package/dist/records-v2/OhExternalAuditRecord.js +124 -0
- package/dist/records-v2/OhInProgressAuditRecord.d.ts +83 -2
- package/dist/records-v2/OhInProgressAuditRecord.js +124 -0
- package/dist/records-v2/OhInstallationAuditRecord.d.ts +83 -2
- package/dist/records-v2/OhInstallationAuditRecord.js +124 -0
- package/dist/records-v2/OhRetroAuditRecord.d.ts +83 -2
- package/dist/records-v2/OhRetroAuditRecord.js +124 -0
- package/dist/records-v2/OneTouchSwitchRecord.d.ts +255 -2
- package/dist/records-v2/OneTouchSwitchRecord.js +387 -0
- package/dist/records-v2/OntReplacementApprovalRecord.d.ts +62 -1
- package/dist/records-v2/OntReplacementApprovalRecord.js +91 -0
- package/dist/records-v2/OrderCheckRecord.d.ts +21 -0
- package/dist/records-v2/OrderCheckRecord.js +37 -0
- package/dist/records-v2/OrderItemRecord.d.ts +309 -0
- package/dist/records-v2/OrderItemRecord.js +501 -0
- package/dist/records-v2/OrderKciRecord.d.ts +42 -1
- package/dist/records-v2/OrderKciRecord.js +58 -0
- package/dist/records-v2/OrderRecord.d.ts +620 -0
- package/dist/records-v2/OrderRecord.js +1026 -0
- package/dist/records-v2/OutageRecord.d.ts +42 -1
- package/dist/records-v2/OutageRecord.js +58 -0
- package/dist/records-v2/OverlayRealA55Record.d.ts +83 -2
- package/dist/records-v2/OverlayRealA55Record.js +124 -0
- package/dist/records-v2/PICRequestRecord.d.ts +62 -1
- package/dist/records-v2/PICRequestRecord.js +91 -0
- package/dist/records-v2/PaymentMethodRecord.d.ts +121 -0
- package/dist/records-v2/PaymentMethodRecord.js +202 -0
- package/dist/records-v2/PaymentMethodRefundRecord.d.ts +181 -0
- package/dist/records-v2/PaymentMethodRefundRecord.js +301 -0
- package/dist/records-v2/PaymentRecord.d.ts +82 -1
- package/dist/records-v2/PaymentRecord.js +124 -0
- package/dist/records-v2/PermissionToFailRecord.d.ts +61 -0
- package/dist/records-v2/PermissionToFailRecord.js +103 -0
- package/dist/records-v2/PgAccountValidationRecord.d.ts +21 -1
- package/dist/records-v2/PgAccountValidationRecord.js +21 -0
- package/dist/records-v2/PgContactRecord.d.ts +62 -1
- package/dist/records-v2/PgContactRecord.js +91 -0
- package/dist/records-v2/PgDirectDebitFileRecord.d.ts +95 -2
- package/dist/records-v2/PgDirectDebitFileRecord.js +123 -0
- package/dist/records-v2/PgDisputeRecord.d.ts +62 -1
- package/dist/records-v2/PgDisputeRecord.js +91 -0
- package/dist/records-v2/PgFileAllocationRecord.d.ts +115 -2
- package/dist/records-v2/PgFileAllocationRecord.js +156 -0
- package/dist/records-v2/PgLogRecord.d.ts +21 -1
- package/dist/records-v2/PgLogRecord.js +21 -0
- package/dist/records-v2/PgPaymentMethodRecord.d.ts +102 -1
- package/dist/records-v2/PgPaymentMethodRecord.js +157 -0
- package/dist/records-v2/PgSortCodeSubstitutionRecord.d.ts +21 -1
- package/dist/records-v2/PgSortCodeSubstitutionRecord.js +21 -0
- package/dist/records-v2/PgTransactionRecord.d.ts +135 -2
- package/dist/records-v2/PgTransactionRecord.js +189 -0
- package/dist/records-v2/PgVocalinkRecord.d.ts +21 -1
- package/dist/records-v2/PgVocalinkRecord.js +21 -0
- package/dist/records-v2/PgWebhookAttemptRecord.d.ts +42 -1
- package/dist/records-v2/PgWebhookAttemptRecord.js +58 -0
- package/dist/records-v2/PgWebhookRecord.d.ts +122 -1
- package/dist/records-v2/PgWebhookRecord.js +190 -0
- package/dist/records-v2/PhoneNumberRecord.d.ts +41 -0
- package/dist/records-v2/PhoneNumberRecord.js +70 -0
- package/dist/records-v2/PriceBookRecord.d.ts +21 -0
- package/dist/records-v2/PriceBookRecord.js +37 -0
- package/dist/records-v2/ProductRecord.d.ts +258 -2
- package/dist/records-v2/ProductRecord.js +351 -0
- package/dist/records-v2/PushNotificationRecord.d.ts +162 -1
- package/dist/records-v2/PushNotificationRecord.js +256 -0
- package/dist/records-v2/ReferralRecord.d.ts +143 -2
- package/dist/records-v2/ReferralRecord.js +223 -0
- package/dist/records-v2/RemediationOutcomeFormRecord.d.ts +83 -2
- package/dist/records-v2/RemediationOutcomeFormRecord.js +124 -0
- package/dist/records-v2/RemediationRequiredReasonRecord.d.ts +103 -2
- package/dist/records-v2/RemediationRequiredReasonRecord.js +157 -0
- package/dist/records-v2/ReturnsRecord.d.ts +62 -1
- package/dist/records-v2/ReturnsRecord.js +91 -0
- package/dist/records-v2/RewardRecord.d.ts +123 -2
- package/dist/records-v2/RewardRecord.js +190 -0
- package/dist/records-v2/SalesTerritoryRecord.d.ts +79 -2
- package/dist/records-v2/SalesTerritoryRecord.js +107 -0
- package/dist/records-v2/ScheduleSlotRecord.d.ts +42 -1
- package/dist/records-v2/ScheduleSlotRecord.js +58 -0
- package/dist/records-v2/ServiceAppointmentConfigRecord.d.ts +287 -2
- package/dist/records-v2/ServiceAppointmentConfigRecord.js +367 -0
- package/dist/records-v2/ServiceAppointmentRecord.d.ts +81 -0
- package/dist/records-v2/ServiceAppointmentRecord.js +136 -0
- package/dist/records-v2/ServiceRecord.d.ts +40 -0
- package/dist/records-v2/ServiceRecord.js +69 -0
- package/dist/records-v2/ServiceVisitAuditRecord.d.ts +83 -2
- package/dist/records-v2/ServiceVisitAuditRecord.js +124 -0
- package/dist/records-v2/SiteSpecificRiskAssessmentOutcomeFormRecord.d.ts +83 -2
- package/dist/records-v2/SiteSpecificRiskAssessmentOutcomeFormRecord.js +124 -0
- package/dist/records-v2/SmsMessageRecord.d.ts +175 -2
- package/dist/records-v2/SmsMessageRecord.js +255 -0
- package/dist/records-v2/SweeperMaintenanceAuditRecord.d.ts +83 -2
- package/dist/records-v2/SweeperMaintenanceAuditRecord.js +124 -0
- package/dist/records-v2/TeamRecord.d.ts +101 -0
- package/dist/records-v2/TeamRecord.js +169 -0
- package/dist/records-v2/TestEntityForVisualBuilderRecord.d.ts +115 -2
- package/dist/records-v2/TestEntityForVisualBuilderRecord.js +156 -0
- package/dist/records-v2/TimeSlotRecord.d.ts +21 -0
- package/dist/records-v2/TimeSlotRecord.js +37 -0
- package/dist/records-v2/TransactionRecord.d.ts +181 -1
- package/dist/records-v2/TransactionRecord.js +288 -0
- package/dist/records-v2/TwilioUserUpdateRecord.d.ts +42 -1
- package/dist/records-v2/TwilioUserUpdateRecord.js +58 -0
- package/dist/records-v2/UgAuditOfInstallationRecord.d.ts +83 -2
- package/dist/records-v2/UgAuditOfInstallationRecord.js +124 -0
- package/dist/records-v2/UgExternalAuditRecord.d.ts +83 -2
- package/dist/records-v2/UgExternalAuditRecord.js +124 -0
- package/dist/records-v2/UgInProgressAuditRecord.d.ts +83 -2
- package/dist/records-v2/UgInProgressAuditRecord.js +124 -0
- package/dist/records-v2/UgInstallationAuditRecord.d.ts +83 -2
- package/dist/records-v2/UgInstallationAuditRecord.js +124 -0
- package/dist/records-v2/UgRetroAuditRecord.d.ts +83 -2
- package/dist/records-v2/UgRetroAuditRecord.js +124 -0
- package/dist/records-v2/UserRecord.d.ts +400 -0
- package/dist/records-v2/UserRecord.js +663 -0
- package/dist/records-v2/VisitRecord.d.ts +121 -0
- package/dist/records-v2/VisitRecord.js +202 -0
- package/dist/records-v2/VoiceConfigurationRecord.d.ts +21 -0
- package/dist/records-v2/VoiceConfigurationRecord.js +37 -0
- package/dist/records-v2/WayleaveAuditRecord.d.ts +83 -2
- package/dist/records-v2/WayleaveAuditRecord.js +124 -0
- package/dist/records-v2/WorkOrderRecord.d.ts +1226 -2
- package/dist/records-v2/WorkOrderRecord.js +1865 -0
- package/dist/records-v2/WorkOrderStatusUpdateRecord.d.ts +75 -2
- package/dist/records-v2/WorkOrderStatusUpdateRecord.js +90 -0
- package/dist/records-v2/YfFieldServiceVisitRecord.d.ts +83 -2
- package/dist/records-v2/YfFieldServiceVisitRecord.js +124 -0
- package/dist/records-v2/YfStockAuditRecord.d.ts +103 -2
- package/dist/records-v2/YfStockAuditRecord.js +157 -0
- package/dist/records-v2/index.d.ts +1 -1
- package/dist/records-v2/index.js +5 -5
- package/package.json +1 -1
|
@@ -14,6 +14,8 @@
|
|
|
14
14
|
* await record.createRemediationRequiredReason({ ... }).execute();
|
|
15
15
|
* ```
|
|
16
16
|
*
|
|
17
|
+
* Entity Types: OUTCOME_FORM
|
|
18
|
+
*
|
|
17
19
|
* AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
18
20
|
*/
|
|
19
21
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -29,6 +31,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
29
31
|
exports.isRemediationRequiredReasonRecord = exports.RemediationRequiredReasonRecord = void 0;
|
|
30
32
|
const uuid_1 = require("uuid");
|
|
31
33
|
const core_1 = require("@d19n/odin-types/dist/core");
|
|
34
|
+
const record_link_manager_1 = require("@d19n/odin-sdk-generator/dist/record-link-manager");
|
|
35
|
+
const NoteRecord_1 = require("./NoteRecord");
|
|
36
|
+
const FileRecord_1 = require("./FileRecord");
|
|
37
|
+
const WorkOrderRecord_1 = require("./WorkOrderRecord");
|
|
38
|
+
const PermissionToFailRecord_1 = require("./PermissionToFailRecord");
|
|
32
39
|
/**
|
|
33
40
|
* Builder for action execution with dryRun support
|
|
34
41
|
*
|
|
@@ -140,6 +147,145 @@ class RemediationRequiredReasonRecord {
|
|
|
140
147
|
/** Access the underlying OdinRecord (null for new records) */
|
|
141
148
|
get record() { return this._record; }
|
|
142
149
|
// ============================================
|
|
150
|
+
// TYPE GUARDS (with TypeScript type predicates)
|
|
151
|
+
// ============================================
|
|
152
|
+
/**
|
|
153
|
+
* Type guard: check if this record is of type OUTCOME_FORM
|
|
154
|
+
*
|
|
155
|
+
* When this returns true, TypeScript automatically narrows the type,
|
|
156
|
+
* giving you access to OUTCOME_FORM-specific properties.
|
|
157
|
+
*
|
|
158
|
+
* @example
|
|
159
|
+
* ```typescript
|
|
160
|
+
* if (record.isOutcomeForm()) {
|
|
161
|
+
* // TypeScript knows record.properties is OutcomeFormRemediationRequiredReasonProperties
|
|
162
|
+
* console.log(record.properties.SomeTypeSpecificField);
|
|
163
|
+
* }
|
|
164
|
+
* ```
|
|
165
|
+
* @remarks outcome form
|
|
166
|
+
*/
|
|
167
|
+
isOutcomeForm() { var _a; return ((_a = this._record) === null || _a === void 0 ? void 0 : _a.type) === 'OUTCOME_FORM'; }
|
|
168
|
+
/**
|
|
169
|
+
* Access linked Note records
|
|
170
|
+
* @remarks Available labels: RemediationRequiredReason__Note
|
|
171
|
+
* @throws Error if called on a new (unsaved) record
|
|
172
|
+
*
|
|
173
|
+
* @example
|
|
174
|
+
* ```typescript
|
|
175
|
+
* // Get all linked Note records
|
|
176
|
+
* const items = await record.notes.list();
|
|
177
|
+
* const first = await record.notes.first();
|
|
178
|
+
*
|
|
179
|
+
* // Filter by label
|
|
180
|
+
* const specific = await record.notes.first({ label: 'RemediationRequiredReason__Note' });
|
|
181
|
+
* ```
|
|
182
|
+
*/
|
|
183
|
+
get notes() {
|
|
184
|
+
var _a;
|
|
185
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
186
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
187
|
+
if (!this._notes) {
|
|
188
|
+
this._notes = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
189
|
+
sourceEntity: 'FieldServiceModule:RemediationRequiredReason',
|
|
190
|
+
targetEntity: 'SupportModule:Note',
|
|
191
|
+
targetModuleName: 'SupportModule',
|
|
192
|
+
targetEntityName: 'Note',
|
|
193
|
+
labels: ['RemediationRequiredReason__Note'],
|
|
194
|
+
}, NoteRecord_1.NoteRecord);
|
|
195
|
+
}
|
|
196
|
+
return this._notes;
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Access linked File records
|
|
200
|
+
* @remarks Available labels: RemediationRequiredReason__File
|
|
201
|
+
* @throws Error if called on a new (unsaved) record
|
|
202
|
+
*
|
|
203
|
+
* @example
|
|
204
|
+
* ```typescript
|
|
205
|
+
* // Get all linked File records
|
|
206
|
+
* const items = await record.files.list();
|
|
207
|
+
* const first = await record.files.first();
|
|
208
|
+
*
|
|
209
|
+
* // Filter by label
|
|
210
|
+
* const specific = await record.files.first({ label: 'RemediationRequiredReason__File' });
|
|
211
|
+
* ```
|
|
212
|
+
*/
|
|
213
|
+
get files() {
|
|
214
|
+
var _a;
|
|
215
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
216
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
217
|
+
if (!this._files) {
|
|
218
|
+
this._files = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
219
|
+
sourceEntity: 'FieldServiceModule:RemediationRequiredReason',
|
|
220
|
+
targetEntity: 'SchemaModule:File',
|
|
221
|
+
targetModuleName: 'SchemaModule',
|
|
222
|
+
targetEntityName: 'File',
|
|
223
|
+
labels: ['RemediationRequiredReason__File'],
|
|
224
|
+
}, FileRecord_1.FileRecord);
|
|
225
|
+
}
|
|
226
|
+
return this._files;
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Access linked WorkOrder records
|
|
230
|
+
* @remarks Available labels: WorkOrder__RemediationRequiredReason
|
|
231
|
+
* @throws Error if called on a new (unsaved) record
|
|
232
|
+
*
|
|
233
|
+
* @example
|
|
234
|
+
* ```typescript
|
|
235
|
+
* // Get all linked WorkOrder records
|
|
236
|
+
* const items = await record.workOrders.list();
|
|
237
|
+
* const first = await record.workOrders.first();
|
|
238
|
+
*
|
|
239
|
+
* // Filter by label
|
|
240
|
+
* const specific = await record.workOrders.first({ label: 'WorkOrder__RemediationRequiredReason' });
|
|
241
|
+
* ```
|
|
242
|
+
*/
|
|
243
|
+
get workOrders() {
|
|
244
|
+
var _a;
|
|
245
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
246
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
247
|
+
if (!this._workOrders) {
|
|
248
|
+
this._workOrders = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
249
|
+
sourceEntity: 'FieldServiceModule:RemediationRequiredReason',
|
|
250
|
+
targetEntity: 'FieldServiceModule:WorkOrder',
|
|
251
|
+
targetModuleName: 'FieldServiceModule',
|
|
252
|
+
targetEntityName: 'WorkOrder',
|
|
253
|
+
labels: ['WorkOrder__RemediationRequiredReason'],
|
|
254
|
+
}, WorkOrderRecord_1.WorkOrderRecord);
|
|
255
|
+
}
|
|
256
|
+
return this._workOrders;
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Access linked PermissionToFail records
|
|
260
|
+
* @remarks Available labels: PermissionToFail__RemediationRequiredReason
|
|
261
|
+
* @throws Error if called on a new (unsaved) record
|
|
262
|
+
*
|
|
263
|
+
* @example
|
|
264
|
+
* ```typescript
|
|
265
|
+
* // Get all linked PermissionToFail records
|
|
266
|
+
* const items = await record.permissionToFails.list();
|
|
267
|
+
* const first = await record.permissionToFails.first();
|
|
268
|
+
*
|
|
269
|
+
* // Filter by label
|
|
270
|
+
* const specific = await record.permissionToFails.first({ label: 'PermissionToFail__RemediationRequiredReason' });
|
|
271
|
+
* ```
|
|
272
|
+
*/
|
|
273
|
+
get permissionToFails() {
|
|
274
|
+
var _a;
|
|
275
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
276
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
277
|
+
if (!this._permissionToFails) {
|
|
278
|
+
this._permissionToFails = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
279
|
+
sourceEntity: 'FieldServiceModule:RemediationRequiredReason',
|
|
280
|
+
targetEntity: 'FieldServiceModule:PermissionToFail',
|
|
281
|
+
targetModuleName: 'FieldServiceModule',
|
|
282
|
+
targetEntityName: 'PermissionToFail',
|
|
283
|
+
labels: ['PermissionToFail__RemediationRequiredReason'],
|
|
284
|
+
}, PermissionToFailRecord_1.PermissionToFailRecord);
|
|
285
|
+
}
|
|
286
|
+
return this._permissionToFails;
|
|
287
|
+
}
|
|
288
|
+
// ============================================
|
|
143
289
|
// LINK MANAGEMENT
|
|
144
290
|
// ============================================
|
|
145
291
|
/**
|
|
@@ -215,6 +361,17 @@ class RemediationRequiredReasonRecord {
|
|
|
215
361
|
}
|
|
216
362
|
}
|
|
217
363
|
exports.RemediationRequiredReasonRecord = RemediationRequiredReasonRecord;
|
|
364
|
+
// ============================================
|
|
365
|
+
// TYPED LINK ACCESSORS
|
|
366
|
+
// ============================================
|
|
367
|
+
/** Valid labels for Note associations */
|
|
368
|
+
RemediationRequiredReasonRecord.notesLabels = ['RemediationRequiredReason__Note'];
|
|
369
|
+
/** Valid labels for File associations */
|
|
370
|
+
RemediationRequiredReasonRecord.filesLabels = ['RemediationRequiredReason__File'];
|
|
371
|
+
/** Valid labels for WorkOrder associations */
|
|
372
|
+
RemediationRequiredReasonRecord.workOrdersLabels = ['WorkOrder__RemediationRequiredReason'];
|
|
373
|
+
/** Valid labels for PermissionToFail associations */
|
|
374
|
+
RemediationRequiredReasonRecord.permissionToFailsLabels = ['PermissionToFail__RemediationRequiredReason'];
|
|
218
375
|
/** Type guard to check if an object is a RemediationRequiredReasonRecord */
|
|
219
376
|
function isRemediationRequiredReasonRecord(obj) {
|
|
220
377
|
return obj instanceof RemediationRequiredReasonRecord;
|
|
@@ -13,16 +13,23 @@
|
|
|
13
13
|
* await record.createReturns({ ... }).execute();
|
|
14
14
|
* ```
|
|
15
15
|
*
|
|
16
|
+
* Entity Types: DEFAULT
|
|
17
|
+
*
|
|
16
18
|
* AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
17
19
|
*/
|
|
18
20
|
import { OdinRecord, OdinRecordLinkDto } from '@d19n/odin-types/dist/core';
|
|
19
21
|
import { PipelineStageEntity } from '@d19n/odin-types/dist/core';
|
|
20
22
|
import { IDbRecordCreateUpdateRes } from '@d19n/odin-types/dist/core/interfaces/v1.db.interfaces';
|
|
21
23
|
import { IOdinProvider } from '@d19n/odin-sdk-generator/dist/odin-sdk-types';
|
|
24
|
+
import { RecordLinkManager } from '@d19n/odin-sdk-generator/dist/record-link-manager';
|
|
22
25
|
import { ReturnsProperties } from '../entities-v2/Returns';
|
|
23
26
|
import { CreateNewReturnProperties } from '../actions-v2/CreateNewReturnDto';
|
|
24
27
|
import { EditReturnProperties } from '../actions-v2/EditReturnDto';
|
|
25
28
|
import { ReActionReturnCompletionProperties } from '../actions-v2/ReActionReturnCompletionDto';
|
|
29
|
+
import { WorkOrderRecord } from './WorkOrderRecord';
|
|
30
|
+
import { UserRecord } from './UserRecord';
|
|
31
|
+
/** Valid entity types for Returns */
|
|
32
|
+
export declare type ReturnsType = 'DEFAULT';
|
|
26
33
|
/**
|
|
27
34
|
* Builder for action execution with dryRun support
|
|
28
35
|
*
|
|
@@ -86,6 +93,8 @@ export declare class ReturnsRecord<TProps = ReturnsProperties> {
|
|
|
86
93
|
private _provider;
|
|
87
94
|
private _pendingLinks;
|
|
88
95
|
private _preGeneratedId;
|
|
96
|
+
private _workOrders?;
|
|
97
|
+
private _users?;
|
|
89
98
|
/**
|
|
90
99
|
* Create a record wrapper.
|
|
91
100
|
* @param record - The underlying record, or null for create operations
|
|
@@ -98,7 +107,7 @@ export declare class ReturnsRecord<TProps = ReturnsProperties> {
|
|
|
98
107
|
/** Record ID - always available (pre-generated for new records) */
|
|
99
108
|
get id(): string;
|
|
100
109
|
get entity(): string;
|
|
101
|
-
get type():
|
|
110
|
+
get type(): ReturnsType | undefined;
|
|
102
111
|
/** Record properties - empty object for new (unsaved) records */
|
|
103
112
|
get properties(): TProps;
|
|
104
113
|
get title(): string | undefined;
|
|
@@ -111,6 +120,58 @@ export declare class ReturnsRecord<TProps = ReturnsProperties> {
|
|
|
111
120
|
get groups(): string[];
|
|
112
121
|
/** Access the underlying OdinRecord (null for new records) */
|
|
113
122
|
get record(): OdinRecord<TProps> | null;
|
|
123
|
+
/**
|
|
124
|
+
* Type guard: check if this record is of type DEFAULT
|
|
125
|
+
*
|
|
126
|
+
* When this returns true, TypeScript automatically narrows the type,
|
|
127
|
+
* giving you access to DEFAULT-specific properties.
|
|
128
|
+
*
|
|
129
|
+
* @example
|
|
130
|
+
* ```typescript
|
|
131
|
+
* if (record.isDefault()) {
|
|
132
|
+
* // TypeScript knows record.properties is ReturnsProperties
|
|
133
|
+
* console.log(record.properties.SomeTypeSpecificField);
|
|
134
|
+
* }
|
|
135
|
+
* ```
|
|
136
|
+
* @remarks This is the default record type
|
|
137
|
+
*/
|
|
138
|
+
isDefault(): this is ReturnsRecord<ReturnsProperties>;
|
|
139
|
+
/** Valid labels for WorkOrder associations */
|
|
140
|
+
static readonly workOrdersLabels: readonly ["Returns__WorkOrder"];
|
|
141
|
+
/**
|
|
142
|
+
* Access linked WorkOrder records
|
|
143
|
+
* @remarks Available labels: Returns__WorkOrder
|
|
144
|
+
* @throws Error if called on a new (unsaved) record
|
|
145
|
+
*
|
|
146
|
+
* @example
|
|
147
|
+
* ```typescript
|
|
148
|
+
* // Get all linked WorkOrder records
|
|
149
|
+
* const items = await record.workOrders.list();
|
|
150
|
+
* const first = await record.workOrders.first();
|
|
151
|
+
*
|
|
152
|
+
* // Filter by label
|
|
153
|
+
* const specific = await record.workOrders.first({ label: 'Returns__WorkOrder' });
|
|
154
|
+
* ```
|
|
155
|
+
*/
|
|
156
|
+
get workOrders(): RecordLinkManager<WorkOrderRecord, typeof ReturnsRecord['workOrdersLabels'][number]>;
|
|
157
|
+
/** Valid labels for User associations */
|
|
158
|
+
static readonly usersLabels: readonly ["Returns__Inspected_By"];
|
|
159
|
+
/**
|
|
160
|
+
* Access linked User records
|
|
161
|
+
* @remarks Available labels: Returns__Inspected_By
|
|
162
|
+
* @throws Error if called on a new (unsaved) record
|
|
163
|
+
*
|
|
164
|
+
* @example
|
|
165
|
+
* ```typescript
|
|
166
|
+
* // Get all linked User records
|
|
167
|
+
* const items = await record.users.list();
|
|
168
|
+
* const first = await record.users.first();
|
|
169
|
+
*
|
|
170
|
+
* // Filter by label
|
|
171
|
+
* const specific = await record.users.first({ label: 'Returns__Inspected_By' });
|
|
172
|
+
* ```
|
|
173
|
+
*/
|
|
174
|
+
get users(): RecordLinkManager<UserRecord, typeof ReturnsRecord['usersLabels'][number]>;
|
|
114
175
|
/**
|
|
115
176
|
* Queue a link to be created with the next action.
|
|
116
177
|
* Works for both create and update actions.
|
|
@@ -14,6 +14,8 @@
|
|
|
14
14
|
* await record.createReturns({ ... }).execute();
|
|
15
15
|
* ```
|
|
16
16
|
*
|
|
17
|
+
* Entity Types: DEFAULT
|
|
18
|
+
*
|
|
17
19
|
* AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
18
20
|
*/
|
|
19
21
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -29,6 +31,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
29
31
|
exports.isReturnsRecord = exports.ReturnsRecord = void 0;
|
|
30
32
|
const uuid_1 = require("uuid");
|
|
31
33
|
const core_1 = require("@d19n/odin-types/dist/core");
|
|
34
|
+
const record_link_manager_1 = require("@d19n/odin-sdk-generator/dist/record-link-manager");
|
|
35
|
+
const WorkOrderRecord_1 = require("./WorkOrderRecord");
|
|
36
|
+
const UserRecord_1 = require("./UserRecord");
|
|
32
37
|
/**
|
|
33
38
|
* Builder for action execution with dryRun support
|
|
34
39
|
*
|
|
@@ -140,6 +145,85 @@ class ReturnsRecord {
|
|
|
140
145
|
/** Access the underlying OdinRecord (null for new records) */
|
|
141
146
|
get record() { return this._record; }
|
|
142
147
|
// ============================================
|
|
148
|
+
// TYPE GUARDS (with TypeScript type predicates)
|
|
149
|
+
// ============================================
|
|
150
|
+
/**
|
|
151
|
+
* Type guard: check if this record is of type DEFAULT
|
|
152
|
+
*
|
|
153
|
+
* When this returns true, TypeScript automatically narrows the type,
|
|
154
|
+
* giving you access to DEFAULT-specific properties.
|
|
155
|
+
*
|
|
156
|
+
* @example
|
|
157
|
+
* ```typescript
|
|
158
|
+
* if (record.isDefault()) {
|
|
159
|
+
* // TypeScript knows record.properties is ReturnsProperties
|
|
160
|
+
* console.log(record.properties.SomeTypeSpecificField);
|
|
161
|
+
* }
|
|
162
|
+
* ```
|
|
163
|
+
* @remarks This is the default record type
|
|
164
|
+
*/
|
|
165
|
+
isDefault() { var _a; return ((_a = this._record) === null || _a === void 0 ? void 0 : _a.type) === 'DEFAULT'; }
|
|
166
|
+
/**
|
|
167
|
+
* Access linked WorkOrder records
|
|
168
|
+
* @remarks Available labels: Returns__WorkOrder
|
|
169
|
+
* @throws Error if called on a new (unsaved) record
|
|
170
|
+
*
|
|
171
|
+
* @example
|
|
172
|
+
* ```typescript
|
|
173
|
+
* // Get all linked WorkOrder records
|
|
174
|
+
* const items = await record.workOrders.list();
|
|
175
|
+
* const first = await record.workOrders.first();
|
|
176
|
+
*
|
|
177
|
+
* // Filter by label
|
|
178
|
+
* const specific = await record.workOrders.first({ label: 'Returns__WorkOrder' });
|
|
179
|
+
* ```
|
|
180
|
+
*/
|
|
181
|
+
get workOrders() {
|
|
182
|
+
var _a;
|
|
183
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
184
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
185
|
+
if (!this._workOrders) {
|
|
186
|
+
this._workOrders = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
187
|
+
sourceEntity: 'FieldServiceModule:Returns',
|
|
188
|
+
targetEntity: 'FieldServiceModule:WorkOrder',
|
|
189
|
+
targetModuleName: 'FieldServiceModule',
|
|
190
|
+
targetEntityName: 'WorkOrder',
|
|
191
|
+
labels: ['Returns__WorkOrder'],
|
|
192
|
+
}, WorkOrderRecord_1.WorkOrderRecord);
|
|
193
|
+
}
|
|
194
|
+
return this._workOrders;
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Access linked User records
|
|
198
|
+
* @remarks Available labels: Returns__Inspected_By
|
|
199
|
+
* @throws Error if called on a new (unsaved) record
|
|
200
|
+
*
|
|
201
|
+
* @example
|
|
202
|
+
* ```typescript
|
|
203
|
+
* // Get all linked User records
|
|
204
|
+
* const items = await record.users.list();
|
|
205
|
+
* const first = await record.users.first();
|
|
206
|
+
*
|
|
207
|
+
* // Filter by label
|
|
208
|
+
* const specific = await record.users.first({ label: 'Returns__Inspected_By' });
|
|
209
|
+
* ```
|
|
210
|
+
*/
|
|
211
|
+
get users() {
|
|
212
|
+
var _a;
|
|
213
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
214
|
+
throw new Error('Cannot access links on a new (unsaved) record');
|
|
215
|
+
if (!this._users) {
|
|
216
|
+
this._users = new record_link_manager_1.RecordLinkManager(this._provider, this._record, {
|
|
217
|
+
sourceEntity: 'FieldServiceModule:Returns',
|
|
218
|
+
targetEntity: 'IdentityModule:User',
|
|
219
|
+
targetModuleName: 'IdentityModule',
|
|
220
|
+
targetEntityName: 'User',
|
|
221
|
+
labels: ['Returns__Inspected_By'],
|
|
222
|
+
}, UserRecord_1.UserRecord);
|
|
223
|
+
}
|
|
224
|
+
return this._users;
|
|
225
|
+
}
|
|
226
|
+
// ============================================
|
|
143
227
|
// LINK MANAGEMENT
|
|
144
228
|
// ============================================
|
|
145
229
|
/**
|
|
@@ -292,6 +376,13 @@ class ReturnsRecord {
|
|
|
292
376
|
}
|
|
293
377
|
}
|
|
294
378
|
exports.ReturnsRecord = ReturnsRecord;
|
|
379
|
+
// ============================================
|
|
380
|
+
// TYPED LINK ACCESSORS
|
|
381
|
+
// ============================================
|
|
382
|
+
/** Valid labels for WorkOrder associations */
|
|
383
|
+
ReturnsRecord.workOrdersLabels = ['Returns__WorkOrder'];
|
|
384
|
+
/** Valid labels for User associations */
|
|
385
|
+
ReturnsRecord.usersLabels = ['Returns__Inspected_By'];
|
|
295
386
|
/** Type guard to check if an object is a ReturnsRecord */
|
|
296
387
|
function isReturnsRecord(obj) {
|
|
297
388
|
return obj instanceof ReturnsRecord;
|
|
@@ -13,16 +13,26 @@
|
|
|
13
13
|
* await record.createReward({ ... }).execute();
|
|
14
14
|
* ```
|
|
15
15
|
*
|
|
16
|
+
* Entity Types: CASHBACK
|
|
17
|
+
*
|
|
16
18
|
* AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
17
19
|
*/
|
|
18
20
|
import { OdinRecord, OdinRecordLinkDto } from '@d19n/odin-types/dist/core';
|
|
19
21
|
import { PipelineStageEntity } from '@d19n/odin-types/dist/core';
|
|
20
22
|
import { IDbRecordCreateUpdateRes } from '@d19n/odin-types/dist/core/interfaces/v1.db.interfaces';
|
|
21
23
|
import { IOdinProvider } from '@d19n/odin-sdk-generator/dist/odin-sdk-types';
|
|
22
|
-
import {
|
|
24
|
+
import { RecordLinkManager } from '@d19n/odin-sdk-generator/dist/record-link-manager';
|
|
25
|
+
import { RewardProperties, CashbackRewardProperties } from '../entities-v2/Reward';
|
|
23
26
|
import { CreateCashbackRewardProperties } from '../actions-v2/CreateCashbackRewardDto';
|
|
24
27
|
import { CreateCashbackRewardForOrderReferralProperties } from '../actions-v2/CreateCashbackRewardForOrderReferralDto';
|
|
25
28
|
import { CreateCashbackRewardForOrderReferralBuilder } from '../actions-v2/CreateCashbackRewardForOrderReferralDto';
|
|
29
|
+
import { CampaignRecord } from './CampaignRecord';
|
|
30
|
+
import { ContactRecord } from './ContactRecord';
|
|
31
|
+
import { AffiliateCodeRecord } from './AffiliateCodeRecord';
|
|
32
|
+
import { PaymentMethodRefundRecord } from './PaymentMethodRefundRecord';
|
|
33
|
+
import { ReferralRecord } from './ReferralRecord';
|
|
34
|
+
/** Valid entity types for Reward */
|
|
35
|
+
export declare type RewardType = 'CASHBACK';
|
|
26
36
|
/**
|
|
27
37
|
* Builder for action execution with dryRun support
|
|
28
38
|
*
|
|
@@ -86,6 +96,11 @@ export declare class RewardRecord<TProps = RewardProperties> {
|
|
|
86
96
|
private _provider;
|
|
87
97
|
private _pendingLinks;
|
|
88
98
|
private _preGeneratedId;
|
|
99
|
+
private _campaigns?;
|
|
100
|
+
private _contacts?;
|
|
101
|
+
private _affiliateCodes?;
|
|
102
|
+
private _paymentMethodRefunds?;
|
|
103
|
+
private _referrals?;
|
|
89
104
|
/**
|
|
90
105
|
* Create a record wrapper.
|
|
91
106
|
* @param record - The underlying record, or null for create operations
|
|
@@ -98,7 +113,7 @@ export declare class RewardRecord<TProps = RewardProperties> {
|
|
|
98
113
|
/** Record ID - always available (pre-generated for new records) */
|
|
99
114
|
get id(): string;
|
|
100
115
|
get entity(): string;
|
|
101
|
-
get type():
|
|
116
|
+
get type(): RewardType | undefined;
|
|
102
117
|
/** Record properties - empty object for new (unsaved) records */
|
|
103
118
|
get properties(): TProps;
|
|
104
119
|
get title(): string | undefined;
|
|
@@ -111,6 +126,112 @@ export declare class RewardRecord<TProps = RewardProperties> {
|
|
|
111
126
|
get groups(): string[];
|
|
112
127
|
/** Access the underlying OdinRecord (null for new records) */
|
|
113
128
|
get record(): OdinRecord<TProps> | null;
|
|
129
|
+
/**
|
|
130
|
+
* Type guard: check if this record is of type CASHBACK
|
|
131
|
+
*
|
|
132
|
+
* When this returns true, TypeScript automatically narrows the type,
|
|
133
|
+
* giving you access to CASHBACK-specific properties.
|
|
134
|
+
*
|
|
135
|
+
* @example
|
|
136
|
+
* ```typescript
|
|
137
|
+
* if (record.isCashback()) {
|
|
138
|
+
* // TypeScript knows record.properties is CashbackRewardProperties
|
|
139
|
+
* console.log(record.properties.SomeTypeSpecificField);
|
|
140
|
+
* }
|
|
141
|
+
* ```
|
|
142
|
+
* @remarks Cashback reward
|
|
143
|
+
*/
|
|
144
|
+
isCashback(): this is RewardRecord<CashbackRewardProperties>;
|
|
145
|
+
/** Valid labels for Campaign associations */
|
|
146
|
+
static readonly campaignsLabels: readonly ["CampaignRewards"];
|
|
147
|
+
/**
|
|
148
|
+
* Access linked Campaign records
|
|
149
|
+
* @remarks Available labels: CampaignRewards
|
|
150
|
+
* @throws Error if called on a new (unsaved) record
|
|
151
|
+
*
|
|
152
|
+
* @example
|
|
153
|
+
* ```typescript
|
|
154
|
+
* // Get all linked Campaign records
|
|
155
|
+
* const items = await record.campaigns.list();
|
|
156
|
+
* const first = await record.campaigns.first();
|
|
157
|
+
*
|
|
158
|
+
* // Filter by label
|
|
159
|
+
* const specific = await record.campaigns.first({ label: 'CampaignRewards' });
|
|
160
|
+
* ```
|
|
161
|
+
*/
|
|
162
|
+
get campaigns(): RecordLinkManager<CampaignRecord, typeof RewardRecord['campaignsLabels'][number]>;
|
|
163
|
+
/** Valid labels for Contact associations */
|
|
164
|
+
static readonly contactsLabels: readonly ["ContactReward"];
|
|
165
|
+
/**
|
|
166
|
+
* Access linked Contact records
|
|
167
|
+
* @remarks Available labels: ContactReward
|
|
168
|
+
* @throws Error if called on a new (unsaved) record
|
|
169
|
+
*
|
|
170
|
+
* @example
|
|
171
|
+
* ```typescript
|
|
172
|
+
* // Get all linked Contact records
|
|
173
|
+
* const items = await record.contacts.list();
|
|
174
|
+
* const first = await record.contacts.first();
|
|
175
|
+
*
|
|
176
|
+
* // Filter by label
|
|
177
|
+
* const specific = await record.contacts.first({ label: 'ContactReward' });
|
|
178
|
+
* ```
|
|
179
|
+
*/
|
|
180
|
+
get contacts(): RecordLinkManager<ContactRecord, typeof RewardRecord['contactsLabels'][number]>;
|
|
181
|
+
/** Valid labels for AffiliateCode associations */
|
|
182
|
+
static readonly affiliateCodesLabels: readonly ["AffiliateCodeRewards"];
|
|
183
|
+
/**
|
|
184
|
+
* Access linked AffiliateCode records
|
|
185
|
+
* @remarks Available labels: AffiliateCodeRewards
|
|
186
|
+
* @throws Error if called on a new (unsaved) record
|
|
187
|
+
*
|
|
188
|
+
* @example
|
|
189
|
+
* ```typescript
|
|
190
|
+
* // Get all linked AffiliateCode records
|
|
191
|
+
* const items = await record.affiliateCodes.list();
|
|
192
|
+
* const first = await record.affiliateCodes.first();
|
|
193
|
+
*
|
|
194
|
+
* // Filter by label
|
|
195
|
+
* const specific = await record.affiliateCodes.first({ label: 'AffiliateCodeRewards' });
|
|
196
|
+
* ```
|
|
197
|
+
*/
|
|
198
|
+
get affiliateCodes(): RecordLinkManager<AffiliateCodeRecord, typeof RewardRecord['affiliateCodesLabels'][number]>;
|
|
199
|
+
/** Valid labels for PaymentMethodRefund associations */
|
|
200
|
+
static readonly paymentMethodRefundsLabels: readonly ["RewardPaymentMethodRefund"];
|
|
201
|
+
/**
|
|
202
|
+
* Access linked PaymentMethodRefund records
|
|
203
|
+
* @remarks Available labels: RewardPaymentMethodRefund
|
|
204
|
+
* @throws Error if called on a new (unsaved) record
|
|
205
|
+
*
|
|
206
|
+
* @example
|
|
207
|
+
* ```typescript
|
|
208
|
+
* // Get all linked PaymentMethodRefund records
|
|
209
|
+
* const items = await record.paymentMethodRefunds.list();
|
|
210
|
+
* const first = await record.paymentMethodRefunds.first();
|
|
211
|
+
*
|
|
212
|
+
* // Filter by label
|
|
213
|
+
* const specific = await record.paymentMethodRefunds.first({ label: 'RewardPaymentMethodRefund' });
|
|
214
|
+
* ```
|
|
215
|
+
*/
|
|
216
|
+
get paymentMethodRefunds(): RecordLinkManager<PaymentMethodRefundRecord, typeof RewardRecord['paymentMethodRefundsLabels'][number]>;
|
|
217
|
+
/** Valid labels for Referral associations */
|
|
218
|
+
static readonly referralsLabels: readonly ["OrderReferralCashbackReward"];
|
|
219
|
+
/**
|
|
220
|
+
* Access linked Referral records
|
|
221
|
+
* @remarks Available labels: OrderReferralCashbackReward
|
|
222
|
+
* @throws Error if called on a new (unsaved) record
|
|
223
|
+
*
|
|
224
|
+
* @example
|
|
225
|
+
* ```typescript
|
|
226
|
+
* // Get all linked Referral records
|
|
227
|
+
* const items = await record.referrals.list();
|
|
228
|
+
* const first = await record.referrals.first();
|
|
229
|
+
*
|
|
230
|
+
* // Filter by label
|
|
231
|
+
* const specific = await record.referrals.first({ label: 'OrderReferralCashbackReward' });
|
|
232
|
+
* ```
|
|
233
|
+
*/
|
|
234
|
+
get referrals(): RecordLinkManager<ReferralRecord, typeof RewardRecord['referralsLabels'][number]>;
|
|
114
235
|
/**
|
|
115
236
|
* Queue a link to be created with the next action.
|
|
116
237
|
* Works for both create and update actions.
|