@d19n/youfibre-odin-sdk 2.0.118 → 2.0.119

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 (36) hide show
  1. package/README.md +12 -2
  2. package/dist/EntityRegistry.d.ts +2 -0
  3. package/dist/EntityRegistry.js +2 -0
  4. package/dist/OdinApiClient.d.ts +4 -0
  5. package/dist/OdinApiClient.js +8 -0
  6. package/dist/OdinDbClient.d.ts +4 -0
  7. package/dist/OdinDbClient.js +8 -0
  8. package/dist/accessors-v2/OfferTemplateAccessor.d.ts +111 -0
  9. package/dist/accessors-v2/OfferTemplateAccessor.js +190 -0
  10. package/dist/accessors-v2/index.d.ts +1 -0
  11. package/dist/accessors-v2/index.js +5 -3
  12. package/dist/actions-v2/CreateOfferTemplateDto.d.ts +144 -0
  13. package/dist/actions-v2/CreateOfferTemplateDto.js +54 -0
  14. package/dist/actions-v2/UpdateCustomerCallLegOnOutboundCallAnsweredDto.d.ts +81 -0
  15. package/dist/actions-v2/UpdateCustomerCallLegOnOutboundCallAnsweredDto.js +56 -0
  16. package/dist/actions-v2/UpdateCustomerCallLegOnOutboundCallCompletedDto.d.ts +88 -0
  17. package/dist/actions-v2/UpdateCustomerCallLegOnOutboundCallCompletedDto.js +56 -0
  18. package/dist/actions-v2/UpdateCustomerCallLegOnOutboundCallRingingDto.d.ts +81 -0
  19. package/dist/actions-v2/UpdateCustomerCallLegOnOutboundCallRingingDto.js +56 -0
  20. package/dist/api-sdk-v2/OfferTemplateApi.d.ts +45 -0
  21. package/dist/api-sdk-v2/OfferTemplateApi.js +151 -0
  22. package/dist/db-accessors-v2/OfferTemplateDbAccessor.d.ts +149 -0
  23. package/dist/db-accessors-v2/OfferTemplateDbAccessor.js +227 -0
  24. package/dist/db-accessors-v2/index.d.ts +1 -0
  25. package/dist/db-accessors-v2/index.js +5 -3
  26. package/dist/db-sdk-v2/OfferTemplateDb.d.ts +117 -0
  27. package/dist/db-sdk-v2/OfferTemplateDb.js +200 -0
  28. package/dist/entities-v2/OfferTemplate.d.ts +198 -0
  29. package/dist/entities-v2/OfferTemplate.js +133 -0
  30. package/dist/records-v2/CallLegRecord.d.ts +81 -0
  31. package/dist/records-v2/CallLegRecord.js +87 -0
  32. package/dist/records-v2/OfferTemplateRecord.d.ts +184 -0
  33. package/dist/records-v2/OfferTemplateRecord.js +243 -0
  34. package/dist/records-v2/index.d.ts +1 -0
  35. package/dist/records-v2/index.js +6 -3
  36. package/package.json +1 -1
package/README.md CHANGED
@@ -124,7 +124,7 @@ await workOrder.completeWorkOrder({ ... });
124
124
 
125
125
  ## Entities
126
126
 
127
- This SDK includes **164** entities across **12** modules.
127
+ This SDK includes **165** entities across **12** modules.
128
128
 
129
129
  ### CrmModule
130
130
 
@@ -323,6 +323,7 @@ This SDK includes **164** entities across **12** modules.
323
323
  | **ConsumptionSchedule** | ConsumptionSchedule Entity Definition | DEFAULT |
324
324
  | **Discount** | Discount Entity Definition | DEFAULT |
325
325
  | **Offer** | Offer Entity Definition | RECONTRACT, STANDARD |
326
+ | **OfferTemplate** | OfferTemplate Entity Definition | DEFAULT |
326
327
  | **PriceBook** | PriceBook Entity Definition | DEFAULT |
327
328
  | **Product** | Product Entity Definition | BUNDLE, INTERNET, LABOR... |
328
329
  | **ProductComponent** | ProductComponent Entity Definition | DEFAULT |
@@ -352,7 +353,7 @@ This SDK includes **164** entities across **12** modules.
352
353
 
353
354
  ## Actions
354
355
 
355
- This SDK includes **640** actions.
356
+ This SDK includes **644** actions.
356
357
 
357
358
  ### Action Types
358
359
 
@@ -1139,6 +1140,9 @@ This SDK includes **640** actions.
1139
1140
  | `UpdateCall` | UPDATE | k1.t-hEOJjsDb.NotificationModule.CallLeg.Update.UpdateCall |
1140
1141
  | `UpdateCustomerCallLegOnIncomingCallAnswered` | UPDATE | k1.t-hEOJjsDb.NotificationModule.CallLeg.Update.UpdateCustomerCallLegOnIncomingCallAnswered |
1141
1142
  | `UpdateCustomerCallLegOnNumberCallStatusCompleted` | UPDATE | k1.t-hEOJjsDb.NotificationModule.CallLeg.Update.UpdateCustomerCallLegOnNumberCallStatusCompleted |
1143
+ | `UpdateCustomerCallLegOnOutboundCallAnswered` | UPDATE | k1.t-hEOJjsDb.NotificationModule.CallLeg.Update.UpdateCustomerCallLegOnOutboundCallAnswered |
1144
+ | `UpdateCustomerCallLegOnOutboundCallCompleted` | UPDATE | k1.t-hEOJjsDb.NotificationModule.CallLeg.Update.UpdateCustomerCallLegOnOutboundCallCompleted |
1145
+ | `UpdateCustomerCallLegOnOutboundCallRinging` | UPDATE | k1.t-hEOJjsDb.NotificationModule.CallLeg.Update.UpdateCustomerCallLegOnOutboundCallRinging |
1142
1146
 
