@d19n/youfibre-odin-sdk 2.0.270 → 2.0.271

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 (33) hide show
  1. package/README.md +8 -1
  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/YfWifiSurveyAccessor.d.ts +111 -0
  9. package/dist/accessors-v2/YfWifiSurveyAccessor.js +190 -0
  10. package/dist/accessors-v2/index.d.ts +1 -0
  11. package/dist/accessors-v2/index.js +3 -1
  12. package/dist/actions-v2/CreateAppointmentDto.d.ts +8 -1
  13. package/dist/actions-v2/CreateCustomerDeviceBatteryDto.d.ts +103 -1
  14. package/dist/actions-v2/CreateCustomerDeviceBatteryDto.js +120 -1
  15. package/dist/actions-v2/CreateYfWifiSurveyDto.d.ts +118 -0
  16. package/dist/actions-v2/CreateYfWifiSurveyDto.js +54 -0
  17. package/dist/actions-v2/UpdateCustomerDeviceBatteryDto.d.ts +183 -0
  18. package/dist/actions-v2/UpdateCustomerDeviceBatteryDto.js +179 -0
  19. package/dist/db-accessors-v2/YfWifiSurveyDbAccessor.d.ts +149 -0
  20. package/dist/db-accessors-v2/YfWifiSurveyDbAccessor.js +227 -0
  21. package/dist/db-accessors-v2/index.d.ts +1 -0
  22. package/dist/db-accessors-v2/index.js +3 -1
  23. package/dist/records-v2/CustomerDeviceRecord.d.ts +34 -68
  24. package/dist/records-v2/CustomerDeviceRecord.js +38 -17
  25. package/dist/records-v2/FileRecord.d.ts +20 -0
  26. package/dist/records-v2/FileRecord.js +33 -0
  27. package/dist/records-v2/WorkOrderRecord.d.ts +20 -0
  28. package/dist/records-v2/WorkOrderRecord.js +33 -0
  29. package/dist/records-v2/YfWifiSurveyRecord.d.ts +225 -0
  30. package/dist/records-v2/YfWifiSurveyRecord.js +313 -0
  31. package/dist/records-v2/index.d.ts +1 -0
  32. package/dist/records-v2/index.js +5 -2
  33. package/package.json +1 -1
package/README.md CHANGED
@@ -365,7 +365,7 @@ This SDK includes **177** entities across **12** modules.
365
365
 
366
366
  ## Actions
367
367
 
368
- This SDK includes **808** actions.
368
+ This SDK includes **810** actions.
369
369
 
370
370
  ### Action Types
371
371
 
@@ -1490,6 +1490,7 @@ This SDK includes **808** actions.
1490
1490
  | Action | Type | Event |
1491
1491
  |--------|------|-------|
1492
1492
  | `CreateCustomerDeviceBattery` | CREATE | k1.t-hEOJjsDb.ServiceModule.CustomerDevice.Create.CreateCustomerDeviceBattery |
1493
+ | `UpdateCustomerDeviceBattery` | UPDATE | k1.t-hEOJjsDb.ServiceModule.CustomerDevice.Update.UpdateCustomerDeviceBattery |
1493
1494
 
1494
1495
  #### CustomerDeviceConfiguration
1495
1496
 
@@ -2115,6 +2116,12 @@ This SDK includes **808** actions.
2115
2116
  |--------|------|-------|
2116
2117
  | `CreateWorkOrderStatusUpdate` | CREATE | k1.t-hEOJjsDb.FieldServiceModule.WorkOrderStatusUpdate.Create.CreateWorkOrderStatusUpdate |
2117
2118
 
2119
+ #### YfWifiSurvey
2120
+
2121
+ | Action | Type | Event |
2122
+ |--------|------|-------|
2123
+ | `CreateYfWifiSurvey` | CREATE | k1.t-hEOJjsDb.FieldServiceModule.YfWifiSurvey.Create.CreateYfWifiSurvey |
2124
+
2118
2125
  #### OutboundDialCampaignCase
2119
2126
 
2120
2127
  | Action | Type | Event |
