@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.
- package/README.md +8 -1
- package/dist/EntityRegistry.d.ts +2 -0
- package/dist/EntityRegistry.js +2 -0
- package/dist/OdinApiClient.d.ts +4 -0
- package/dist/OdinApiClient.js +8 -0
- package/dist/OdinDbClient.d.ts +4 -0
- package/dist/OdinDbClient.js +8 -0
- package/dist/accessors-v2/YfWifiSurveyAccessor.d.ts +111 -0
- package/dist/accessors-v2/YfWifiSurveyAccessor.js +190 -0
- package/dist/accessors-v2/index.d.ts +1 -0
- package/dist/accessors-v2/index.js +3 -1
- package/dist/actions-v2/CreateAppointmentDto.d.ts +8 -1
- package/dist/actions-v2/CreateCustomerDeviceBatteryDto.d.ts +103 -1
- package/dist/actions-v2/CreateCustomerDeviceBatteryDto.js +120 -1
- package/dist/actions-v2/CreateYfWifiSurveyDto.d.ts +118 -0
- package/dist/actions-v2/CreateYfWifiSurveyDto.js +54 -0
- package/dist/actions-v2/UpdateCustomerDeviceBatteryDto.d.ts +183 -0
- package/dist/actions-v2/UpdateCustomerDeviceBatteryDto.js +179 -0
- package/dist/db-accessors-v2/YfWifiSurveyDbAccessor.d.ts +149 -0
- package/dist/db-accessors-v2/YfWifiSurveyDbAccessor.js +227 -0
- package/dist/db-accessors-v2/index.d.ts +1 -0
- package/dist/db-accessors-v2/index.js +3 -1
- package/dist/records-v2/CustomerDeviceRecord.d.ts +34 -68
- package/dist/records-v2/CustomerDeviceRecord.js +38 -17
- package/dist/records-v2/FileRecord.d.ts +20 -0
- package/dist/records-v2/FileRecord.js +33 -0
- package/dist/records-v2/WorkOrderRecord.d.ts +20 -0
- package/dist/records-v2/WorkOrderRecord.js +33 -0
- package/dist/records-v2/YfWifiSurveyRecord.d.ts +225 -0
- package/dist/records-v2/YfWifiSurveyRecord.js +313 -0
- package/dist/records-v2/index.d.ts +1 -0
- package/dist/records-v2/index.js +5 -2
- package/package.json +1 -1
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* YfWifiSurvey DB Accessor
|
|
3
|
+
*
|
|
4
|
+
* Provides typed access to YfWifiSurvey records via direct database access.
|
|
5
|
+
* For use in backend services with principal + dbService.
|
|
6
|
+
* Returns wrapped records with typed action methods.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* // Simple get
|
|
11
|
+
* const record = await accessor.get(id);
|
|
12
|
+
*
|
|
13
|
+
* // With related entities
|
|
14
|
+
* const record = await accessor.get(id, { entities: ["Contact", "Address"] });
|
|
15
|
+
*
|
|
16
|
+
* // With permissions bypass (separate options)
|
|
17
|
+
* const record = await accessor.get(id, {}, { omitPermissionsCheck: true });
|
|
18
|
+
*
|
|
19
|
+
* // Silent write (no RabbitMQ events)
|
|
20
|
+
* const result = await accessor.upsert([dto], { omitWriteEvents: true });
|
|
21
|
+
*
|
|
22
|
+
* // Constructor-level default (applies to all calls)
|
|
23
|
+
* const accessor = new YfWifiSurveyDbAccessor(principal, dbService, { omitPermissionsCheck: true });
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
27
|
+
*/
|
|
28
|
+
import { OdinSearchV2 } from '@d19n/odin-types/dist/core';
|
|
29
|
+
import { DbProvider, DbProviderOptions, DbGetQueryOptions } from '@d19n/odin-sdk-generator/dist/db.provider';
|
|
30
|
+
import { QueryBuilder } from '@d19n/odin-sdk-generator/dist/query-builder';
|
|
31
|
+
import { YfWifiSurveyProperties } from '../entities-v2/YfWifiSurvey';
|
|
32
|
+
import { YfWifiSurveyRecord } from '../records-v2/YfWifiSurveyRecord';
|
|
33
|
+
/** Search response with wrapped records */
|
|
34
|
+
export interface YfWifiSurveyDbSearchResponse {
|
|
35
|
+
records: YfWifiSurveyRecord[];
|
|
36
|
+
totalRecords: number;
|
|
37
|
+
hasMore: boolean;
|
|
38
|
+
}
|
|
39
|
+
export declare class YfWifiSurveyDbAccessor {
|
|
40
|
+
private readonly _provider;
|
|
41
|
+
private readonly _moduleName;
|
|
42
|
+
private readonly _entityName;
|
|
43
|
+
private readonly _defaultOptions?;
|
|
44
|
+
/**
|
|
45
|
+
* Create a new YfWifiSurveyDbAccessor
|
|
46
|
+
* @param principal - The authenticated principal
|
|
47
|
+
* @param dbService - The database service instance
|
|
48
|
+
* @param defaultOptions - Default provider options applied to all operations
|
|
49
|
+
*/
|
|
50
|
+
constructor(principal: any, dbService: any, defaultOptions?: DbProviderOptions);
|
|
51
|
+
get moduleName(): string;
|
|
52
|
+
get entityName(): string;
|
|
53
|
+
/**
|
|
54
|
+
* Create a new empty YfWifiSurvey record instance for create operations.
|
|
55
|
+
* Pre-generates an ID that can be referenced before the record is saved.
|
|
56
|
+
*
|
|
57
|
+
* @param id - Optional ID to use (auto-generated UUID if not provided)
|
|
58
|
+
* @returns A new record wrapper with pre-generated ID
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* ```typescript
|
|
62
|
+
* // Auto-generated ID
|
|
63
|
+
* const note = odinDb.notes.new();
|
|
64
|
+
* console.log(note.id); // UUID available immediately
|
|
65
|
+
*
|
|
66
|
+
* // Custom ID
|
|
67
|
+
* const order = odinDb.orders.new("custom-id-123");
|
|
68
|
+
*
|
|
69
|
+
* // Reference ID before save
|
|
70
|
+
* const account = odinDb.accounts.new();
|
|
71
|
+
* const contact = odinDb.contacts.new();
|
|
72
|
+
* await contact
|
|
73
|
+
* .link({ id: account.id, entity: "CrmModule:Account" })
|
|
74
|
+
* .createContact({ FirstName: "John" });
|
|
75
|
+
* ```
|
|
76
|
+
*/
|
|
77
|
+
new(id?: string): YfWifiSurveyRecord;
|
|
78
|
+
/**
|
|
79
|
+
* Get a single YfWifiSurvey record by ID
|
|
80
|
+
*
|
|
81
|
+
* @param id - The record ID
|
|
82
|
+
* @param queryOptions - Query options (WHAT to fetch: entities to include)
|
|
83
|
+
* @param providerOptions - Provider options (HOW to fetch: omitPermissionsCheck)
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```typescript
|
|
87
|
+
* // Simple get
|
|
88
|
+
* const record = await accessor.get(id);
|
|
89
|
+
*
|
|
90
|
+
* // With related entities
|
|
91
|
+
* const record = await accessor.get(id, { entities: ["Contact", "Address"] });
|
|
92
|
+
*
|
|
93
|
+
* // With permissions bypass
|
|
94
|
+
* const record = await accessor.get(id, {}, { omitPermissionsCheck: true });
|
|
95
|
+
*
|
|
96
|
+
* // Both options
|
|
97
|
+
* const record = await accessor.get(id, { entities: ["Invoice"] }, { omitPermissionsCheck: true });
|
|
98
|
+
* ```
|
|
99
|
+
*/
|
|
100
|
+
get(id: string, queryOptions?: DbGetQueryOptions, providerOptions?: DbProviderOptions): Promise<YfWifiSurveyRecord>;
|
|
101
|
+
/**
|
|
102
|
+
* Get multiple YfWifiSurvey records by IDs
|
|
103
|
+
*
|
|
104
|
+
* @param ids - Array of record IDs
|
|
105
|
+
* @param queryOptions - Query options (WHAT to fetch: entities to include)
|
|
106
|
+
* @param providerOptions - Provider options (HOW to fetch: omitPermissionsCheck)
|
|
107
|
+
*/
|
|
108
|
+
getMany(ids: string[], queryOptions?: DbGetQueryOptions, providerOptions?: DbProviderOptions): Promise<YfWifiSurveyRecord[]>;
|
|
109
|
+
/**
|
|
110
|
+
* Search YfWifiSurvey records
|
|
111
|
+
*
|
|
112
|
+
* @param params - Search parameters
|
|
113
|
+
* @param providerOptions - Provider options (HOW to fetch: omitPermissionsCheck)
|
|
114
|
+
*/
|
|
115
|
+
search(params: Partial<OdinSearchV2>, providerOptions?: DbProviderOptions): Promise<YfWifiSurveyDbSearchResponse>;
|
|
116
|
+
/**
|
|
117
|
+
* Search all YfWifiSurvey records with automatic pagination
|
|
118
|
+
*
|
|
119
|
+
* @param params - Search parameters
|
|
120
|
+
* @param providerOptions - Provider options (HOW to fetch: omitPermissionsCheck)
|
|
121
|
+
*/
|
|
122
|
+
searchAll(params: Partial<OdinSearchV2>, providerOptions?: DbProviderOptions): Promise<YfWifiSurveyRecord[]>;
|
|
123
|
+
/**
|
|
124
|
+
* Async generator for paginating through all matching records.
|
|
125
|
+
* Yields batches of wrapped records.
|
|
126
|
+
*
|
|
127
|
+
* @param params - Search parameters
|
|
128
|
+
* @param providerOptions - Provider options (HOW to fetch: omitPermissionsCheck)
|
|
129
|
+
*/
|
|
130
|
+
paginate(params: Partial<OdinSearchV2>, providerOptions?: DbProviderOptions): AsyncGenerator<YfWifiSurveyRecord[]>;
|
|
131
|
+
/**
|
|
132
|
+
* Create a fluent query builder for YfWifiSurvey records
|
|
133
|
+
*
|
|
134
|
+
* @example
|
|
135
|
+
* ```typescript
|
|
136
|
+
* const results = await accessor
|
|
137
|
+
* .query()
|
|
138
|
+
* .where('Status', 'in', ['Active', 'Pending'])
|
|
139
|
+
* .where('CreatedAt', 'gte', '2025-01-01')
|
|
140
|
+
* .select('id', 'title', 'properties.*')
|
|
141
|
+
* .sortBy('createdAt', 'desc')
|
|
142
|
+
* .limit(100)
|
|
143
|
+
* .execute();
|
|
144
|
+
* ```
|
|
145
|
+
*/
|
|
146
|
+
query(): QueryBuilder<YfWifiSurveyProperties, YfWifiSurveyRecord>;
|
|
147
|
+
/** Access the underlying DbProvider */
|
|
148
|
+
get provider(): DbProvider;
|
|
149
|
+
}
|
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* YfWifiSurvey DB Accessor
|
|
4
|
+
*
|
|
5
|
+
* Provides typed access to YfWifiSurvey records via direct database access.
|
|
6
|
+
* For use in backend services with principal + dbService.
|
|
7
|
+
* Returns wrapped records with typed action methods.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* // Simple get
|
|
12
|
+
* const record = await accessor.get(id);
|
|
13
|
+
*
|
|
14
|
+
* // With related entities
|
|
15
|
+
* const record = await accessor.get(id, { entities: ["Contact", "Address"] });
|
|
16
|
+
*
|
|
17
|
+
* // With permissions bypass (separate options)
|
|
18
|
+
* const record = await accessor.get(id, {}, { omitPermissionsCheck: true });
|
|
19
|
+
*
|
|
20
|
+
* // Silent write (no RabbitMQ events)
|
|
21
|
+
* const result = await accessor.upsert([dto], { omitWriteEvents: true });
|
|
22
|
+
*
|
|
23
|
+
* // Constructor-level default (applies to all calls)
|
|
24
|
+
* const accessor = new YfWifiSurveyDbAccessor(principal, dbService, { omitPermissionsCheck: true });
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
28
|
+
*/
|
|
29
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
30
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
31
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
32
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
33
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
34
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
35
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
36
|
+
});
|
|
37
|
+
};
|
|
38
|
+
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
|
|
39
|
+
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
|
|
40
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
41
|
+
var g = generator.apply(thisArg, _arguments || []), i, q = [];
|
|
42
|
+
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
|
|
43
|
+
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); }); }; }
|
|
44
|
+
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
|
|
45
|
+
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
|
|
46
|
+
function fulfill(value) { resume("next", value); }
|
|
47
|
+
function reject(value) { resume("throw", value); }
|
|
48
|
+
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
|
|
49
|
+
};
|
|
50
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
51
|
+
exports.YfWifiSurveyDbAccessor = void 0;
|
|
52
|
+
const db_provider_1 = require("@d19n/odin-sdk-generator/dist/db.provider");
|
|
53
|
+
const query_builder_1 = require("@d19n/odin-sdk-generator/dist/query-builder");
|
|
54
|
+
const YfWifiSurveyRecord_1 = require("../records-v2/YfWifiSurveyRecord");
|
|
55
|
+
class YfWifiSurveyDbAccessor {
|
|
56
|
+
/**
|
|
57
|
+
* Create a new YfWifiSurveyDbAccessor
|
|
58
|
+
* @param principal - The authenticated principal
|
|
59
|
+
* @param dbService - The database service instance
|
|
60
|
+
* @param defaultOptions - Default provider options applied to all operations
|
|
61
|
+
*/
|
|
62
|
+
constructor(principal, dbService, defaultOptions) {
|
|
63
|
+
this._moduleName = 'FieldServiceModule';
|
|
64
|
+
this._entityName = 'YfWifiSurvey';
|
|
65
|
+
this._provider = new db_provider_1.DbProvider(principal, dbService, defaultOptions);
|
|
66
|
+
this._defaultOptions = defaultOptions;
|
|
67
|
+
}
|
|
68
|
+
get moduleName() { return this._moduleName; }
|
|
69
|
+
get entityName() { return this._entityName; }
|
|
70
|
+
// ============================================
|
|
71
|
+
// RECORD CREATION
|
|
72
|
+
// ============================================
|
|
73
|
+
/**
|
|
74
|
+
* Create a new empty YfWifiSurvey record instance for create operations.
|
|
75
|
+
* Pre-generates an ID that can be referenced before the record is saved.
|
|
76
|
+
*
|
|
77
|
+
* @param id - Optional ID to use (auto-generated UUID if not provided)
|
|
78
|
+
* @returns A new record wrapper with pre-generated ID
|
|
79
|
+
*
|
|
80
|
+
* @example
|
|
81
|
+
* ```typescript
|
|
82
|
+
* // Auto-generated ID
|
|
83
|
+
* const note = odinDb.notes.new();
|
|
84
|
+
* console.log(note.id); // UUID available immediately
|
|
85
|
+
*
|
|
86
|
+
* // Custom ID
|
|
87
|
+
* const order = odinDb.orders.new("custom-id-123");
|
|
88
|
+
*
|
|
89
|
+
* // Reference ID before save
|
|
90
|
+
* const account = odinDb.accounts.new();
|
|
91
|
+
* const contact = odinDb.contacts.new();
|
|
92
|
+
* await contact
|
|
93
|
+
* .link({ id: account.id, entity: "CrmModule:Account" })
|
|
94
|
+
* .createContact({ FirstName: "John" });
|
|
95
|
+
* ```
|
|
96
|
+
*/
|
|
97
|
+
new(id) {
|
|
98
|
+
return new YfWifiSurveyRecord_1.YfWifiSurveyRecord(null, this._provider, id);
|
|
99
|
+
}
|
|
100
|
+
// ============================================
|
|
101
|
+
// RECORD RETRIEVAL
|
|
102
|
+
// ============================================
|
|
103
|
+
/**
|
|
104
|
+
* Get a single YfWifiSurvey record by ID
|
|
105
|
+
*
|
|
106
|
+
* @param id - The record ID
|
|
107
|
+
* @param queryOptions - Query options (WHAT to fetch: entities to include)
|
|
108
|
+
* @param providerOptions - Provider options (HOW to fetch: omitPermissionsCheck)
|
|
109
|
+
*
|
|
110
|
+
* @example
|
|
111
|
+
* ```typescript
|
|
112
|
+
* // Simple get
|
|
113
|
+
* const record = await accessor.get(id);
|
|
114
|
+
*
|
|
115
|
+
* // With related entities
|
|
116
|
+
* const record = await accessor.get(id, { entities: ["Contact", "Address"] });
|
|
117
|
+
*
|
|
118
|
+
* // With permissions bypass
|
|
119
|
+
* const record = await accessor.get(id, {}, { omitPermissionsCheck: true });
|
|
120
|
+
*
|
|
121
|
+
* // Both options
|
|
122
|
+
* const record = await accessor.get(id, { entities: ["Invoice"] }, { omitPermissionsCheck: true });
|
|
123
|
+
* ```
|
|
124
|
+
*/
|
|
125
|
+
get(id, queryOptions, providerOptions) {
|
|
126
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
127
|
+
const record = yield this._provider._getByPrimaryKey(this._moduleName, this._entityName, id, queryOptions, providerOptions);
|
|
128
|
+
return new YfWifiSurveyRecord_1.YfWifiSurveyRecord(record, this._provider);
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Get multiple YfWifiSurvey records by IDs
|
|
133
|
+
*
|
|
134
|
+
* @param ids - Array of record IDs
|
|
135
|
+
* @param queryOptions - Query options (WHAT to fetch: entities to include)
|
|
136
|
+
* @param providerOptions - Provider options (HOW to fetch: omitPermissionsCheck)
|
|
137
|
+
*/
|
|
138
|
+
getMany(ids, queryOptions, providerOptions) {
|
|
139
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
140
|
+
if (ids.length === 0)
|
|
141
|
+
return [];
|
|
142
|
+
const records = yield this._provider._getManyByPrimaryKey(this._moduleName, this._entityName, ids, queryOptions, providerOptions);
|
|
143
|
+
return records.map((r) => new YfWifiSurveyRecord_1.YfWifiSurveyRecord(r, this._provider));
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
// ============================================
|
|
147
|
+
// SEARCH OPERATIONS
|
|
148
|
+
// ============================================
|
|
149
|
+
/**
|
|
150
|
+
* Search YfWifiSurvey records
|
|
151
|
+
*
|
|
152
|
+
* @param params - Search parameters
|
|
153
|
+
* @param providerOptions - Provider options (HOW to fetch: omitPermissionsCheck)
|
|
154
|
+
*/
|
|
155
|
+
search(params, providerOptions) {
|
|
156
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
157
|
+
const result = yield this._provider._searchRecords(this._moduleName, this._entityName, params, providerOptions);
|
|
158
|
+
return {
|
|
159
|
+
records: result.records.map((r) => new YfWifiSurveyRecord_1.YfWifiSurveyRecord(r, this._provider)),
|
|
160
|
+
totalRecords: result.totalRecords,
|
|
161
|
+
hasMore: result.hasMore,
|
|
162
|
+
};
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Search all YfWifiSurvey records with automatic pagination
|
|
167
|
+
*
|
|
168
|
+
* @param params - Search parameters
|
|
169
|
+
* @param providerOptions - Provider options (HOW to fetch: omitPermissionsCheck)
|
|
170
|
+
*/
|
|
171
|
+
searchAll(params, providerOptions) {
|
|
172
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
173
|
+
const result = yield this._provider._searchAllRecordsAndPaginate(this._moduleName, this._entityName, params, 0, providerOptions);
|
|
174
|
+
return result.records.map((r) => new YfWifiSurveyRecord_1.YfWifiSurveyRecord(r, this._provider));
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Async generator for paginating through all matching records.
|
|
179
|
+
* Yields batches of wrapped records.
|
|
180
|
+
*
|
|
181
|
+
* @param params - Search parameters
|
|
182
|
+
* @param providerOptions - Provider options (HOW to fetch: omitPermissionsCheck)
|
|
183
|
+
*/
|
|
184
|
+
paginate(params, providerOptions) {
|
|
185
|
+
var _a;
|
|
186
|
+
return __asyncGenerator(this, arguments, function* paginate_1() {
|
|
187
|
+
let hasMore = true;
|
|
188
|
+
let searchAfter;
|
|
189
|
+
const query = Object.assign(Object.assign({}, params.query), { pageSize: ((_a = params.query) === null || _a === void 0 ? void 0 : _a.pageSize) || 500 });
|
|
190
|
+
while (hasMore) {
|
|
191
|
+
const result = yield __await(this._provider._searchRecords(this._moduleName, this._entityName, Object.assign(Object.assign({}, params), { query: Object.assign(Object.assign({}, query), { searchAfter }) }), providerOptions));
|
|
192
|
+
if (result.records.length > 0) {
|
|
193
|
+
yield yield __await(result.records.map((r) => new YfWifiSurveyRecord_1.YfWifiSurveyRecord(r, this._provider)));
|
|
194
|
+
const lastRecord = result.records[result.records.length - 1];
|
|
195
|
+
searchAfter = lastRecord === null || lastRecord === void 0 ? void 0 : lastRecord.sort;
|
|
196
|
+
}
|
|
197
|
+
hasMore = result.hasMore && result.records.length >= query.pageSize;
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
// ============================================
|
|
202
|
+
// QUERY BUILDER
|
|
203
|
+
// ============================================
|
|
204
|
+
/**
|
|
205
|
+
* Create a fluent query builder for YfWifiSurvey records
|
|
206
|
+
*
|
|
207
|
+
* @example
|
|
208
|
+
* ```typescript
|
|
209
|
+
* const results = await accessor
|
|
210
|
+
* .query()
|
|
211
|
+
* .where('Status', 'in', ['Active', 'Pending'])
|
|
212
|
+
* .where('CreatedAt', 'gte', '2025-01-01')
|
|
213
|
+
* .select('id', 'title', 'properties.*')
|
|
214
|
+
* .sortBy('createdAt', 'desc')
|
|
215
|
+
* .limit(100)
|
|
216
|
+
* .execute();
|
|
217
|
+
* ```
|
|
218
|
+
*/
|
|
219
|
+
query() {
|
|
220
|
+
return (0, query_builder_1.createQueryBuilder)(this);
|
|
221
|
+
}
|
|
222
|
+
/** Access the underlying DbProvider */
|
|
223
|
+
get provider() {
|
|
224
|
+
return this._provider;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
exports.YfWifiSurveyDbAccessor = YfWifiSurveyDbAccessor;
|
|
@@ -121,3 +121,4 @@ export { WayleaveAuditDbAccessor, WayleaveAuditDbSearchResponse } from './Waylea
|
|
|
121
121
|
export { WorkOrderDbAccessor, WorkOrderDbSearchResponse } from './WorkOrderDbAccessor';
|
|
122
122
|
export { WorkOrderStatusUpdateDbAccessor, WorkOrderStatusUpdateDbSearchResponse } from './WorkOrderStatusUpdateDbAccessor';
|
|
123
123
|
export { YfFieldServiceVisitDbAccessor, YfFieldServiceVisitDbSearchResponse } from './YfFieldServiceVisitDbAccessor';
|
|
124
|
+
export { YfWifiSurveyDbAccessor, YfWifiSurveyDbSearchResponse } from './YfWifiSurveyDbAccessor';
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.NoteDbAccessor = exports.NetworkDeviceDbAccessor = exports.ModifyServiceRequestDbAccessor = exports.MessageDbAccessor = exports.LeadDbAccessor = exports.KnowledgeArticleDbAccessor = exports.InvoiceDbAccessor = exports.InvoiceItemDbAccessor = exports.ImpersonationTrackerDbAccessor = exports.FileDbAccessor = exports.FieldServiceProductDbAccessor = exports.FieldServiceDispatchedProductDbAccessor = exports.ExchangeDbAccessor = exports.EmailTemplateDbAccessor = exports.EmailSenderDbAccessor = exports.EmailDbAccessor = exports.DiscountDbAccessor = exports.DataIssueDbAccessor = exports.CustomerPhonePortingDbAccessor = exports.CustomerDeviceRouterDbAccessor = exports.CustomerDeviceDbAccessor = exports.CustomerDeviceOntDbAccessor = exports.CustomerDeviceConfigurationDbAccessor = exports.CustomerDeviceAtaDbAccessor = exports.CrmDatasetDbAccessor = exports.CreditNoteDbAccessor = exports.ConversationSummaryFeedbackDbAccessor = exports.ConversationDbAccessor = exports.ContractBuyOutDbAccessor = exports.ContactDbAccessor = exports.ContactIdentityDbAccessor = exports.ConfigDbAccessor = exports.ChurnRequestDbAccessor = exports.ChangeReasonDbAccessor = exports.CaseDbAccessor = exports.CampaignDbAccessor = exports.CallDbAccessor = exports.CallLegDbAccessor = exports.BrskEntityMigrationErrorDbAccessor = exports.BngProvisionDbAccessor = exports.BillingRequestDbAccessor = exports.BillingAdjustmentDbAccessor = exports.AppointmentDbAccessor = exports.AffiliateCodeDbAccessor = exports.AddressDbAccessor = exports.AddressInteractionDbAccessor = exports.ActivityDbAccessor = exports.ActivityLogDbAccessor = exports.AccountDbAccessor = exports.AccountCreditDbAccessor = void 0;
|
|
13
13
|
exports.TimeSlotDbAccessor = exports.TeamDbAccessor = exports.SmsMessageDbAccessor = exports.SiteSpecificRiskAssessmentOutcomeFormDbAccessor = exports.ServiceDbAccessor = exports.ServiceAppointmentDbAccessor = exports.ServiceAppointmentConfigDbAccessor = exports.ScheduleSlotDbAccessor = exports.SalesTerritoryDbAccessor = exports.RewardDbAccessor = exports.ReturnsDbAccessor = exports.RemediationRequiredReasonDbAccessor = exports.RemediationOutcomeFormDbAccessor = exports.RegionDbAccessor = exports.ReferralDbAccessor = exports.PushNotificationDbAccessor = exports.ProductDbAccessor = exports.PriceBookDbAccessor = exports.PgWebhookDbAccessor = exports.PgWebhookAttemptDbAccessor = exports.PgVocalinkDbAccessor = exports.PgTransactionDbAccessor = exports.PgSortCodeSubstitutionDbAccessor = exports.PgReportEventDbAccessor = exports.PgPaymentMethodDbAccessor = exports.PgLogDbAccessor = exports.PgFileAllocationDbAccessor = exports.PgDisputeDbAccessor = exports.PgDirectDebitFileDbAccessor = exports.PgContactDbAccessor = exports.PgAccountValidationDbAccessor = exports.PermissionToFailDbAccessor = exports.PaymentDbAccessor = exports.PaymentMethodRefundDbAccessor = exports.PaymentMethodDbAccessor = exports.PICRequestDbAccessor = exports.OverlayRealA55DbAccessor = exports.OutboundDialSessionDbAccessor = exports.OutboundDialCampaignDbAccessor = exports.OutboundDialCampaignCaseDbAccessor = exports.OutageDbAccessor = exports.OrderDbAccessor = exports.OrderKciDbAccessor = exports.OrderItemDbAccessor = exports.OrderCheckDbAccessor = exports.OntReplacementApprovalDbAccessor = exports.OneTouchSwitchDbAccessor = exports.OhExternalAuditDbAccessor = exports.OfferTemplateDbAccessor = exports.OfferDbAccessor = void 0;
|
|
14
|
-
exports.YfFieldServiceVisitDbAccessor = exports.WorkOrderStatusUpdateDbAccessor = exports.WorkOrderDbAccessor = exports.WayleaveAuditDbAccessor = exports.VoiceConfigurationDbAccessor = exports.VisitDbAccessor = exports.UserDbAccessor = exports.UgExternalAuditDbAccessor = exports.TwilioWorkerDbAccessor = exports.TwilioUserUpdateDbAccessor = exports.TwilioTaskQueueDbAccessor = exports.TwilioCallEventDbAccessor = exports.TwilioActivityDbAccessor = exports.TransactionDbAccessor = void 0;
|
|
14
|
+
exports.YfWifiSurveyDbAccessor = exports.YfFieldServiceVisitDbAccessor = exports.WorkOrderStatusUpdateDbAccessor = exports.WorkOrderDbAccessor = exports.WayleaveAuditDbAccessor = exports.VoiceConfigurationDbAccessor = exports.VisitDbAccessor = exports.UserDbAccessor = exports.UgExternalAuditDbAccessor = exports.TwilioWorkerDbAccessor = exports.TwilioUserUpdateDbAccessor = exports.TwilioTaskQueueDbAccessor = exports.TwilioCallEventDbAccessor = exports.TwilioActivityDbAccessor = exports.TransactionDbAccessor = void 0;
|
|
15
15
|
var AccountCreditDbAccessor_1 = require("./AccountCreditDbAccessor");
|
|
16
16
|
Object.defineProperty(exports, "AccountCreditDbAccessor", { enumerable: true, get: function () { return AccountCreditDbAccessor_1.AccountCreditDbAccessor; } });
|
|
17
17
|
var AccountDbAccessor_1 = require("./AccountDbAccessor");
|
|
@@ -240,3 +240,5 @@ var WorkOrderStatusUpdateDbAccessor_1 = require("./WorkOrderStatusUpdateDbAccess
|
|
|
240
240
|
Object.defineProperty(exports, "WorkOrderStatusUpdateDbAccessor", { enumerable: true, get: function () { return WorkOrderStatusUpdateDbAccessor_1.WorkOrderStatusUpdateDbAccessor; } });
|
|
241
241
|
var YfFieldServiceVisitDbAccessor_1 = require("./YfFieldServiceVisitDbAccessor");
|
|
242
242
|
Object.defineProperty(exports, "YfFieldServiceVisitDbAccessor", { enumerable: true, get: function () { return YfFieldServiceVisitDbAccessor_1.YfFieldServiceVisitDbAccessor; } });
|
|
243
|
+
var YfWifiSurveyDbAccessor_1 = require("./YfWifiSurveyDbAccessor");
|
|
244
|
+
Object.defineProperty(exports, "YfWifiSurveyDbAccessor", { enumerable: true, get: function () { return YfWifiSurveyDbAccessor_1.YfWifiSurveyDbAccessor; } });
|
|
@@ -19,73 +19,17 @@
|
|
|
19
19
|
*/
|
|
20
20
|
import { OdinRecord, OdinRecordLinkDto } from '@d19n/odin-types/dist/core';
|
|
21
21
|
import { PipelineStageEntity } from '@d19n/odin-types/dist/core';
|
|
22
|
-
import { IDbRecordCreateUpdateRes } from '@d19n/odin-types/dist/core/interfaces/v1.db.interfaces';
|
|
23
22
|
import { IOdinProvider } from '@d19n/odin-sdk-generator/dist/odin-sdk-types';
|
|
24
23
|
import { RecordLinkManager } from '@d19n/odin-sdk-generator/dist/record-link-manager';
|
|
25
24
|
import { CustomerDeviceProperties, BatteryCustomerDeviceProperties, TvDeviceCustomerDeviceProperties } from '../entities-v2/CustomerDevice';
|
|
26
25
|
import { CreateCustomerDeviceBatteryProperties } from '../actions-v2/CreateCustomerDeviceBatteryDto';
|
|
26
|
+
import { CreateCustomerDeviceBatteryBuilder } from '../actions-v2/CreateCustomerDeviceBatteryDto';
|
|
27
|
+
import { UpdateCustomerDeviceBatteryProperties } from '../actions-v2/UpdateCustomerDeviceBatteryDto';
|
|
28
|
+
import { UpdateCustomerDeviceBatteryBuilder } from '../actions-v2/UpdateCustomerDeviceBatteryDto';
|
|
27
29
|
import { FieldServiceDispatchedProductRecord } from './FieldServiceDispatchedProductRecord';
|
|
28
30
|
import { OrderItemRecord } from './OrderItemRecord';
|
|
29
31
|
/** Valid entity types for CustomerDevice */
|
|
30
32
|
export declare type CustomerDeviceType = 'BATTERY' | 'DEFAULT' | 'TV_DEVICE';
|
|
31
|
-
/**
|
|
32
|
-
* Builder for action execution with dryRun support
|
|
33
|
-
*
|
|
34
|
-
* Provides a consistent API across all action types:
|
|
35
|
-
* - `.execute()` - Execute the action and return results
|
|
36
|
-
* - `.dryRun()` - Return the payload without executing (for debugging)
|
|
37
|
-
*/
|
|
38
|
-
declare class ActionBuilder<T = IDbRecordCreateUpdateRes[]> {
|
|
39
|
-
private _provider;
|
|
40
|
-
private _moduleName;
|
|
41
|
-
private _entityName;
|
|
42
|
-
private _payload;
|
|
43
|
-
private _clearPendingLinks;
|
|
44
|
-
constructor(provider: IOdinProvider, moduleName: string, entityName: string, payload: Record<string, any>, clearPendingLinks: () => void);
|
|
45
|
-
/**
|
|
46
|
-
* Set an external system identifier for this record.
|
|
47
|
-
* Links the record to a corresponding entry in an external application.
|
|
48
|
-
*
|
|
49
|
-
* @param externalId - The ID in the external system
|
|
50
|
-
* @param externalAppId - The external application identifier
|
|
51
|
-
* @returns this (for chaining)
|
|
52
|
-
*
|
|
53
|
-
* @example
|
|
54
|
-
* ```typescript
|
|
55
|
-
* await record.createOrder({ ... }).withExternalId('SF-123', 'salesforce').execute();
|
|
56
|
-
* ```
|
|
57
|
-
*/
|
|
58
|
-
withExternalId(externalId: string, externalAppId: string): this;
|
|
59
|
-
/**
|
|
60
|
-
* Set security/access groups for this record.
|
|
61
|
-
* Controls which user groups can access the record.
|
|
62
|
-
*
|
|
63
|
-
* @param groups - Array of group names
|
|
64
|
-
* @returns this (for chaining)
|
|
65
|
-
*
|
|
66
|
-
* @example
|
|
67
|
-
* ```typescript
|
|
68
|
-
* await record.createOrder({ ... }).withGroups(['TenantA', 'BillingTeam']).execute();
|
|
69
|
-
* ```
|
|
70
|
-
*/
|
|
71
|
-
withGroups(groups: string[]): this;
|
|
72
|
-
/**
|
|
73
|
-
* Execute the action
|
|
74
|
-
* @returns The result from the API
|
|
75
|
-
*/
|
|
76
|
-
execute(): Promise<T>;
|
|
77
|
-
/**
|
|
78
|
-
* Returns the request payload without executing (for debugging)
|
|
79
|
-
* @returns The request payload that would be sent to the API
|
|
80
|
-
*/
|
|
81
|
-
dryRun(): Record<string, any>;
|
|
82
|
-
/**
|
|
83
|
-
* Prevents accidental `await actionBuilder` without .execute()
|
|
84
|
-
* Forces developers to explicitly call .execute()
|
|
85
|
-
* @throws Error always - use .execute() or .dryRun() instead
|
|
86
|
-
*/
|
|
87
|
-
then(): never;
|
|
88
|
-
}
|
|
89
33
|
export declare class CustomerDeviceRecord<TProps = CustomerDeviceProperties> {
|
|
90
34
|
private _record;
|
|
91
35
|
private _provider;
|
|
@@ -227,7 +171,8 @@ export declare class CustomerDeviceRecord<TProps = CustomerDeviceProperties> {
|
|
|
227
171
|
* CreateCustomerDeviceBattery
|
|
228
172
|
*
|
|
229
173
|
* Creates a new CustomerDevice record with the specified properties.
|
|
230
|
-
* Returns
|
|
174
|
+
* Returns a builder with fluent .link*() methods for associations.
|
|
175
|
+
* Call .execute() to create or .dryRun() for debugging.
|
|
231
176
|
*
|
|
232
177
|
* @remarks Record type: BATTERY
|
|
233
178
|
*
|
|
@@ -235,23 +180,44 @@ export declare class CustomerDeviceRecord<TProps = CustomerDeviceProperties> {
|
|
|
235
180
|
* @param options - Optional settings
|
|
236
181
|
* @param options.journeyId - Associate with a journey
|
|
237
182
|
* @param options.stageKey - Set initial pipeline stage
|
|
238
|
-
* @returns
|
|
183
|
+
* @returns CreateCustomerDeviceBatteryBuilder - chain .link*() then .execute()
|
|
239
184
|
*
|
|
240
185
|
* @example
|
|
241
186
|
* ```typescript
|
|
242
|
-
* // Create with properties
|
|
243
187
|
* const record = odinClient.customerDevices.new();
|
|
244
|
-
* await record.createCustomerDeviceBattery({ ... })
|
|
245
|
-
*
|
|
246
|
-
*
|
|
247
|
-
* const payload = record.createCustomerDeviceBattery({ ... }).dryRun();
|
|
188
|
+
* await record.createCustomerDeviceBattery({ ... })
|
|
189
|
+
* .linkAssociation_xxx(target)
|
|
190
|
+
* .execute();
|
|
248
191
|
* ```
|
|
249
192
|
*/
|
|
250
193
|
createCustomerDeviceBattery(properties?: CreateCustomerDeviceBatteryProperties, options?: {
|
|
251
194
|
journeyId?: string;
|
|
252
195
|
stageKey?: string;
|
|
253
|
-
}):
|
|
196
|
+
}): CreateCustomerDeviceBatteryBuilder;
|
|
197
|
+
/**
|
|
198
|
+
* UpdateCustomerDeviceBattery
|
|
199
|
+
*
|
|
200
|
+
* Updates this CustomerDevice record.
|
|
201
|
+
* Returns a builder with fluent .link*() methods for associations.
|
|
202
|
+
* Call .execute() to update or .dryRun() for debugging.
|
|
203
|
+
*
|
|
204
|
+
* @param properties - Properties to update
|
|
205
|
+
* @param options - Optional settings
|
|
206
|
+
* @returns UpdateCustomerDeviceBatteryBuilder - chain .link*() then .execute()
|
|
207
|
+
* @throws Error if called on a new (unsaved) record
|
|
208
|
+
*
|
|
209
|
+
* @example
|
|
210
|
+
* ```typescript
|
|
211
|
+
* const record = await odinClient.customerDevices.get(id);
|
|
212
|
+
* await record.updateCustomerDeviceBattery({ ... })
|
|
213
|
+
* .linkAssociation_xxx(target)
|
|
214
|
+
* .execute();
|
|
215
|
+
* ```
|
|
216
|
+
*/
|
|
217
|
+
updateCustomerDeviceBattery(properties?: UpdateCustomerDeviceBatteryProperties, options?: {
|
|
218
|
+
journeyId?: string;
|
|
219
|
+
stageKey?: string;
|
|
220
|
+
}): UpdateCustomerDeviceBatteryBuilder;
|
|
254
221
|
}
|
|
255
222
|
/** Type guard to check if an object is a CustomerDeviceRecord */
|
|
256
223
|
export declare function isCustomerDeviceRecord(obj: any): obj is CustomerDeviceRecord;
|
|
257
|
-
export {};
|
|
@@ -32,6 +32,8 @@ exports.isCustomerDeviceRecord = exports.CustomerDeviceRecord = void 0;
|
|
|
32
32
|
const uuid_1 = require("uuid");
|
|
33
33
|
const core_1 = require("@d19n/odin-types/dist/core");
|
|
34
34
|
const record_link_manager_1 = require("@d19n/odin-sdk-generator/dist/record-link-manager");
|
|
35
|
+
const CreateCustomerDeviceBatteryDto_1 = require("../actions-v2/CreateCustomerDeviceBatteryDto");
|
|
36
|
+
const UpdateCustomerDeviceBatteryDto_1 = require("../actions-v2/UpdateCustomerDeviceBatteryDto");
|
|
35
37
|
const FieldServiceDispatchedProductRecord_1 = require("./FieldServiceDispatchedProductRecord");
|
|
36
38
|
const OrderItemRecord_1 = require("./OrderItemRecord");
|
|
37
39
|
/**
|
|
@@ -297,7 +299,8 @@ class CustomerDeviceRecord {
|
|
|
297
299
|
* CreateCustomerDeviceBattery
|
|
298
300
|
*
|
|
299
301
|
* Creates a new CustomerDevice record with the specified properties.
|
|
300
|
-
* Returns
|
|
302
|
+
* Returns a builder with fluent .link*() methods for associations.
|
|
303
|
+
* Call .execute() to create or .dryRun() for debugging.
|
|
301
304
|
*
|
|
302
305
|
* @remarks Record type: BATTERY
|
|
303
306
|
*
|
|
@@ -305,29 +308,47 @@ class CustomerDeviceRecord {
|
|
|
305
308
|
* @param options - Optional settings
|
|
306
309
|
* @param options.journeyId - Associate with a journey
|
|
307
310
|
* @param options.stageKey - Set initial pipeline stage
|
|
308
|
-
* @returns
|
|
311
|
+
* @returns CreateCustomerDeviceBatteryBuilder - chain .link*() then .execute()
|
|
309
312
|
*
|
|
310
313
|
* @example
|
|
311
314
|
* ```typescript
|
|
312
|
-
* // Create with properties
|
|
313
315
|
* const record = odinClient.customerDevices.new();
|
|
314
|
-
* await record.createCustomerDeviceBattery({ ... })
|
|
315
|
-
*
|
|
316
|
-
*
|
|
317
|
-
* const payload = record.createCustomerDeviceBattery({ ... }).dryRun();
|
|
316
|
+
* await record.createCustomerDeviceBattery({ ... })
|
|
317
|
+
* .linkAssociation_xxx(target)
|
|
318
|
+
* .execute();
|
|
318
319
|
* ```
|
|
319
320
|
*/
|
|
320
321
|
createCustomerDeviceBattery(properties, options) {
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
322
|
+
return new CreateCustomerDeviceBatteryDto_1.CreateCustomerDeviceBatteryBuilder(properties || {}, [...this._pendingLinks], options).withProvider(this._provider, 'ServiceModule', 'CustomerDevice', () => { this._pendingLinks = []; });
|
|
323
|
+
}
|
|
324
|
+
// ============================================
|
|
325
|
+
// UPDATE ACTIONS (require existing record)
|
|
326
|
+
// ============================================
|
|
327
|
+
/**
|
|
328
|
+
* UpdateCustomerDeviceBattery
|
|
329
|
+
*
|
|
330
|
+
* Updates this CustomerDevice record.
|
|
331
|
+
* Returns a builder with fluent .link*() methods for associations.
|
|
332
|
+
* Call .execute() to update or .dryRun() for debugging.
|
|
333
|
+
*
|
|
334
|
+
* @param properties - Properties to update
|
|
335
|
+
* @param options - Optional settings
|
|
336
|
+
* @returns UpdateCustomerDeviceBatteryBuilder - chain .link*() then .execute()
|
|
337
|
+
* @throws Error if called on a new (unsaved) record
|
|
338
|
+
*
|
|
339
|
+
* @example
|
|
340
|
+
* ```typescript
|
|
341
|
+
* const record = await odinClient.customerDevices.get(id);
|
|
342
|
+
* await record.updateCustomerDeviceBattery({ ... })
|
|
343
|
+
* .linkAssociation_xxx(target)
|
|
344
|
+
* .execute();
|
|
345
|
+
* ```
|
|
346
|
+
*/
|
|
347
|
+
updateCustomerDeviceBattery(properties, options) {
|
|
348
|
+
var _a;
|
|
349
|
+
if (!((_a = this._record) === null || _a === void 0 ? void 0 : _a.id))
|
|
350
|
+
throw new Error('updateCustomerDeviceBattery requires an existing record. Use accessor.get() first.');
|
|
351
|
+
return new UpdateCustomerDeviceBatteryDto_1.UpdateCustomerDeviceBatteryBuilder({ id: this._record.id, entity: this._record.entity, type: this._record.type }, properties || {}, [...this._pendingLinks], options).withProvider(this._provider, 'ServiceModule', 'CustomerDevice', () => { this._pendingLinks = []; });
|
|
331
352
|
}
|
|
332
353
|
}
|
|
333
354
|
exports.CustomerDeviceRecord = CustomerDeviceRecord;
|
|
@@ -63,6 +63,7 @@ import { ContactRecord } from './ContactRecord';
|
|
|
63
63
|
import { MessageRecord } from './MessageRecord';
|
|
64
64
|
import { EmailRecord } from './EmailRecord';
|
|
65
65
|
import { PgDirectDebitFileRecord } from './PgDirectDebitFileRecord';
|
|
66
|
+
import { YfWifiSurveyRecord } from './YfWifiSurveyRecord';
|
|
66
67
|
/** Valid entity types for File */
|
|
67
68
|
export declare type FileType = 'AFP_INVOICE' | 'CBO_FINAL_BILL' | 'CSV' | 'DEFAULT' | 'EMAIL' | 'INVOICE' | 'NA_PROBLEM_EVIDENCE' | 'NA_SOLUTION_EVIDENCE' | 'OPENREACH_A55' | 'OTDR';
|
|
68
69
|
/**
|
|
@@ -167,6 +168,7 @@ export declare class FileRecord<TProps = FileProperties> {
|
|
|
167
168
|
private _messages?;
|
|
168
169
|
private _emails?;
|
|
169
170
|
private _pgDirectDebitFiles?;
|
|
171
|
+
private _yfWifiSurveys?;
|
|
170
172
|
/**
|
|
171
173
|
* Create a record wrapper.
|
|
172
174
|
* @param record - The underlying record, or null for create operations
|
|
@@ -1054,6 +1056,24 @@ export declare class FileRecord<TProps = FileProperties> {
|
|
|
1054
1056
|
* ```
|
|
1055
1057
|
*/
|
|
1056
1058
|
get pgDirectDebitFiles(): RecordLinkManager<PgDirectDebitFileRecord, typeof FileRecord['pgDirectDebitFilesLabels'][number]>;
|
|
1059
|
+
/** Valid labels for YfWifiSurvey associations */
|
|
1060
|
+
static readonly yfWifiSurveysLabels: readonly ["YfWifiSurvey__File"];
|
|
1061
|
+
/**
|
|
1062
|
+
* Access linked YfWifiSurvey records
|
|
1063
|
+
* @remarks Available labels: YfWifiSurvey__File
|
|
1064
|
+
* @throws Error if called on a new (unsaved) record
|
|
1065
|
+
*
|
|
1066
|
+
* @example
|
|
1067
|
+
* ```typescript
|
|
1068
|
+
* // Get all linked YfWifiSurvey records
|
|
1069
|
+
* const items = await record.yfWifiSurveys.list();
|
|
1070
|
+
* const first = await record.yfWifiSurveys.first();
|
|
1071
|
+
*
|
|
1072
|
+
* // Filter by label
|
|
1073
|
+
* const specific = await record.yfWifiSurveys.first({ label: 'YfWifiSurvey__File' });
|
|
1074
|
+
* ```
|
|
1075
|
+
*/
|
|
1076
|
+
get yfWifiSurveys(): RecordLinkManager<YfWifiSurveyRecord, typeof FileRecord['yfWifiSurveysLabels'][number]>;
|
|
1057
1077
|
/**
|
|
1058
1078
|
* Queue a link to be created with the next action.
|
|
1059
1079
|
* Works for both create and update actions.
|