1143
1147
  #### Appointment
1144
1148
 
@@ -1397,6 +1401,12 @@ This SDK includes **640** actions.
1397
1401
  | `EditReturn` | UPDATE | k1.t-hEOJjsDb.FieldServiceModule.Returns.Update.EditReturn |
1398
1402
  | `ReActionReturnCompletion` | UPDATE | k1.t-hEOJjsDb.FieldServiceModule.Returns.Update.ReActionReturnCompletion |
1399
1403
 
1404
+ #### OfferTemplate
1405
+
1406
+ | Action | Type | Event |
1407
+ |--------|------|-------|
1408
+ | `CreateOfferTemplate` | CREATE | k1.t-hEOJjsDb.ProductModule.OfferTemplate.Create.CreateOfferTemplate |
1409
+
1400
1410
  #### OneTouchSwitch
1401
1411
 
1402
1412
  | Action | Type | Event |
@@ -60,6 +60,7 @@ import { MessageAccessor } from './accessors-v2/MessageAccessor';
60
60
  import { NetworkDeviceAccessor } from './accessors-v2/NetworkDeviceAccessor';
61
61
  import { NoteAccessor } from './accessors-v2/NoteAccessor';
62
62
  import { OfferAccessor } from './accessors-v2/OfferAccessor';
63
+ import { OfferTemplateAccessor } from './accessors-v2/OfferTemplateAccessor';
63
64
  import { OhExternalAuditAccessor } from './accessors-v2/OhExternalAuditAccessor';
64
65
  import { OneTouchSwitchAccessor } from './accessors-v2/OneTouchSwitchAccessor';
65
66
  import { OntReplacementApprovalAccessor } from './accessors-v2/OntReplacementApprovalAccessor';