@@ -125,6 +125,7 @@ import { WayleaveAuditAccessor } from './accessors-v2/WayleaveAuditAccessor';
125
125
  import { WorkOrderAccessor } from './accessors-v2/WorkOrderAccessor';
126
126
  import { WorkOrderStatusUpdateAccessor } from './accessors-v2/WorkOrderStatusUpdateAccessor';
127
127
  import { YfFieldServiceVisitAccessor } from './accessors-v2/YfFieldServiceVisitAccessor';
128
+ import { YfWifiSurveyAccessor } from './accessors-v2/YfWifiSurveyAccessor';
128
129
  export declare const EntityRegistry: {
129
130
  readonly Account: typeof AccountAccessor;
130
131
  readonly AccountCredit: typeof AccountCreditAccessor;
@@ -240,6 +241,7 @@ export declare const EntityRegistry: {
240
241
  readonly WorkOrder: typeof WorkOrderAccessor;
241
242
  readonly WorkOrderStatusUpdate: typeof WorkOrderStatusUpdateAccessor;
242
243
  readonly YfFieldServiceVisit: typeof YfFieldServiceVisitAccessor;
244
+ readonly YfWifiSurvey: typeof YfWifiSurveyAccessor;
243
245
  };
244
246
  export declare type EntityName = keyof typeof EntityRegistry;
245
247
  export declare function getAccessor<T extends EntityName>(entityName: T, provider: any): InstanceType<(typeof EntityRegistry)[T]>;
@@ -128,6 +128,7 @@ const WayleaveAuditAccessor_1 = require("./accessors-v2/WayleaveAuditAccessor");
128
128
  const WorkOrderAccessor_1 = require("./accessors-v2/WorkOrderAccessor");
129
129
  const WorkOrderStatusUpdateAccessor_1 = require("./accessors-v2/WorkOrderStatusUpdateAccessor");
130
130
  const YfFieldServiceVisitAccessor_1 = require("./accessors-v2/YfFieldServiceVisitAccessor");
131
+ const YfWifiSurveyAccessor_1 = require("./accessors-v2/YfWifiSurveyAccessor");
131
132
  exports.EntityRegistry = {
132
133
  'Account': AccountAccessor_1.AccountAccessor,
133
134
  'AccountCredit': AccountCreditAccessor_1.AccountCreditAccessor,
@@ -243,6 +244,7 @@ exports.EntityRegistry = {
243
244
  'WorkOrder': WorkOrderAccessor_1.WorkOrderAccessor,
244
245
  'WorkOrderStatusUpdate': WorkOrderStatusUpdateAccessor_1.WorkOrderStatusUpdateAccessor,
245
246
  'YfFieldServiceVisit': YfFieldServiceVisitAccessor_1.YfFieldServiceVisitAccessor,
247
+ 'YfWifiSurvey': YfWifiSurveyAccessor_1.YfWifiSurveyAccessor,
246
248
  };
247
249
  function getAccessor(entityName, provider) {
248
250
  const Accessor = exports.EntityRegistry[entityName];
@@ -135,6 +135,7 @@ import { WayleaveAuditAccessor } from './accessors-v2/WayleaveAuditAccessor';
135
135
  import { WorkOrderAccessor } from './accessors-v2/WorkOrderAccessor';
136
136
  import { WorkOrderStatusUpdateAccessor } from './accessors-v2/WorkOrderStatusUpdateAccessor';
137
137
  import { YfFieldServiceVisitAccessor } from './accessors-v2/YfFieldServiceVisitAccessor';
138
+ import { YfWifiSurveyAccessor } from './accessors-v2/YfWifiSurveyAccessor';
138
139
  export interface OdinApiClientConfig {
139
140
  /** ODIN API host (e.g., 'api.yourdomain.com') */
140
141
  host: string;
@@ -259,6 +260,7 @@ export declare class OdinApiClient {
259
260
  private _workOrders?;
260
261
  private _workOrderStatusUpdates?;
261
262
  private _yfFieldServiceVisits?;
263
+ private _yfWifiSurveys?;
262
264
  /**
263
265
  * Create a new OdinApiClient
264
266
  *
@@ -498,6 +500,8 @@ export declare class OdinApiClient {
498
500
  get workOrderStatusUpdates(): WorkOrderStatusUpdateAccessor;
499
501
  /** Access YfFieldServiceVisit records */
500
502
  get yfFieldServiceVisits(): YfFieldServiceVisitAccessor;
503
+ /** Access YfWifiSurvey records */
504
+ get yfWifiSurveys(): YfWifiSurveyAccessor;
501
505
  /** Access the underlying ApiProvider for advanced operations */
502
506
  get provider(): ApiProvider;
503
507
  /** Manually authenticate (usually not needed, handled automatically) */
@@ -146,6 +146,7 @@ const WayleaveAuditAccessor_1 = require("./accessors-v2/WayleaveAuditAccessor");
146
146
  const WorkOrderAccessor_1 = require("./accessors-v2/WorkOrderAccessor");
147
147
  const WorkOrderStatusUpdateAccessor_1 = require("./accessors-v2/WorkOrderStatusUpdateAccessor");
148
148
  const YfFieldServiceVisitAccessor_1 = require("./accessors-v2/YfFieldServiceVisitAccessor");
149
+ const YfWifiSurveyAccessor_1 = require("./accessors-v2/YfWifiSurveyAccessor");
149
150
  class OdinApiClient {
150
151
  // ============================================
151
152
  // CONSTRUCTOR
@@ -972,6 +973,13 @@ class OdinApiClient {
972
973
  }
973
974
  return this._yfFieldServiceVisits;
974
975
  }
976
+ /** Access YfWifiSurvey records */
977
+ get yfWifiSurveys() {
978
+ if (!this._yfWifiSurveys) {
979
+ this._yfWifiSurveys = new YfWifiSurveyAccessor_1.YfWifiSurveyAccessor(this._provider);
980
+ }
981
+ return this._yfWifiSurveys;
982
+ }
975
983
  // ============================================
976
984
  // PROVIDER ACCESS
977
985
  // ============================================
@@ -142,6 +142,7 @@ import { WayleaveAuditDbAccessor } from './db-accessors-v2/WayleaveAuditDbAccess
142
142
  import { WorkOrderDbAccessor } from './db-accessors-v2/WorkOrderDbAccessor';
143
143
  import { WorkOrderStatusUpdateDbAccessor } from './db-accessors-v2/WorkOrderStatusUpdateDbAccessor';
144
144
  import { YfFieldServiceVisitDbAccessor } from './db-accessors-v2/YfFieldServiceVisitDbAccessor';
145
+ import { YfWifiSurveyDbAccessor } from './db-accessors-v2/YfWifiSurveyDbAccessor';
145
146
  export declare class OdinDbClient {
146
147
  private readonly _principal;
147
148
  private readonly _dbService;
@@ -260,6 +261,7 @@ export declare class OdinDbClient {
260
261
  private _workOrders?;
261
262
  private _workOrderStatusUpdates?;
262
263
  private _yfFieldServiceVisits?;
264
+ private _yfWifiSurveys?;
263
265
  /**
264
266
  * Create a new OdinDbClient
265
267
  *
@@ -508,6 +510,8 @@ export declare class OdinDbClient {
508
510
  get workOrderStatusUpdates(): WorkOrderStatusUpdateDbAccessor;
509
511
  /** Access YfFieldServiceVisit records */
510
512
  get yfFieldServiceVisits(): YfFieldServiceVisitDbAccessor;
513
+ /** Access YfWifiSurvey records */
514
+ get yfWifiSurveys(): YfWifiSurveyDbAccessor;
511
515
  /** Get the current principal */
512
516
  get principal(): any;
513
517
  /** Get the database service */
@@ -144,6 +144,7 @@ const WayleaveAuditDbAccessor_1 = require("./db-accessors-v2/WayleaveAuditDbAcce
144
144
  const WorkOrderDbAccessor_1 = require("./db-accessors-v2/WorkOrderDbAccessor");
145
145
  const WorkOrderStatusUpdateDbAccessor_1 = require("./db-accessors-v2/WorkOrderStatusUpdateDbAccessor");
146
146
  const YfFieldServiceVisitDbAccessor_1 = require("./db-accessors-v2/YfFieldServiceVisitDbAccessor");
147
+ const YfWifiSurveyDbAccessor_1 = require("./db-accessors-v2/YfWifiSurveyDbAccessor");
147
148
  class OdinDbClient {
148
149
  // ============================================
149
150
  // CONSTRUCTOR
@@ -973,6 +974,13 @@ class OdinDbClient {
973
974
  }
974
975
  return this._yfFieldServiceVisits;
975
976
  }
977
+ /** Access YfWifiSurvey records */
978
+ get yfWifiSurveys() {
979
+ if (!this._yfWifiSurveys) {
980
+ this._yfWifiSurveys = new YfWifiSurveyDbAccessor_1.YfWifiSurveyDbAccessor(this._principal, this._dbService, this._defaultOptions);
981
+ }
982
+ return this._yfWifiSurveys;
983
+ }
976
984
  // ============================================
977
985
  // CONTEXT ACCESS
978
986
  // ============================================
@@ -0,0 +1,111 @@
1
+ /**
2
+ * YfWifiSurvey Accessor
3
+ *
4
+ * Provides typed access to YfWifiSurvey 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.updateYfWifiSurvey({ ... });
12
+ *
13
+ * // Create new record
14
+ * const newRecord = accessor.new();
15
+ * await newRecord.createYfWifiSurvey({ ... });
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 { YfWifiSurveyProperties } from '../entities-v2/YfWifiSurvey';
25
+ import { YfWifiSurveyRecord } from '../records-v2/YfWifiSurveyRecord';
26
+ /** List response with wrapped records */
27
+ export interface YfWifiSurveyListResponse {
28
+ data: YfWifiSurveyRecord[];
29
+ hasMore: boolean;
30
+ totalRecords: number;
31
+ }
32
+ /** Search response with wrapped records */
33
+ export interface YfWifiSurveySearchResponse {
34
+ records: YfWifiSurveyRecord[];
35
+ totalRecords: number;
36
+ hasMore: boolean;
37
+ }
38
+ export declare class YfWifiSurveyAccessor {
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 YfWifiSurvey 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): YfWifiSurveyRecord;
72
+ /**
73
+ * Get a single YfWifiSurvey record by ID
74
+ */
75
+ get(id: string): Promise<YfWifiSurveyRecord>;
76
+ /**
77
+ * Get multiple YfWifiSurvey records by IDs
78
+ */
79
+ getMany(ids: string[]): Promise<YfWifiSurveyRecord[]>;
80
+ /**
81
+ * Search YfWifiSurvey records
82
+ */
83
+ search(params: Partial<OdinSearchV2>): Promise<YfWifiSurveySearchResponse>;
84
+ /**
85
+ * Search all YfWifiSurvey records with automatic pagination
86
+ */
87
+ searchAll(params: Partial<OdinSearchV2>): Promise<YfWifiSurveyRecord[]>;
88
+ /**
89
+ * Async generator for paginating through all matching records.
90
+ * Yields batches of wrapped records.
91
+ */
92
+ paginate(params: Partial<OdinSearchV2>): AsyncGenerator<YfWifiSurveyRecord[]>;
93
+ /**
94
+ * Create a fluent query builder for YfWifiSurvey 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<YfWifiSurveyProperties, YfWifiSurveyRecord>;
109
+ /** Access the underlying ApiProvider */
110
+ get provider(): ApiProvider;
111
+ }
@@ -0,0 +1,190 @@
1
+ "use strict";
2
+ /**
3
+ * YfWifiSurvey Accessor
4
+ *
5
+ * Provides typed access to YfWifiSurvey 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.updateYfWifiSurvey({ ... });
13
+ *
14
+ * // Create new record
15
+ * const newRecord = accessor.new();
16
+ * await newRecord.createYfWifiSurvey({ ... });
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.YfWifiSurveyAccessor = 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 YfWifiSurveyRecord_1 = require("../records-v2/YfWifiSurveyRecord");
47
+ class YfWifiSurveyAccessor {
48
+ constructor(providerOrAuth, host) {
49
+ this._moduleName = 'FieldServiceModule';
50
+ this._entityName = 'YfWifiSurvey';
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 YfWifiSurvey 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 YfWifiSurveyRecord_1.YfWifiSurveyRecord(null, this._provider, id);
94
+ }
95
+ // ============================================
96
+ // RECORD RETRIEVAL
97
+ // ============================================
98
+ /**
99
+ * Get a single YfWifiSurvey 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 YfWifiSurveyRecord_1.YfWifiSurveyRecord(record, this._provider);
105
+ });
106
+ }
107
+ /**
108
+ * Get multiple YfWifiSurvey 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 YfWifiSurveyRecord_1.YfWifiSurveyRecord(r, this._provider));
116
+ });
117
+ }
118
+ // ============================================
119
+ // SEARCH OPERATIONS
120
+ // ============================================
121
+ /**
122
+ * Search YfWifiSurvey 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 YfWifiSurveyRecord_1.YfWifiSurveyRecord(r, this._provider)),
129
+ totalRecords: result.totalRecords,
130
+ hasMore: result.hasMore,
131
+ };
132
+ });
133
+ }
134
+ /**
135
+ * Search all YfWifiSurvey 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 YfWifiSurveyRecord_1.YfWifiSurveyRecord(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 YfWifiSurveyRecord_1.YfWifiSurveyRecord(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 YfWifiSurvey 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.YfWifiSurveyAccessor = YfWifiSurveyAccessor;
@@ -120,3 +120,4 @@ export { WayleaveAuditAccessor, WayleaveAuditSearchResponse, WayleaveAuditListRe
120
120
  export { WorkOrderAccessor, WorkOrderSearchResponse, WorkOrderListResponse } from './WorkOrderAccessor';
121
121
  export { WorkOrderStatusUpdateAccessor, WorkOrderStatusUpdateSearchResponse, WorkOrderStatusUpdateListResponse } from './WorkOrderStatusUpdateAccessor';
122
122
  export { YfFieldServiceVisitAccessor, YfFieldServiceVisitSearchResponse, YfFieldServiceVisitListResponse } from './YfFieldServiceVisitAccessor';
123
+ export { YfWifiSurveyAccessor, YfWifiSurveySearchResponse, YfWifiSurveyListResponse } from './YfWifiSurveyAccessor';
@@ -10,7 +10,7 @@
10
10
  Object.defineProperty(exports, "__esModule", { value: true });
11
11
  exports.NoteAccessor = exports.NetworkDeviceAccessor = exports.ModifyServiceRequestAccessor = 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.DataIssueAccessor = exports.CustomerPhonePortingAccessor = exports.CustomerDeviceRouterAccessor = exports.CustomerDeviceAccessor = exports.CustomerDeviceOntAccessor = exports.CustomerDeviceConfigurationAccessor = exports.CustomerDeviceAtaAccessor = exports.CrmDatasetAccessor = exports.CreditNoteAccessor = exports.ConversationSummaryFeedbackAccessor = exports.ConversationAccessor = exports.ContractBuyOutAccessor = exports.ContactAccessor = exports.ContactIdentityAccessor = exports.ConfigAccessor = exports.ChurnRequestAccessor = exports.ChangeReasonAccessor = exports.CaseAccessor = exports.CampaignAccessor = exports.CallAccessor = exports.CallLegAccessor = 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
12
  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.PgReportEventAccessor = 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.OutboundDialSessionAccessor = exports.OutboundDialCampaignAccessor = exports.OutboundDialCampaignCaseAccessor = exports.OutageAccessor = exports.OrderAccessor = exports.OrderKciAccessor = exports.OrderItemAccessor = exports.OrderCheckAccessor = exports.OntReplacementApprovalAccessor = exports.OneTouchSwitchAccessor = exports.OhExternalAuditAccessor = exports.OfferTemplateAccessor = exports.OfferAccessor = void 0;
13
- exports.YfFieldServiceVisitAccessor = exports.WorkOrderStatusUpdateAccessor = exports.WorkOrderAccessor = exports.WayleaveAuditAccessor = exports.VoiceConfigurationAccessor = exports.VisitAccessor = exports.UserAccessor = exports.UgExternalAuditAccessor = exports.TwilioWorkerAccessor = exports.TwilioUserUpdateAccessor = exports.TwilioTaskQueueAccessor = exports.TwilioCallEventAccessor = exports.TwilioActivityAccessor = exports.TransactionAccessor = void 0;
13
+ exports.YfWifiSurveyAccessor = exports.YfFieldServiceVisitAccessor = exports.WorkOrderStatusUpdateAccessor = exports.WorkOrderAccessor = exports.WayleaveAuditAccessor = exports.VoiceConfigurationAccessor = exports.VisitAccessor = exports.UserAccessor = exports.UgExternalAuditAccessor = exports.TwilioWorkerAccessor = exports.TwilioUserUpdateAccessor = exports.TwilioTaskQueueAccessor = exports.TwilioCallEventAccessor = exports.TwilioActivityAccessor = exports.TransactionAccessor = 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");
@@ -239,3 +239,5 @@ var WorkOrderStatusUpdateAccessor_1 = require("./WorkOrderStatusUpdateAccessor")
239
239
  Object.defineProperty(exports, "WorkOrderStatusUpdateAccessor", { enumerable: true, get: function () { return WorkOrderStatusUpdateAccessor_1.WorkOrderStatusUpdateAccessor; } });
240
240
  var YfFieldServiceVisitAccessor_1 = require("./YfFieldServiceVisitAccessor");
241
241
  Object.defineProperty(exports, "YfFieldServiceVisitAccessor", { enumerable: true, get: function () { return YfFieldServiceVisitAccessor_1.YfFieldServiceVisitAccessor; } });
242
+ var YfWifiSurveyAccessor_1 = require("./YfWifiSurveyAccessor");
243
+ Object.defineProperty(exports, "YfWifiSurveyAccessor", { enumerable: true, get: function () { return YfWifiSurveyAccessor_1.YfWifiSurveyAccessor; } });
@@ -22,7 +22,7 @@ export interface CreateAppointmentMessage extends OdinRecordCreatedEvent<CreateA
22
22
  * Properties for CreateAppointment action
23
23
  *
24
24
  * @property Required fields: 6
25
- * @property Optional fields: 2
25
+ * @property Optional fields: 3
26
26
  */
27
27
  export interface CreateAppointmentProperties {
28
28
  /**
@@ -88,6 +88,13 @@ export interface CreateAppointmentProperties {
88
88
  * @type {PHONE_NUMBER_E164_GB}
89
89
  */
90
90
  Phone?: string | null;
91
+ /**
92
+ * AddressId
93
+ *
94
+ * Reference identifier for Appointment relationships. Used for data integrity.
95
+ * @type {LOOKUP}
96
+ */
97
+ AddressId?: string | null;
91
98
  }
92
99
  /**
93
100
  * CreateAppointment
@@ -11,7 +11,7 @@
11
11
  *
12
12
  * AUTO-GENERATED - DO NOT EDIT DIRECTLY
13
13
  */
14
- import { OdinRecordCreateDto, OdinRecordCreatedEvent } from '@d19n/odin-types/dist/core';
14
+ import { OdinRecord, OdinRecordCreateDto, OdinRecordCreatedEvent, OdinRecordLinkDto } from '@d19n/odin-types/dist/core';
15
15
  /**
16
16
  * RabbitMQ message payload for CreateCustomerDeviceBattery created events
17
17
  *
@@ -34,6 +34,99 @@ export interface CreateCustomerDeviceBatteryProperties {
34
34
  */
35
35
  SerialNumber?: string | null;
36
36
  }
37
+ /**
38
+ * Builder for CreateCustomerDeviceBattery action
39
+ *
40
+ * Provides fluent API for adding associations before executing the action.
41
+ * Use .link*() methods to add associations, then call .execute() to run.
42
+ *
43
+ * @example
44
+ * ```typescript
45
+ * await record.createCustomerDeviceBattery({ ...properties })
46
+ * .linkAssociation_1786439410918({ id: '...', entity: '...' })
47
+ * .execute();
48
+ * ```
49
+ */
50
+ export declare class CreateCustomerDeviceBatteryBuilder {
51
+ private _associations;
52
+ private _properties;
53
+ private _pendingLinks;
54
+ private _options?;
55
+ private _provider?;
56
+ private _moduleName?;
57
+ private _entityName?;
58
+ private _clearPendingLinks?;
59
+ private _externalId?;
60
+ private _externalAppId?;
61
+ private _groups?;
62
+ constructor(properties: CreateCustomerDeviceBatteryProperties, pendingLinks: OdinRecordLinkDto[], options?: {
63
+ journeyId?: string;
64
+ stageKey?: string;
65
+ });
66
+ /**
67
+ * Link CustomerDevice__OrderItem
68
+ * @schemaAssociationId 29737305-924f-4e32-9dbc-8aab3de2e777
69
+ * @param target - The record to link
70
+ * @returns this (for method chaining)
71
+ */
72
+ linkAssociation_1786439410918(target: OdinRecord<any> | {
73
+ id: string;
74
+ entity: string;
75
+ }): this;
76
+ /**
77
+ * Set an external system identifier for this record.
78
+ * Links the record to a corresponding entry in an external application.
79
+ * @param externalId - The ID in the external system
80
+ * @param externalAppId - The external application identifier
81
+ * @returns this (for chaining)
82
+ */
83
+ withExternalId(externalId: string, externalAppId: string): this;
84
+ /**
85
+ * Set security/access groups for this record.
86
+ * @param groups - Array of group names
87
+ * @returns this (for chaining)
88
+ */
89
+ withGroups(groups: string[]): this;
90
+ /**
91
+ * Get the action payload without executing
92
+ * @returns The action data that would be sent
93
+ */
94
+ getData(): {
95
+ entity: string;
96
+ type: string | undefined;
97
+ actionName: string;
98
+ properties: CreateCustomerDeviceBatteryProperties;
99
+ associations?: OdinRecordLinkDto[];
100
+ journeyId?: string;
101
+ stageKey?: string;
102
+ externalId?: string;
103
+ externalAppId?: string;
104
+ groups?: string[];
105
+ };
106
+ /**
107
+ * Inject execution context (called by record wrapper)
108
+ * @internal
109
+ */
110
+ withProvider(provider: {
111
+ _applyAction(moduleName: string, entityName: string, payload: any): Promise<any>;
112
+ }, moduleName: string, entityName: string, clearPendingLinks: () => void): this;
113
+ /**
114
+ * Execute the action
115
+ * @returns The result from the API
116
+ * @throws Error if withProvider() has not been called
117
+ */
118
+ execute(): Promise<any>;
119
+ /**
120
+ * Returns the request payload without executing (for debugging)
121
+ * @returns The request payload that would be sent to the API
122
+ */
123
+ dryRun(): Record<string, any>;
124
+ /**
125
+ * Prevents accidental `await builder` without .execute()
126
+ * @throws Error always - use .execute() or .dryRun() instead
127
+ */
128
+ then(): never;
129
+ }
37
130
  /**
38
131
  * CreateCustomerDeviceBattery
39
132
  *
@@ -61,6 +154,15 @@ export declare class CreateCustomerDeviceBatteryDto extends OdinRecordCreateDto<
61
154
  static readonly STEP_SCHEMA_TYPE_ID = "bddbd043-c985-4eaf-9202-eb9dbe18c5e3";
62
155
  static readonly STEP_TYPE = "BATTERY";
63
156
  static readonly AUTO_LINK_PARENT = true;
157
+ static readonly HAS_ASSOCIATIONS = true;
158
+ static readonly HAS_REQUIRED_ASSOCIATIONS = false;
159
+ static readonly BUILDER_CLASS = "CreateCustomerDeviceBatteryBuilder";
160
+ static readonly ASSOCIATION_FIELDS: readonly [{
161
+ readonly name: "Association_1786439410918";
162
+ readonly methodName: "linkAssociation_1786439410918";
163
+ readonly required: false;
164
+ readonly schemaAssociationId: "29737305-924f-4e32-9dbc-8aab3de2e777";
165
+ }];
64
166
  readonly actionName: string;
65
167
  readonly schemaActionId: string;
66
168
  readonly entity: string;