@@ -164,6 +165,7 @@ export declare const EntityRegistry: {
164
165
  readonly NetworkDevice: typeof NetworkDeviceAccessor;
165
166
  readonly Note: typeof NoteAccessor;
166
167
  readonly Offer: typeof OfferAccessor;
168
+ readonly OfferTemplate: typeof OfferTemplateAccessor;
167
169
  readonly OhExternalAudit: typeof OhExternalAuditAccessor;
168
170
  readonly OneTouchSwitch: typeof OneTouchSwitchAccessor;
169
171
  readonly OntReplacementApproval: typeof OntReplacementApprovalAccessor;
@@ -63,6 +63,7 @@ const MessageAccessor_1 = require("./accessors-v2/MessageAccessor");
63
63
  const NetworkDeviceAccessor_1 = require("./accessors-v2/NetworkDeviceAccessor");
64
64
  const NoteAccessor_1 = require("./accessors-v2/NoteAccessor");
65
65
  const OfferAccessor_1 = require("./accessors-v2/OfferAccessor");
66
+ const OfferTemplateAccessor_1 = require("./accessors-v2/OfferTemplateAccessor");
66
67
  const OhExternalAuditAccessor_1 = require("./accessors-v2/OhExternalAuditAccessor");
67
68
  const OneTouchSwitchAccessor_1 = require("./accessors-v2/OneTouchSwitchAccessor");
68
69
  const OntReplacementApprovalAccessor_1 = require("./accessors-v2/OntReplacementApprovalAccessor");
@@ -167,6 +168,7 @@ exports.EntityRegistry = {
167
168
  'NetworkDevice': NetworkDeviceAccessor_1.NetworkDeviceAccessor,
168
169
  'Note': NoteAccessor_1.NoteAccessor,
169
170
  'Offer': OfferAccessor_1.OfferAccessor,
171
+ 'OfferTemplate': OfferTemplateAccessor_1.OfferTemplateAccessor,
170
172
  'OhExternalAudit': OhExternalAuditAccessor_1.OhExternalAuditAccessor,
171
173
  'OneTouchSwitch': OneTouchSwitchAccessor_1.OneTouchSwitchAccessor,
172
174
  'OntReplacementApproval': OntReplacementApprovalAccessor_1.OntReplacementApprovalAccessor,
@@ -70,6 +70,7 @@ import { MessageAccessor } from './accessors-v2/MessageAccessor';
70
70
  import { NetworkDeviceAccessor } from './accessors-v2/NetworkDeviceAccessor';
71
71
  import { NoteAccessor } from './accessors-v2/NoteAccessor';
72
72
  import { OfferAccessor } from './accessors-v2/OfferAccessor';
73
+ import { OfferTemplateAccessor } from './accessors-v2/OfferTemplateAccessor';
73
74
  import { OhExternalAuditAccessor } from './accessors-v2/OhExternalAuditAccessor';
74
75
  import { OneTouchSwitchAccessor } from './accessors-v2/OneTouchSwitchAccessor';
75
76
  import { OntReplacementApprovalAccessor } from './accessors-v2/OntReplacementApprovalAccessor';
@@ -183,6 +184,7 @@ export declare class OdinApiClient {
183
184
  private _networkDevices?;
184
185
  private _notes?;
185
186
  private _offers?;
187
+ private _offerTemplates?;
186
188
  private _ohExternalAudits?;
187
189
  private _oneTouchSwitches?;
188
190
  private _ontReplacementApprovals?;
@@ -346,6 +348,8 @@ export declare class OdinApiClient {
346
348
  get notes(): NoteAccessor;
347
349
  /** Access Offer records */
348
350
  get offers(): OfferAccessor;
351
+ /** Access OfferTemplate records */
352
+ get offerTemplates(): OfferTemplateAccessor;
349
353
  /** Access OhExternalAudit records */
350
354
  get ohExternalAudits(): OhExternalAuditAccessor;
351
355
  /** Access OneTouchSwitch records */
@@ -81,6 +81,7 @@ const MessageAccessor_1 = require("./accessors-v2/MessageAccessor");
81
81
  const NetworkDeviceAccessor_1 = require("./accessors-v2/NetworkDeviceAccessor");
82
82
  const NoteAccessor_1 = require("./accessors-v2/NoteAccessor");
83
83
  const OfferAccessor_1 = require("./accessors-v2/OfferAccessor");
84
+ const OfferTemplateAccessor_1 = require("./accessors-v2/OfferTemplateAccessor");
84
85
  const OhExternalAuditAccessor_1 = require("./accessors-v2/OhExternalAuditAccessor");
85
86
  const OneTouchSwitchAccessor_1 = require("./accessors-v2/OneTouchSwitchAccessor");
86
87
  const OntReplacementApprovalAccessor_1 = require("./accessors-v2/OntReplacementApprovalAccessor");
@@ -506,6 +507,13 @@ class OdinApiClient {
506
507
  }
507
508
  return this._offers;
508
509
  }
510
+ /** Access OfferTemplate records */
511
+ get offerTemplates() {
512
+ if (!this._offerTemplates) {
513
+ this._offerTemplates = new OfferTemplateAccessor_1.OfferTemplateAccessor(this._provider);
514
+ }
515
+ return this._offerTemplates;
516
+ }
509
517
  /** Access OhExternalAudit records */
510
518
  get ohExternalAudits() {
511
519
  if (!this._ohExternalAudits) {
@@ -77,6 +77,7 @@ import { MessageDbAccessor } from './db-accessors-v2/MessageDbAccessor';
77
77
  import { NetworkDeviceDbAccessor } from './db-accessors-v2/NetworkDeviceDbAccessor';
78
78
  import { NoteDbAccessor } from './db-accessors-v2/NoteDbAccessor';
79
79
  import { OfferDbAccessor } from './db-accessors-v2/OfferDbAccessor';
80
+ import { OfferTemplateDbAccessor } from './db-accessors-v2/OfferTemplateDbAccessor';
80
81
  import { OhExternalAuditDbAccessor } from './db-accessors-v2/OhExternalAuditDbAccessor';
81
82
  import { OneTouchSwitchDbAccessor } from './db-accessors-v2/OneTouchSwitchDbAccessor';
82
83
  import { OntReplacementApprovalDbAccessor } from './db-accessors-v2/OntReplacementApprovalDbAccessor';
@@ -184,6 +185,7 @@ export declare class OdinDbClient {
184
185
  private _networkDevices?;
185
186
  private _notes?;
186
187
  private _offers?;
188
+ private _offerTemplates?;
187
189
  private _ohExternalAudits?;
188
190
  private _oneTouchSwitches?;
189
191
  private _ontReplacementApprovals?;
@@ -356,6 +358,8 @@ export declare class OdinDbClient {
356
358
  get notes(): NoteDbAccessor;
357
359
  /** Access Offer records */
358
360
  get offers(): OfferDbAccessor;
361
+ /** Access OfferTemplate records */
362
+ get offerTemplates(): OfferTemplateDbAccessor;
359
363
  /** Access OhExternalAudit records */
360
364
  get ohExternalAudits(): OhExternalAuditDbAccessor;
361
365
  /** Access OneTouchSwitch records */
@@ -79,6 +79,7 @@ const MessageDbAccessor_1 = require("./db-accessors-v2/MessageDbAccessor");
79
79
  const NetworkDeviceDbAccessor_1 = require("./db-accessors-v2/NetworkDeviceDbAccessor");
80
80
  const NoteDbAccessor_1 = require("./db-accessors-v2/NoteDbAccessor");
81
81
  const OfferDbAccessor_1 = require("./db-accessors-v2/OfferDbAccessor");
82
+ const OfferTemplateDbAccessor_1 = require("./db-accessors-v2/OfferTemplateDbAccessor");
82
83
  const OhExternalAuditDbAccessor_1 = require("./db-accessors-v2/OhExternalAuditDbAccessor");
83
84
  const OneTouchSwitchDbAccessor_1 = require("./db-accessors-v2/OneTouchSwitchDbAccessor");
84
85
  const OntReplacementApprovalDbAccessor_1 = require("./db-accessors-v2/OntReplacementApprovalDbAccessor");
@@ -507,6 +508,13 @@ class OdinDbClient {
507
508
  }
508
509
  return this._offers;
509
510
  }
511
+ /** Access OfferTemplate records */
512
+ get offerTemplates() {
513
+ if (!this._offerTemplates) {
514
+ this._offerTemplates = new OfferTemplateDbAccessor_1.OfferTemplateDbAccessor(this._principal, this._dbService, this._defaultOptions);
515
+ }
516
+ return this._offerTemplates;
517
+ }
510
518
  /** Access OhExternalAudit records */
511
519
  get ohExternalAudits() {
512
520
  if (!this._ohExternalAudits) {
@@ -0,0 +1,111 @@
1
+ /**
2
+ * OfferTemplate Accessor
3
+ *
4
+ * Provides typed access to OfferTemplate records via API.
5
+ * Returns wrapped records with typed action methods.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * // Get existing record
10
+ * const record = await accessor.get(id);
11
+ * await record.updateOfferTemplate({ ... });
12
+ *
13
+ * // Create new record
14
+ * const newRecord = accessor.new();
15
+ * await newRecord.createOfferTemplate({ ... });
16
+ * ```
17
+ *
18
+ * AUTO-GENERATED - DO NOT EDIT DIRECTLY
19
+ */
20
+ import { OdinSearchV2 } from '@d19n/odin-types/dist/core';
21
+ import { ApiProvider } from '@d19n/odin-sdk-generator/dist/api.provider';
22
+ import { OauthParams } from '@d19n/odin-sdk-generator/dist/odin-sdk-types';
23
+ import { QueryBuilder } from '@d19n/odin-sdk-generator/dist/query-builder';
24
+ import { OfferTemplateProperties } from '../entities-v2/OfferTemplate';
25
+ import { OfferTemplateRecord } from '../records-v2/OfferTemplateRecord';
26
+ /** List response with wrapped records */
27
+ export interface OfferTemplateListResponse {
28
+ data: OfferTemplateRecord[];
29
+ hasMore: boolean;
30
+ totalRecords: number;
31
+ }
32
+ /** Search response with wrapped records */
33
+ export interface OfferTemplateSearchResponse {
34
+ records: OfferTemplateRecord[];
35
+ totalRecords: number;
36
+ hasMore: boolean;
37
+ }
38
+ export declare class OfferTemplateAccessor {
39
+ private readonly _provider;
40
+ private readonly _moduleName;
41
+ private readonly _entityName;
42
+ constructor(provider: ApiProvider);
43
+ constructor(authParams: OauthParams);
44
+ constructor(authToken: string, host?: string);
45
+ get moduleName(): string;
46
+ get entityName(): string;
47
+ /**
48
+ * Create a new empty OfferTemplate record instance for create operations.
49
+ * Pre-generates an ID that can be referenced before the record is saved.
50
+ *
51
+ * @param id - Optional ID to use (auto-generated UUID if not provided)
52
+ * @returns A new record wrapper with pre-generated ID
53
+ *
54
+ * @example
55
+ * ```typescript
56
+ * // Auto-generated ID
57
+ * const note = odinClient.notes.new();
58
+ * console.log(note.id); // UUID available immediately
59
+ *
60
+ * // Custom ID
61
+ * const order = odinClient.orders.new("custom-id-123");
62
+ *
63
+ * // Reference ID before save
64
+ * const account = odinClient.accounts.new();
65
+ * const contact = odinClient.contacts.new();
66
+ * await contact
67
+ * .link({ id: account.id, entity: "CrmModule:Account" })
68
+ * .createContact({ FirstName: "John" });
69
+ * ```
70
+ */
71
+ new(id?: string): OfferTemplateRecord;
72
+ /**
73
+ * Get a single OfferTemplate record by ID
74
+ */
75
+ get(id: string): Promise<OfferTemplateRecord>;
76
+ /**
77
+ * Get multiple OfferTemplate records by IDs
78
+ */
79
+ getMany(ids: string[]): Promise<OfferTemplateRecord[]>;
80
+ /**
81
+ * Search OfferTemplate records
82
+ */
83
+ search(params: Partial<OdinSearchV2>): Promise<OfferTemplateSearchResponse>;
84
+ /**
85
+ * Search all OfferTemplate records with automatic pagination
86
+ */
87
+ searchAll(params: Partial<OdinSearchV2>): Promise<OfferTemplateRecord[]>;
88
+ /**
89
+ * Async generator for paginating through all matching records.
90
+ * Yields batches of wrapped records.
91
+ */
92
+ paginate(params: Partial<OdinSearchV2>): AsyncGenerator<OfferTemplateRecord[]>;
93
+ /**
94
+ * Create a fluent query builder for OfferTemplate records
95
+ *
96
+ * @example
97
+ * ```typescript
98
+ * const results = await accessor
99
+ * .query()
100
+ * .where('Status', 'in', ['Active', 'Pending'])
101
+ * .where('CreatedAt', 'gte', '2025-01-01')
102
+ * .select('id', 'title', 'properties.*')
103
+ * .sortBy('createdAt', 'desc')
104
+ * .limit(100)
105
+ * .execute();
106
+ * ```
107
+ */
108
+ query(): QueryBuilder<OfferTemplateProperties, OfferTemplateRecord>;
109
+ /** Access the underlying ApiProvider */
110
+ get provider(): ApiProvider;
111
+ }
@@ -0,0 +1,190 @@
1
+ "use strict";
2
+ /**
3
+ * OfferTemplate Accessor
4
+ *
5
+ * Provides typed access to OfferTemplate records via API.
6
+ * Returns wrapped records with typed action methods.
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * // Get existing record
11
+ * const record = await accessor.get(id);
12
+ * await record.updateOfferTemplate({ ... });
13
+ *
14
+ * // Create new record
15
+ * const newRecord = accessor.new();
16
+ * await newRecord.createOfferTemplate({ ... });
17
+ * ```
18
+ *
19
+ * AUTO-GENERATED - DO NOT EDIT DIRECTLY
20
+ */
21
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
22
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
23
+ return new (P || (P = Promise))(function (resolve, reject) {
24
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
25
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
26
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
27
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
28
+ });
29
+ };
30
+ var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
31
+ var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
32
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
33
+ var g = generator.apply(thisArg, _arguments || []), i, q = [];
34
+ return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
35
+ function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
36
+ function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
37
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
38
+ function fulfill(value) { resume("next", value); }
39
+ function reject(value) { resume("throw", value); }
40
+ function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
41
+ };
42
+ Object.defineProperty(exports, "__esModule", { value: true });
43
+ exports.OfferTemplateAccessor = void 0;
44
+ const api_provider_1 = require("@d19n/odin-sdk-generator/dist/api.provider");
45
+ const query_builder_1 = require("@d19n/odin-sdk-generator/dist/query-builder");
46
+ const OfferTemplateRecord_1 = require("../records-v2/OfferTemplateRecord");
47
+ class OfferTemplateAccessor {
48
+ constructor(providerOrAuth, host) {
49
+ this._moduleName = 'ProductModule';
50
+ this._entityName = 'OfferTemplate';
51
+ if (providerOrAuth instanceof api_provider_1.ApiProvider) {
52
+ this._provider = providerOrAuth;
53
+ }
54
+ else if (typeof providerOrAuth === 'string') {
55
+ // Auth token provided
56
+ this._provider = new api_provider_1.ApiProvider(host ? { host } : undefined, providerOrAuth);
57
+ }
58
+ else {
59
+ // OauthParams provided
60
+ this._provider = new api_provider_1.ApiProvider(providerOrAuth);
61
+ }
62
+ }
63
+ get moduleName() { return this._moduleName; }
64
+ get entityName() { return this._entityName; }
65
+ // ============================================
66
+ // RECORD CREATION
67
+ // ============================================
68
+ /**
69
+ * Create a new empty OfferTemplate record instance for create operations.
70
+ * Pre-generates an ID that can be referenced before the record is saved.
71
+ *
72
+ * @param id - Optional ID to use (auto-generated UUID if not provided)
73
+ * @returns A new record wrapper with pre-generated ID
74
+ *
75
+ * @example
76
+ * ```typescript
77
+ * // Auto-generated ID
78
+ * const note = odinClient.notes.new();
79
+ * console.log(note.id); // UUID available immediately
80
+ *
81
+ * // Custom ID
82
+ * const order = odinClient.orders.new("custom-id-123");
83
+ *
84
+ * // Reference ID before save
85
+ * const account = odinClient.accounts.new();
86
+ * const contact = odinClient.contacts.new();
87
+ * await contact
88
+ * .link({ id: account.id, entity: "CrmModule:Account" })
89
+ * .createContact({ FirstName: "John" });
90
+ * ```
91
+ */
92
+ new(id) {
93
+ return new OfferTemplateRecord_1.OfferTemplateRecord(null, this._provider, id);
94
+ }
95
+ // ============================================
96
+ // RECORD RETRIEVAL
97
+ // ============================================
98
+ /**
99
+ * Get a single OfferTemplate record by ID
100
+ */
101
+ get(id) {
102
+ return __awaiter(this, void 0, void 0, function* () {
103
+ const record = yield this._provider._getByPrimaryKey(this._moduleName, this._entityName, id);
104
+ return new OfferTemplateRecord_1.OfferTemplateRecord(record, this._provider);
105
+ });
106
+ }
107
+ /**
108
+ * Get multiple OfferTemplate records by IDs
109
+ */
110
+ getMany(ids) {
111
+ return __awaiter(this, void 0, void 0, function* () {
112
+ if (ids.length === 0)
113
+ return [];
114
+ const records = yield this._provider._getManyByPrimaryKey(this._moduleName, this._entityName, ids);
115
+ return records.map((r) => new OfferTemplateRecord_1.OfferTemplateRecord(r, this._provider));
116
+ });
117
+ }
118
+ // ============================================
119
+ // SEARCH OPERATIONS
120
+ // ============================================
121
+ /**
122
+ * Search OfferTemplate records
123
+ */
124
+ search(params) {
125
+ return __awaiter(this, void 0, void 0, function* () {
126
+ const result = yield this._provider._searchRecords(this._moduleName, this._entityName, params);
127
+ return {
128
+ records: result.records.map((r) => new OfferTemplateRecord_1.OfferTemplateRecord(r, this._provider)),
129
+ totalRecords: result.totalRecords,
130
+ hasMore: result.hasMore,
131
+ };
132
+ });
133
+ }
134
+ /**
135
+ * Search all OfferTemplate records with automatic pagination
136
+ */
137
+ searchAll(params) {
138
+ return __awaiter(this, void 0, void 0, function* () {
139
+ const result = yield this._provider._searchAllRecordsAndPaginate(this._moduleName, this._entityName, params);
140
+ return result.records.map((r) => new OfferTemplateRecord_1.OfferTemplateRecord(r, this._provider));
141
+ });
142
+ }
143
+ /**
144
+ * Async generator for paginating through all matching records.
145
+ * Yields batches of wrapped records.
146
+ */
147
+ paginate(params) {
148
+ var _a;
149
+ return __asyncGenerator(this, arguments, function* paginate_1() {
150
+ let hasMore = true;
151
+ let searchAfter;
152
+ const query = Object.assign(Object.assign({}, params.query), { pageSize: ((_a = params.query) === null || _a === void 0 ? void 0 : _a.pageSize) || 500 });
153
+ while (hasMore) {
154
+ const result = yield __await(this._provider._searchRecords(this._moduleName, this._entityName, Object.assign(Object.assign({}, params), { query: Object.assign(Object.assign({}, query), { searchAfter }) })));
155
+ if (result.records.length > 0) {
156
+ yield yield __await(result.records.map((r) => new OfferTemplateRecord_1.OfferTemplateRecord(r, this._provider)));
157
+ const lastRecord = result.records[result.records.length - 1];
158
+ searchAfter = lastRecord === null || lastRecord === void 0 ? void 0 : lastRecord.sort;
159
+ }
160
+ hasMore = result.hasMore && result.records.length >= query.pageSize;
161
+ }
162
+ });
163
+ }
164
+ // ============================================
165
+ // QUERY BUILDER
166
+ // ============================================
167
+ /**
168
+ * Create a fluent query builder for OfferTemplate records
169
+ *
170
+ * @example
171
+ * ```typescript
172
+ * const results = await accessor
173
+ * .query()
174
+ * .where('Status', 'in', ['Active', 'Pending'])
175
+ * .where('CreatedAt', 'gte', '2025-01-01')
176
+ * .select('id', 'title', 'properties.*')
177
+ * .sortBy('createdAt', 'desc')
178
+ * .limit(100)
179
+ * .execute();
180
+ * ```
181
+ */
182
+ query() {
183
+ return (0, query_builder_1.createQueryBuilder)(this);
184
+ }
185
+ /** Access the underlying ApiProvider */
186
+ get provider() {
187
+ return this._provider;
188
+ }
189
+ }
190
+ exports.OfferTemplateAccessor = OfferTemplateAccessor;
@@ -55,6 +55,7 @@ export { MessageAccessor, MessageSearchResponse, MessageListResponse } from './M
55
55
  export { NetworkDeviceAccessor, NetworkDeviceSearchResponse, NetworkDeviceListResponse } from './NetworkDeviceAccessor';
56
56
  export { NoteAccessor, NoteSearchResponse, NoteListResponse } from './NoteAccessor';
57
57
  export { OfferAccessor, OfferSearchResponse, OfferListResponse } from './OfferAccessor';
58
+ export { OfferTemplateAccessor, OfferTemplateSearchResponse, OfferTemplateListResponse } from './OfferTemplateAccessor';
58
59
  export { OhExternalAuditAccessor, OhExternalAuditSearchResponse, OhExternalAuditListResponse } from './OhExternalAuditAccessor';
59
60
  export { OneTouchSwitchAccessor, OneTouchSwitchSearchResponse, OneTouchSwitchListResponse } from './OneTouchSwitchAccessor';
60
61
  export { OntReplacementApprovalAccessor, OntReplacementApprovalSearchResponse, OntReplacementApprovalListResponse } from './OntReplacementApprovalAccessor';
@@ -8,9 +8,9 @@
8
8
  * AUTO-GENERATED - DO NOT EDIT DIRECTLY
9
9
  */
10
10
  Object.defineProperty(exports, "__esModule", { value: true });
11
- exports.OhExternalAuditAccessor = exports.OfferAccessor = exports.NoteAccessor = exports.NetworkDeviceAccessor = exports.MessageAccessor = exports.LeadAccessor = exports.KnowledgeArticleAccessor = exports.InvoiceAccessor = exports.InvoiceItemAccessor = exports.ImpersonationTrackerAccessor = exports.FileAccessor = exports.FieldServiceProductAccessor = exports.FieldServiceDispatchedProductAccessor = exports.ExchangeAccessor = exports.EmailTemplateAccessor = exports.EmailSenderAccessor = exports.EmailAccessor = exports.DiscountAccessor = exports.CustomerPhonePortingAccessor = exports.CustomerDeviceRouterAccessor = exports.CustomerDeviceOntAccessor = exports.CustomerDeviceConfigurationAccessor = exports.CustomerDeviceAtaAccessor = exports.CrmDatasetAccessor = exports.CreditNoteAccessor = exports.ConversationAccessor = exports.ContractBuyOutAccessor = exports.ContactAccessor = exports.ContactIdentityAccessor = exports.ConfigAccessor = exports.ChurnRequestAccessor = exports.ChangeReasonAccessor = exports.CaseAccessor = exports.CampaignAccessor = exports.CallTransferAccessor = exports.CallAccessor = exports.CallLegAccessor = exports.CallEventAccessor = exports.BrskEntityMigrationErrorAccessor = exports.BngProvisionAccessor = exports.BillingRequestAccessor = exports.BillingAdjustmentAccessor = exports.AppointmentAccessor = exports.AffiliateCodeAccessor = exports.AddressAccessor = exports.AddressInteractionAccessor = exports.ActivityAccessor = exports.ActivityLogAccessor = exports.AccountAccessor = exports.AccountCreditAccessor = void 0;
12
- exports.VoiceConfigurationAccessor = exports.VisitAccessor = exports.UserAccessor = exports.UgExternalAuditAccessor = exports.TwilioUserUpdateAccessor = exports.TwilioTaskQueueAccessor = exports.TransactionAccessor = exports.TimeSlotAccessor = exports.TeamAccessor = exports.SmsMessageAccessor = exports.SiteSpecificRiskAssessmentOutcomeFormAccessor = exports.ServiceAccessor = exports.ServiceAppointmentAccessor = exports.ServiceAppointmentConfigAccessor = exports.ScheduleSlotAccessor = exports.SalesTerritoryAccessor = exports.RewardAccessor = exports.ReturnsAccessor = exports.RemediationRequiredReasonAccessor = exports.RemediationOutcomeFormAccessor = exports.RegionAccessor = exports.ReferralAccessor = exports.PushNotificationAccessor = exports.ProductAccessor = exports.PriceBookAccessor = exports.PgWebhookAccessor = exports.PgWebhookAttemptAccessor = exports.PgVocalinkAccessor = exports.PgTransactionAccessor = exports.PgSortCodeSubstitutionAccessor = exports.PgPaymentMethodAccessor = exports.PgLogAccessor = exports.PgFileAllocationAccessor = exports.PgDisputeAccessor = exports.PgDirectDebitFileAccessor = exports.PgContactAccessor = exports.PgAccountValidationAccessor = exports.PermissionToFailAccessor = exports.PaymentAccessor = exports.PaymentMethodRefundAccessor = exports.PaymentMethodAccessor = exports.PICRequestAccessor = exports.OverlayRealA55Accessor = exports.OutageAccessor = exports.OrderAccessor = exports.OrderKciAccessor = exports.OrderItemAccessor = exports.OrderCheckAccessor = exports.OntReplacementApprovalAccessor = exports.OneTouchSwitchAccessor = void 0;
13
- exports.WorkOrderStatusUpdateAccessor = exports.WorkOrderAccessor = exports.WayleaveAuditAccessor = void 0;
11
+ exports.OfferTemplateAccessor = exports.OfferAccessor = exports.NoteAccessor = exports.NetworkDeviceAccessor = exports.MessageAccessor = exports.LeadAccessor = exports.KnowledgeArticleAccessor = exports.InvoiceAccessor = exports.InvoiceItemAccessor = exports.ImpersonationTrackerAccessor = exports.FileAccessor = exports.FieldServiceProductAccessor = exports.FieldServiceDispatchedProductAccessor = exports.ExchangeAccessor = exports.EmailTemplateAccessor = exports.EmailSenderAccessor = exports.EmailAccessor = exports.DiscountAccessor = exports.CustomerPhonePortingAccessor = exports.CustomerDeviceRouterAccessor = exports.CustomerDeviceOntAccessor = exports.CustomerDeviceConfigurationAccessor = exports.CustomerDeviceAtaAccessor = exports.CrmDatasetAccessor = exports.CreditNoteAccessor = exports.ConversationAccessor = exports.ContractBuyOutAccessor = exports.ContactAccessor = exports.ContactIdentityAccessor = exports.ConfigAccessor = exports.ChurnRequestAccessor = exports.ChangeReasonAccessor = exports.CaseAccessor = exports.CampaignAccessor = exports.CallTransferAccessor = exports.CallAccessor = exports.CallLegAccessor = exports.CallEventAccessor = exports.BrskEntityMigrationErrorAccessor = exports.BngProvisionAccessor = exports.BillingRequestAccessor = exports.BillingAdjustmentAccessor = exports.AppointmentAccessor = exports.AffiliateCodeAccessor = exports.AddressAccessor = exports.AddressInteractionAccessor = exports.ActivityAccessor = exports.ActivityLogAccessor = exports.AccountAccessor = exports.AccountCreditAccessor = void 0;
12
+ exports.VisitAccessor = exports.UserAccessor = exports.UgExternalAuditAccessor = exports.TwilioUserUpdateAccessor = exports.TwilioTaskQueueAccessor = exports.TransactionAccessor = exports.TimeSlotAccessor = exports.TeamAccessor = exports.SmsMessageAccessor = exports.SiteSpecificRiskAssessmentOutcomeFormAccessor = exports.ServiceAccessor = exports.ServiceAppointmentAccessor = exports.ServiceAppointmentConfigAccessor = exports.ScheduleSlotAccessor = exports.SalesTerritoryAccessor = exports.RewardAccessor = exports.ReturnsAccessor = exports.RemediationRequiredReasonAccessor = exports.RemediationOutcomeFormAccessor = exports.RegionAccessor = exports.ReferralAccessor = exports.PushNotificationAccessor = exports.ProductAccessor = exports.PriceBookAccessor = exports.PgWebhookAccessor = exports.PgWebhookAttemptAccessor = exports.PgVocalinkAccessor = exports.PgTransactionAccessor = exports.PgSortCodeSubstitutionAccessor = exports.PgPaymentMethodAccessor = exports.PgLogAccessor = exports.PgFileAllocationAccessor = exports.PgDisputeAccessor = exports.PgDirectDebitFileAccessor = exports.PgContactAccessor = exports.PgAccountValidationAccessor = exports.PermissionToFailAccessor = exports.PaymentAccessor = exports.PaymentMethodRefundAccessor = exports.PaymentMethodAccessor = exports.PICRequestAccessor = exports.OverlayRealA55Accessor = exports.OutageAccessor = exports.OrderAccessor = exports.OrderKciAccessor = exports.OrderItemAccessor = exports.OrderCheckAccessor = exports.OntReplacementApprovalAccessor = exports.OneTouchSwitchAccessor = exports.OhExternalAuditAccessor = void 0;
13
+ exports.WorkOrderStatusUpdateAccessor = exports.WorkOrderAccessor = exports.WayleaveAuditAccessor = exports.VoiceConfigurationAccessor = void 0;
14
14
  var AccountCreditAccessor_1 = require("./AccountCreditAccessor");
15
15
  Object.defineProperty(exports, "AccountCreditAccessor", { enumerable: true, get: function () { return AccountCreditAccessor_1.AccountCreditAccessor; } });
16
16
  var AccountAccessor_1 = require("./AccountAccessor");
@@ -109,6 +109,8 @@ var NoteAccessor_1 = require("./NoteAccessor");
109
109
  Object.defineProperty(exports, "NoteAccessor", { enumerable: true, get: function () { return NoteAccessor_1.NoteAccessor; } });
110
110
  var OfferAccessor_1 = require("./OfferAccessor");
111
111
  Object.defineProperty(exports, "OfferAccessor", { enumerable: true, get: function () { return OfferAccessor_1.OfferAccessor; } });
112
+ var OfferTemplateAccessor_1 = require("./OfferTemplateAccessor");
113
+ Object.defineProperty(exports, "OfferTemplateAccessor", { enumerable: true, get: function () { return OfferTemplateAccessor_1.OfferTemplateAccessor; } });
112
114
  var OhExternalAuditAccessor_1 = require("./OhExternalAuditAccessor");
113
115
  Object.defineProperty(exports, "OhExternalAuditAccessor", { enumerable: true, get: function () { return OhExternalAuditAccessor_1.OhExternalAuditAccessor; } });
114
116
  var OneTouchSwitchAccessor_1 = require("./OneTouchSwitchAccessor");
@@ -0,0 +1,144 @@
1
+ /**
2
+ * CreateOfferTemplate Action DTO
3
+ *
4
+ * Create Offer Template
5
+ *
6
+ * @module ProductModule
7
+ * @entity OfferTemplate
8
+ * @actionKey CreateOfferTemplate
9
+ * @event k1.t-hEOJjsDb.ProductModule.OfferTemplate.Create.CreateOfferTemplate
10
+ *
11
+ * AUTO-GENERATED - DO NOT EDIT DIRECTLY
12
+ */
13
+ import { OdinRecordCreateDto, OdinRecordCreatedEvent } from '@d19n/odin-types/dist/core';
14
+ /**
15
+ * RabbitMQ message payload for CreateOfferTemplate created events
16
+ *
17
+ * @event k1.t-hEOJjsDb.ProductModule.OfferTemplate.Create.CreateOfferTemplate
18
+ */
19
+ export interface CreateOfferTemplateMessage extends OdinRecordCreatedEvent<CreateOfferTemplateDto, CreateOfferTemplateProperties> {
20
+ }
21
+ /**
22
+ * Properties for CreateOfferTemplate action
23
+ *
24
+ * @property Required fields: 0
25
+ * @property Optional fields: 12
26
+ */
27
+ export interface CreateOfferTemplateProperties {
28
+ /**
29
+ * name
30
+ *
31
+ * Display name/title for Offer records. Primary identifier for Product Management team.
32
+ * @type {TEXT}
33
+ */
34
+ Name?: string | null;
35
+ /**
36
+ * customer type
37
+ *
38
+ * customer type the product is available to (Product Management - Offer)
39
+ * @type {ENUM}
40
+ */
41
+ CustomerType?: string | null;
42
+ /**
43
+ * Contract Type
44
+ *
45
+ * contract type based on monthly / in contract products (Product Management - Offer)
46
+ * @type {ENUM}
47
+ */
48
+ ContractType?: string | null;
49
+ /**
50
+ * ex polygon id
51
+ *
52
+ * the id of the ex polygon, use 000 for global region configurations (Product Management - Offer)
53
+ * @type {TEXT}
54
+ */
55
+ ExPolygonId?: string | null;
56
+ /**
57
+ * Available From
58
+ *
59
+ * offer is available from this date (Product Management - Offer)
60
+ * @type {DATE}
61
+ */
62
+ AvailableFrom?: string | null;
63
+ /**
64
+ * Available to
65
+ *
66
+ * offer is available to this date (Product Management - Offer)
67
+ * @type {DATE}
68
+ */
69
+ AvailableTo?: string | null;
70
+ /**
71
+ * channel
72
+ *
73
+ * channel for the offer (Product Management - Offer)
74
+ * @type {ENUM}
75
+ */
76
+ Channel?: string | null;
77
+ /**
78
+ * code
79
+ *
80
+ * code to retrieve offer (Product Management - Offer)
81
+ * @type {TEXT}
82
+ */
83
+ Code?: string | null;
84
+ /**
85
+ * description
86
+ *
87
+ * description of the offer (Product Management - Offer)
88
+ * @type {TEXT}
89
+ */
90
+ Description?: string | null;
91
+ /**
92
+ * Contract Buyout
93
+ *
94
+ * Contract buyout option for an Order (Product Management - Offer)
95
+ * @type {BOOLEAN}
96
+ */
97
+ ContractBuyout?: boolean | null;
98
+ /**
99
+ * Price Match availability
100
+ *
101
+ * Price Match (Product Management - Offer)
102
+ * @type {BOOLEAN}
103
+ */
104
+ PriceMatch?: boolean | null;
105
+ /**
106
+ * is default
107
+ *
108
+ * is the default offer (Product Management - Offer)
109
+ * @type {BOOLEAN}
110
+ */
111
+ IsDefault?: boolean | null;
112
+ }
113
+ /**
114
+ * CreateOfferTemplate
115
+ *
116
+ * Create Offer Template
117
+ *
118
+ * @actionType CREATE - Creates a new OfferTemplate record
119
+ * @module ProductModule
120
+ * @entity OfferTemplate
121
+ * @event k1.t-hEOJjsDb.ProductModule.OfferTemplate.Create.CreateOfferTemplate
122
+ * @permission schema.action.createoffertemplate.trigger
123
+ * @benchmark This action is tracked for performance benchmarks
124
+ */
125
+ export declare class CreateOfferTemplateDto extends OdinRecordCreateDto<CreateOfferTemplateProperties> {
126
+ /** Used by SDK generators to identify action type */
127
+ static readonly ACTION_TYPE = "CREATE";
128
+ static readonly ACTION_KEY = "CreateOfferTemplate";
129
+ static readonly MODULE_NAME = "ProductModule";
130
+ static readonly ENTITIES: string[];
131
+ static readonly EVENT_NAME = "k1.t-hEOJjsDb.ProductModule.OfferTemplate.Create.CreateOfferTemplate";
132
+ static readonly PERMISSION = "schema.action.createoffertemplate.trigger";
133
+ /** Step metadata - entity this action targets */
134
+ static readonly STEP_ENTITY = "ProductModule:OfferTemplate";
135
+ static readonly STEP_SCHEMA_ID = "91d64071-eb58-462d-b6cf-b5981182aa91";
136
+ static readonly STEP_SCHEMA_ACTION_ID = "420d6692-4db6-462e-9b9f-95f82bd83b58";
137
+ static readonly AUTO_LINK_PARENT = true;
138
+ readonly actionName: string;
139
+ readonly schemaActionId: string;
140
+ readonly entity: string;
141
+ constructor(properties: CreateOfferTemplateProperties, options?: {
142
+ journeyId?: string;
143
+ });
144
+ }