@pitcher/js-api 1.26.0-beta.13 → 1.26.0-beta.14

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 (78) hide show
  1. package/impact-js-api.spec.json +6 -0
  2. package/js-api.esm.js +562 -3
  3. package/js-api.esm.js.map +1 -1
  4. package/js-api.umd.min.js +10 -10
  5. package/js-api.umd.min.js.map +1 -1
  6. package/lib/api/events/events.helpers.d.ts +14 -2
  7. package/lib/apps/agenda-selector/composables/move-item-modal.use.d.ts +4 -0
  8. package/lib/apps/browser/components/Content/ActionsToolbar/ActionsToolbar.vue.d.ts +12 -3
  9. package/lib/apps/browser/stores/api.d.ts +27 -0
  10. package/lib/apps/browser/stores/upload.d.ts +4 -0
  11. package/lib/apps/canvas-builder/components/ui/ContentList/ContentList.vue.d.ts +8 -8
  12. package/lib/apps/canvas-builder/components/ui/DataCharts/types.d.ts +1 -0
  13. package/lib/apps/canvas-builder/components/ui/SectionList/SectionList.vue.d.ts +8 -3
  14. package/lib/apps/canvas-builder/composables/useCanvas.d.ts +83 -0
  15. package/lib/apps/canvas-builder/composables/useCanvasBlocks.d.ts +12 -0
  16. package/lib/apps/canvas-builder/composables/useCanvasHistory.d.ts +12 -0
  17. package/lib/apps/canvas-builder/composables/useCanvasTheme.d.ts +2 -0
  18. package/lib/apps/canvas-builder/composables/useCrmShape.d.ts +1 -1
  19. package/lib/apps/canvas-builder/composables/useCrmShapeWithSectionContext.d.ts +1 -2
  20. package/lib/apps/canvas-builder/composables/usePopupApps.d.ts +2 -0
  21. package/lib/apps/canvas-builder/util/canvas.util.d.ts +1 -0
  22. package/lib/apps/collection-selector/composables/move-slide-modal.use.d.ts +4 -0
  23. package/lib/apps/content-selector/components/Content/AllContent/List/FoldersFilesList.vue.d.ts +12 -3
  24. package/lib/apps/ppt-conversion-selector/composables/move-slide-modal.use.d.ts +2 -0
  25. package/lib/apps/ppt-conversion-selector/stores/app.store.d.ts +2 -0
  26. package/lib/components/CFileAttributes/CFileAttributes.vue.d.ts +1 -0
  27. package/lib/components/CSearchFilters/CSearchFilters.vue.d.ts +4 -1
  28. package/lib/components/CSwitch/CSwitch.vue.d.ts +4 -2
  29. package/lib/components/assignedCanvases/CAssignedCanvasesManagement.vue.d.ts +20 -4
  30. package/lib/components/assignedCanvases/CAssignedCanvasesManagementToolbar.vue.d.ts +4 -1
  31. package/lib/components/canvas-blocks/CBlockManagement.vue.d.ts +16 -4
  32. package/lib/components/canvas-blocks/CBlockManagementToolbar.vue.d.ts +4 -1
  33. package/lib/components/canvas-templates/CTemplateManagement.vue.d.ts +40 -10
  34. package/lib/components/canvas-templates/CTemplateManagementToolbar.vue.d.ts +16 -4
  35. package/lib/components/savedCanvases/CSavedCanvasesManagement.vue.d.ts +16 -4
  36. package/lib/components/savedCanvases/CSavedCanvasesManagementToolbar.vue.d.ts +4 -1
  37. package/lib/components/sections/CSectionManagement.vue.d.ts +16 -4
  38. package/lib/components/sections/CSectionManagementToolbar.vue.d.ts +4 -1
  39. package/lib/components/themes/CThemeManagement.vue.d.ts +16 -4
  40. package/lib/components/themes/CThemeManagementToolbar.vue.d.ts +4 -1
  41. package/lib/composables/useCanvasStandardFilters.d.ts +17 -2
  42. package/lib/composables/useSmartStore.d.ts +25 -0
  43. package/lib/main.lib.d.ts +2 -0
  44. package/lib/sdk/api/HighLevelApi.d.ts +3 -0
  45. package/lib/sdk/api/modules/query.d.ts +60 -1
  46. package/lib/sdk/main.d.ts +9 -0
  47. package/lib/sdk/payload.types.d.ts +55 -0
  48. package/lib/types/instanceSettings.types.d.ts +1 -0
  49. package/lib/types/launchDarkly.types.d.ts +2 -1
  50. package/lib/types/organizationSettings.types.d.ts +5 -0
  51. package/lib/types/sfdc.d.ts +5 -0
  52. package/lib/util/smart-store.util.d.ts +40 -0
  53. package/lib/util/smart-store.util.spec.d.ts +1 -0
  54. package/package.json +1 -1
  55. package/types/openapi/models/FilePermission.d.ts +1 -0
  56. package/types/openapi/models/FilePermissionRequest.d.ts +1 -0
  57. package/types/openapi/models/PaginatedAppList.d.ts +2 -2
  58. package/types/openapi/models/PaginatedAuthTokenList.d.ts +2 -2
  59. package/types/openapi/models/PaginatedCanvasList.d.ts +2 -2
  60. package/types/openapi/models/PaginatedCollaborationList.d.ts +2 -2
  61. package/types/openapi/models/PaginatedContentDistributionGroupList.d.ts +2 -2
  62. package/types/openapi/models/PaginatedContentDistributionGroupMembershipList.d.ts +2 -2
  63. package/types/openapi/models/PaginatedEnvironmentList.d.ts +2 -2
  64. package/types/openapi/models/PaginatedEventList.d.ts +2 -2
  65. package/types/openapi/models/PaginatedFavoriteList.d.ts +2 -2
  66. package/types/openapi/models/PaginatedFileList.d.ts +2 -2
  67. package/types/openapi/models/PaginatedFileRevisionList.d.ts +2 -2
  68. package/types/openapi/models/PaginatedFolderList.d.ts +2 -2
  69. package/types/openapi/models/PaginatedInstanceAssignmentGroupList.d.ts +2 -2
  70. package/types/openapi/models/PaginatedInstanceAssignmentGroupMembershipList.d.ts +2 -2
  71. package/types/openapi/models/PaginatedInstanceList.d.ts +2 -2
  72. package/types/openapi/models/PaginatedInstanceMembershipList.d.ts +2 -2
  73. package/types/openapi/models/PaginatedInvitationList.d.ts +2 -2
  74. package/types/openapi/models/PaginatedMetadataTemplateList.d.ts +2 -2
  75. package/types/openapi/models/PaginatedOfflineSyncFolderList.d.ts +2 -2
  76. package/types/openapi/models/PaginatedRegionList.d.ts +2 -2
  77. package/types/openapi/models/PaginatedRevisionList.d.ts +2 -2
  78. package/types/openapi/models/PaginatedUserList.d.ts +2 -2
@@ -43,7 +43,10 @@ declare function __VLS_template(): {
43
43
  type: import('../../../types/openapi').MetadataTemplateFieldTypeEnum;
44
44
  name: string;
45
45
  label: string;
46
- options?: [];
46
+ options?: {
47
+ label: string;
48
+ value: string;
49
+ }[];
47
50
  }[];
48
51
  }> & Readonly<{
49
52
  onSearch?: ((s: string) => any) | undefined;
@@ -90,7 +93,10 @@ declare function __VLS_template(): {
90
93
  type: import('../../../types/openapi').MetadataTemplateFieldTypeEnum;
91
94
  name: string;
92
95
  label: string;
93
- options?: [];
96
+ options?: {
97
+ label: string;
98
+ value: string;
99
+ }[];
94
100
  }[];
95
101
  }> & Readonly<{
96
102
  onSearch?: ((s: string) => any) | undefined;
@@ -257,7 +263,10 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
257
263
  type: import('../../../types/openapi').MetadataTemplateFieldTypeEnum;
258
264
  name: string;
259
265
  label: string;
260
- options?: [];
266
+ options?: {
267
+ label: string;
268
+ value: string;
269
+ }[];
261
270
  }[];
262
271
  }> & Readonly<{
263
272
  onSearch?: ((s: string) => any) | undefined;
@@ -304,7 +313,10 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
304
313
  type: import('../../../types/openapi').MetadataTemplateFieldTypeEnum;
305
314
  name: string;
306
315
  label: string;
307
- options?: [];
316
+ options?: {
317
+ label: string;
318
+ value: string;
319
+ }[];
308
320
  }[];
309
321
  }> & Readonly<{
310
322
  onSearch?: ((s: string) => any) | undefined;
@@ -12,7 +12,10 @@ type __VLS_Props = {
12
12
  type: MetadataTemplateFieldTypeEnum;
13
13
  name: string;
14
14
  label: string;
15
- options?: [];
15
+ options?: {
16
+ label: string;
17
+ value: string;
18
+ }[];
16
19
  }[];
17
20
  };
18
21
  declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
@@ -40,7 +40,10 @@ declare function __VLS_template(): {
40
40
  type: import('../../../types/openapi').MetadataTemplateFieldTypeEnum;
41
41
  name: string;
42
42
  label: string;
43
- options?: [];
43
+ options?: {
44
+ label: string;
45
+ value: string;
46
+ }[];
44
47
  }[];
45
48
  }> & Readonly<{
46
49
  onSearch?: ((value: string) => any) | undefined;
@@ -86,7 +89,10 @@ declare function __VLS_template(): {
86
89
  type: import('../../../types/openapi').MetadataTemplateFieldTypeEnum;
87
90
  name: string;
88
91
  label: string;
89
- options?: [];
92
+ options?: {
93
+ label: string;
94
+ value: string;
95
+ }[];
90
96
  }[];
91
97
  }> & Readonly<{
92
98
  onSearch?: ((value: string) => any) | undefined;
@@ -252,7 +258,10 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
252
258
  type: import('../../../types/openapi').MetadataTemplateFieldTypeEnum;
253
259
  name: string;
254
260
  label: string;
255
- options?: [];
261
+ options?: {
262
+ label: string;
263
+ value: string;
264
+ }[];
256
265
  }[];
257
266
  }> & Readonly<{
258
267
  onSearch?: ((value: string) => any) | undefined;
@@ -298,7 +307,10 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
298
307
  type: import('../../../types/openapi').MetadataTemplateFieldTypeEnum;
299
308
  name: string;
300
309
  label: string;
301
- options?: [];
310
+ options?: {
311
+ label: string;
312
+ value: string;
313
+ }[];
302
314
  }[];
303
315
  }> & Readonly<{
304
316
  onSearch?: ((value: string) => any) | undefined;
@@ -11,7 +11,10 @@ type __VLS_Props = {
11
11
  type: MetadataTemplateFieldTypeEnum;
12
12
  name: string;
13
13
  label: string;
14
- options?: [];
14
+ options?: {
15
+ label: string;
16
+ value: string;
17
+ }[];
15
18
  }[];
16
19
  };
17
20
  declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
@@ -1,4 +1,9 @@
1
+ import { ComputedRef, Ref } from 'vue';
1
2
  import { MetadataTemplateFieldTypeEnum } from '../../types/openapi';
3
+ export interface TemplateOption {
4
+ label: string;
5
+ value: string;
6
+ }
2
7
  export interface CanvasStandardFiltersOptions {
3
8
  /**
4
9
  * Include the "Tags" filter (default: true)
@@ -12,6 +17,10 @@ export interface CanvasStandardFiltersOptions {
12
17
  * Include the "Template Used" filter (only for saved canvases)
13
18
  */
14
19
  includeTemplateFilter?: boolean;
20
+ /**
21
+ * Template options for the dropdown filter
22
+ */
23
+ templateOptions?: Ref<TemplateOption[]> | ComputedRef<TemplateOption[]>;
15
24
  /**
16
25
  * Include the "Owner" filter
17
26
  */
@@ -27,9 +36,15 @@ export interface CanvasStandardFiltersOptions {
27
36
  * @returns Array of filter component configurations
28
37
  */
29
38
  export declare function useCanvasStandardFilters(options?: CanvasStandardFiltersOptions): {
30
- filterComponents: import('vue').ComputedRef<{
39
+ filterComponents: ComputedRef<({
40
+ type: MetadataTemplateFieldTypeEnum;
41
+ name: string;
42
+ label: string;
43
+ options?: undefined;
44
+ } | {
31
45
  type: MetadataTemplateFieldTypeEnum;
32
46
  name: string;
33
47
  label: string;
34
- }[]>;
48
+ options: TemplateOption[];
49
+ })[]>;
35
50
  };
@@ -0,0 +1,25 @@
1
+ import { Ref } from 'vue';
2
+ import { PitcherEnv } from '../sdk/interfaces';
3
+ /**
4
+ * Composable for SmartStore availability checks
5
+ *
6
+ * SmartStore is Salesforce Mobile SDK's local database for offline data access on iOS.
7
+ * It requires both iOS mode and the enable_sfdc_sync instance setting to be enabled.
8
+ *
9
+ * @param env - Optional reactive environment object from app store (avoids redundant API calls)
10
+ *
11
+ * @example
12
+ * // With app store env (recommended - avoids API calls)
13
+ * const appStore = useAppStore()
14
+ * const { shouldUseSmartStore } = useSmartStore(appStore.env)
15
+ * const enabled = shouldUseSmartStore.value
16
+ *
17
+ * @example
18
+ * // Without env (for canvas-ui internal usage)
19
+ * const { generateTempSalesforceId } = useSmartStore()
20
+ * const tempId = generateTempSalesforceId('00U')
21
+ */
22
+ export declare function useSmartStore(env?: Ref<PitcherEnv | null> | PitcherEnv | null): {
23
+ shouldUseSmartStore: import('vue').ComputedRef<boolean>;
24
+ generateTempSalesforceId: (objectPrefix: string) => string;
25
+ };
package/lib/main.lib.d.ts CHANGED
@@ -137,6 +137,7 @@ export * as agendaSelector from './apps/agenda-selector/export';
137
137
  export { default as useTheme } from './composables/useTheme';
138
138
  export { default as useThemeVars } from './composables/useThemeVars';
139
139
  export { default as useBindValidation } from './composables/useBindValidation';
140
+ export { useSmartStore } from './composables/useSmartStore';
140
141
  export { default as useFileDisplayHelpers } from './composables/useFileDisplayHelpers';
141
142
  export { default as useFolderNameDescription } from './composables/useFolderNameDescription';
142
143
  export { default as useCanvasOverlay } from './composables/useCanvasOverlay';
@@ -196,6 +197,7 @@ export * from './util/storage.util';
196
197
  export * from './util/handlebars';
197
198
  export * from './apps/collection-selector/utils/content-selector-adapter.util';
198
199
  export * from './util/soql.util.ts';
200
+ export * from './util/smart-store.util';
199
201
  export * from './util/app.util';
200
202
  export * from './utils/iframeInitialize';
201
203
  export * from './sdk/main';
@@ -233,14 +233,17 @@ export declare function createHighLevelApi(options?: ApiOptions): {
233
233
  }): Promise<void>;
234
234
  query(payload: import('../payload.types').QueryPayload): Promise<any>;
235
235
  crmQuery(payload: import('../payload.types').CRMQueryPayload): Promise<any>;
236
+ crmQueryAdaptive(payload: import('../payload.types').CRMQueryPayload): Promise<any>;
236
237
  crmSmartQuery(payload: import('../payload.types').CRMQueryPayload): Promise<Array<any>>;
237
238
  crmSmartObjectMetadata(payload: import('../payload.types').CRMSmartObjectMetadataPayload): Promise<any>;
238
239
  crmSmartUpsertObjects(payload: import('../payload.types').UpsertCRMObjectsPayload): Promise<any>;
239
240
  crmSmartObjectValidationRules(payload: import('../payload.types').CRMSmartObjectValidationRulesPayload): Promise<any>;
241
+ crmSmartObjectLayout(payload: import('../payload.types').CRMSmartObjectLayoutPayload): Promise<any>;
240
242
  crmSmartDeleteObjects(payload: import('../payload.types').CRMSmartDeleteObjectsPayload): Promise<any>;
241
243
  crmCreate(payload: import('../payload.types').CRMCreatePayload): Promise<any>;
242
244
  crmUpsert(payload: import('../payload.types').CRMUpsertPayload): Promise<any>;
243
245
  crmDescribe(payload: import('../payload.types').CRMDescribePayload): Promise<any>;
246
+ crmLayout(payload: import('../payload.types').CRMLayoutPayload): Promise<any>;
244
247
  getFolders(payload: import('../payload.types').FolderListRequest): Promise<import('../../main.lib').PaginatedFolderList>;
245
248
  getFolder(payload?: {
246
249
  id: import('../../main.lib').FolderRetrieve["id"];
@@ -1,6 +1,22 @@
1
- import { QueryPayload, CRMQueryPayload, UpsertCRMObjectsPayload, CRMSmartObjectValidationRulesPayload, CRMSmartObjectMetadataPayload, CRMSmartDeleteObjectsPayload, CRMCreatePayload, CRMUpsertPayload, CRMDescribePayload } from '../../payload.types';
1
+ import { QueryPayload, CRMQueryPayload, UpsertCRMObjectsPayload, CRMSmartObjectValidationRulesPayload, CRMSmartObjectMetadataPayload, CRMSmartObjectLayoutPayload, CRMSmartDeleteObjectsPayload, CRMCreatePayload, CRMUpsertPayload, CRMDescribePayload, CRMLayoutPayload } from '../../payload.types';
2
2
  export declare function query(payload: QueryPayload): Promise<any>;
3
3
  export declare function crmQuery(payload: CRMQueryPayload): Promise<any>;
4
+ /**
5
+ * Executes a CRM query with automatic iOS/SmartStore adaptation.
6
+ *
7
+ * On iOS devices with the 'enable_sfdc_sync' instance setting enabled,
8
+ * this function automatically converts SOQL queries to SmartStore Smart SQL format
9
+ * and uses the local SmartStore for offline data access.
10
+ * On other platforms or when the setting is disabled, it uses the standard CRM query API.
11
+ *
12
+ * @param {CRMQueryPayload} payload - The query payload containing the SOQL query string.
13
+ * @returns {Promise<any>} - Promise resolving with query results.
14
+ *
15
+ * @example
16
+ * // Works on all platforms - automatically adapts for iOS with enable_sfdc_sync instance setting
17
+ * const result = await crmQueryAdaptive({ query: 'SELECT Id, Name FROM Account WHERE Active = true' })
18
+ */
19
+ export declare function crmQueryAdaptive(payload: CRMQueryPayload): Promise<any>;
4
20
  /**
5
21
  * Executes a SmartStore query against local CRM data (iOS only).
6
22
  * Uses Salesforce Mobile SDK SmartStore query syntax.
@@ -88,6 +104,23 @@ export declare function crmSmartUpsertObjects(payload: UpsertCRMObjectsPayload):
88
104
  * api.crmSmartObjectValidationRules({ object: 'Contact' })
89
105
  */
90
106
  export declare function crmSmartObjectValidationRules(payload: CRMSmartObjectValidationRulesPayload): Promise<any>;
107
+ /**
108
+ * Retrieves layout information for a CRM smart object (iOS only).
109
+ * Fetches object layout metadata from the Salesforce Mobile SDK cache.
110
+ *
111
+ * @param {CRMSmartObjectLayoutPayload} payload - The payload containing the object name and optional layout parameters.
112
+ * @returns {Promise<any>} - Promise resolving with the object layout metadata.
113
+ * @throws {Error} - Throws an error if the object name is not provided.
114
+ *
115
+ * @example
116
+ * // iOS only method to retrieve CRM object layout.
117
+ * api.crmSmartObjectLayout({ object: 'Account' })
118
+ *
119
+ * @example
120
+ * // Get layout with specific form factor and mode.
121
+ * api.crmSmartObjectLayout({ object: 'Account', form_factor: 'Large', mode: 'Edit' })
122
+ */
123
+ export declare function crmSmartObjectLayout(payload: CRMSmartObjectLayoutPayload): Promise<any>;
91
124
  /**
92
125
  * Deletes CRM objects from local CRM data (iOS only).
93
126
  * Uses Salesforce Mobile SDK SmartStore to delete records.
@@ -173,3 +206,29 @@ export declare function crmUpsert(payload: CRMUpsertPayload): Promise<any>;
173
206
  * })
174
207
  */
175
208
  export declare function crmDescribe(payload: CRMDescribePayload): Promise<any>;
209
+ /**
210
+ * Retrieves layout information for a CRM object (Web only).
211
+ * Uses Salesforce REST API to fetch object layout including sections, fields arrangement, and form factors.
212
+ *
213
+ * @param {CRMLayoutPayload} payload - The layout payload containing the sobject name and optional layout parameters.
214
+ * @returns {Promise<any>} - Promise resolving with the object layout information.
215
+ * @throws {Error} - Throws an error if the payload is invalid.
216
+ *
217
+ * @example
218
+ * // Web only method to get CRM object layout.
219
+ * api.crmLayout({ sobject: 'Account' })
220
+ * .then(layout => {
221
+ * // Access layout sections
222
+ * console.log(layout.editLayoutSections)
223
+ * })
224
+ *
225
+ * @example
226
+ * // Get layout with specific form factor, mode, and record type.
227
+ * api.crmLayout({
228
+ * sobject: 'Account',
229
+ * form_factor: 'Large',
230
+ * mode: 'Edit',
231
+ * record_type_id: '012xx0000004ABC'
232
+ * })
233
+ */
234
+ export declare function crmLayout(payload: CRMLayoutPayload): Promise<any>;
package/lib/sdk/main.d.ts CHANGED
@@ -304,14 +304,17 @@ export declare function useApi(options?: ApiOptions): {
304
304
  }): Promise<void>;
305
305
  query(payload: import('./payload.types').QueryPayload): Promise<any>;
306
306
  crmQuery(payload: import('./payload.types').CRMQueryPayload): Promise<any>;
307
+ crmQueryAdaptive(payload: import('./payload.types').CRMQueryPayload): Promise<any>;
307
308
  crmSmartQuery(payload: import('./payload.types').CRMQueryPayload): Promise<Array<any>>;
308
309
  crmSmartObjectMetadata(payload: import('./payload.types').CRMSmartObjectMetadataPayload): Promise<any>;
309
310
  crmSmartUpsertObjects(payload: import('./payload.types').UpsertCRMObjectsPayload): Promise<any>;
310
311
  crmSmartObjectValidationRules(payload: import('./payload.types').CRMSmartObjectValidationRulesPayload): Promise<any>;
312
+ crmSmartObjectLayout(payload: import('./payload.types').CRMSmartObjectLayoutPayload): Promise<any>;
311
313
  crmSmartDeleteObjects(payload: import('./payload.types').CRMSmartDeleteObjectsPayload): Promise<any>;
312
314
  crmCreate(payload: import('./payload.types').CRMCreatePayload): Promise<any>;
313
315
  crmUpsert(payload: import('./payload.types').CRMUpsertPayload): Promise<any>;
314
316
  crmDescribe(payload: import('./payload.types').CRMDescribePayload): Promise<any>;
317
+ crmLayout(payload: import('./payload.types').CRMLayoutPayload): Promise<any>;
315
318
  getFolders(payload: import('./payload.types').FolderListRequest): Promise<import('../main.lib').PaginatedFolderList>;
316
319
  getFolder(payload?: {
317
320
  id: import('../main.lib').FolderRetrieve["id"];
@@ -590,14 +593,17 @@ export declare function useApi(options?: ApiOptions): {
590
593
  }): Promise<void>;
591
594
  query(payload: import('./payload.types').QueryPayload): Promise<any>;
592
595
  crmQuery(payload: import('./payload.types').CRMQueryPayload): Promise<any>;
596
+ crmQueryAdaptive(payload: import('./payload.types').CRMQueryPayload): Promise<any>;
593
597
  crmSmartQuery(payload: import('./payload.types').CRMQueryPayload): Promise<Array<any>>;
594
598
  crmSmartObjectMetadata(payload: import('./payload.types').CRMSmartObjectMetadataPayload): Promise<any>;
595
599
  crmSmartUpsertObjects(payload: import('./payload.types').UpsertCRMObjectsPayload): Promise<any>;
596
600
  crmSmartObjectValidationRules(payload: import('./payload.types').CRMSmartObjectValidationRulesPayload): Promise<any>;
601
+ crmSmartObjectLayout(payload: import('./payload.types').CRMSmartObjectLayoutPayload): Promise<any>;
597
602
  crmSmartDeleteObjects(payload: import('./payload.types').CRMSmartDeleteObjectsPayload): Promise<any>;
598
603
  crmCreate(payload: import('./payload.types').CRMCreatePayload): Promise<any>;
599
604
  crmUpsert(payload: import('./payload.types').CRMUpsertPayload): Promise<any>;
600
605
  crmDescribe(payload: import('./payload.types').CRMDescribePayload): Promise<any>;
606
+ crmLayout(payload: import('./payload.types').CRMLayoutPayload): Promise<any>;
601
607
  getFolders(payload: import('./payload.types').FolderListRequest): Promise<import('../main.lib').PaginatedFolderList>;
602
608
  getFolder(payload?: {
603
609
  id: import('../main.lib').FolderRetrieve["id"];
@@ -812,14 +818,17 @@ export declare function useApi(options?: ApiOptions): {
812
818
  }): Promise<ArrayBuffer>;
813
819
  query(payload: import('./payload.types').QueryPayload): Promise<any>;
814
820
  crmQuery(payload: import('./payload.types').CRMQueryPayload): Promise<any>;
821
+ crmQueryAdaptive(payload: import('./payload.types').CRMQueryPayload): Promise<any>;
815
822
  crmSmartQuery(payload: import('./payload.types').CRMQueryPayload): Promise<Array<any>>;
816
823
  crmSmartObjectMetadata(payload: import('./payload.types').CRMSmartObjectMetadataPayload): Promise<any>;
817
824
  crmSmartUpsertObjects(payload: import('./payload.types').UpsertCRMObjectsPayload): Promise<any>;
818
825
  crmSmartObjectValidationRules(payload: import('./payload.types').CRMSmartObjectValidationRulesPayload): Promise<any>;
826
+ crmSmartObjectLayout(payload: import('./payload.types').CRMSmartObjectLayoutPayload): Promise<any>;
819
827
  crmSmartDeleteObjects(payload: import('./payload.types').CRMSmartDeleteObjectsPayload): Promise<any>;
820
828
  crmCreate(payload: import('./payload.types').CRMCreatePayload): Promise<any>;
821
829
  crmUpsert(payload: import('./payload.types').CRMUpsertPayload): Promise<any>;
822
830
  crmDescribe(payload: import('./payload.types').CRMDescribePayload): Promise<any>;
831
+ crmLayout(payload: import('./payload.types').CRMLayoutPayload): Promise<any>;
823
832
  getFolders(payload: import('./payload.types').FolderListRequest): Promise<import('../main.lib').PaginatedFolderList>;
824
833
  getFolder(payload?: {
825
834
  id: import('../main.lib').FolderRetrieve["id"];
@@ -339,6 +339,31 @@ export interface CRMSmartObjectValidationRulesPayload {
339
339
  */
340
340
  object: string;
341
341
  }
342
+ /**
343
+ * Payload for getting CRM smart object layout (iOS only).
344
+ */
345
+ export interface CRMSmartObjectLayoutPayload {
346
+ /**
347
+ * The name of the CRM object (e.g., 'Account', 'Contact', 'Opportunity').
348
+ */
349
+ object: string;
350
+ /**
351
+ * Optional form factor (e.g., 'Large', 'Medium', 'Small').
352
+ */
353
+ form_factor?: string;
354
+ /**
355
+ * Optional layout type (e.g., 'Full', 'Compact').
356
+ */
357
+ layout_type?: string;
358
+ /**
359
+ * Optional mode (e.g., 'Create', 'Edit', 'View').
360
+ */
361
+ mode?: string;
362
+ /**
363
+ * Optional record type ID.
364
+ */
365
+ record_type_id?: string;
366
+ }
342
367
  /**
343
368
  * Represents a single CRM object to be deleted.
344
369
  */
@@ -418,3 +443,33 @@ export interface CRMDescribePayload {
418
443
  */
419
444
  service?: CRMServiceType;
420
445
  }
446
+ /**
447
+ * Payload for retrieving CRM object layout (Web only).
448
+ * Uses Salesforce REST API to fetch object layout information including sections, fields arrangement, and form factors.
449
+ */
450
+ export interface CRMLayoutPayload {
451
+ /**
452
+ * The Salesforce object type to get layout for (e.g., 'Account', 'Contact', 'Opportunity').
453
+ */
454
+ sobject: string;
455
+ /**
456
+ * Optional form factor (e.g., 'Large', 'Medium', 'Small').
457
+ */
458
+ form_factor?: string;
459
+ /**
460
+ * Optional layout type (e.g., 'Full', 'Compact').
461
+ */
462
+ layout_type?: string;
463
+ /**
464
+ * Optional mode (e.g., 'Create', 'Edit', 'View').
465
+ */
466
+ mode?: string;
467
+ /**
468
+ * Optional record type ID for record type specific layouts.
469
+ */
470
+ record_type_id?: string;
471
+ /**
472
+ * Optional name of the CRM service to use.
473
+ */
474
+ service?: CRMServiceType;
475
+ }
@@ -60,6 +60,7 @@ export type InstanceSettings = OrganizationSettings & {
60
60
  enable_multipeer_connectivity?: boolean;
61
61
  enable_syncbox?: boolean;
62
62
  enable_sync_file_filtering?: boolean;
63
+ enable_sfdc_sync?: boolean;
63
64
  time_format?: string;
64
65
  date_format?: string;
65
66
  is_file_expiration_mandatory?: boolean;
@@ -1,4 +1,4 @@
1
- export type LaunchDarklyBooleanFlagKey = 'ai_code_generation_model' | 'ai_text_generation_model' | 'ai_image_generation_model' | 'ai_video_generation_model' | 'allow_ai_prompts_in_canvas_text' | 'allow_bulk_actions_canvases_files' | 'allow_content_grid_autofill' | 'allow_canvas_duplication' | 'allow_canvases_tables_columns_settings' | 'allow_table_column_resizing' | 'allow_creating_canvas_with_no_template' | 'allow_dynamic_data_table_for_scribble_component' | 'allow_html_for_scribble_component' | 'allow_embeddable_for_scribble_component' | 'allow_embeddable_hiding' | 'allow_multimedia_for_scribble_component' | 'allow_note_taking' | 'allow_rep_canvas_metadata_edit' | 'allow_rep_file_distributions' | 'allow_rep_file_rating' | 'allow_rep_file_upload' | 'allow_saving_annotations_in_personal_layer' | 'allow_user_to_edit_font_size_and_color_in_canvas_tokens' | 'are_sections_system_controlled' | 'enable_canvas_core_distributions' | 'enable_file_core_distributions' | 'copy_context_to_canvas' | 'copy_template_metadata_to_canvas' | 'disable_canvas_edit_for_reps' | 'disable_custom_tooltips' | 'disable_file_edit_content' | 'disable_fullscreen_canvas_builder' | 'disable_impact_web_browser_fullscreen' | 'display_section_list_name' | 'disable_download_canvas' | 'enable_ai_generated_thumbnails' | 'enable_analytics' | 'enable_app_developer_role' | 'enable_algolia_search' | 'enable_background_image_theme_options' | 'enable_better_canvas_builder_control_bars_on_zoom' | 'enable_bulk_update_file_attributes' | 'enable_canvas_as_home' | 'enable_canvas_blocks' | 'enable_canvas_node_debugging' | 'enable_canvas_locks' | 'enable_canvas_template_edit_in_impact' | 'enable_canvas_tokens' | 'enable_collaborations' | 'enable_collection_player_data_accessor' | 'enable_content_grid_data_accessor' | 'enable_content_type_change_in_content_selector' | 'enable_cross_tab_instance_reload_for_ld_sync' | 'enable_create_section_from_section_template' | 'enable_custom_display_overrides' | 'enable_default_crm_shape' | 'enable_detailed_date_format' | 'enable_dsr_readonly_annotations' | 'enable_dynamic_data_table_component' | 'enable_custom_data_tables' | 'enable_embedded_video_autoplay' | 'enable_embedded_video' | 'enable_enhanced_canvas_drawer_app' | 'enable_enhanced_indicators' | 'enable_enhanced_section_execution_states' | 'enable_experimental_canvas_builder_dnd' | 'enable_extra_file_data' | 'enable_file_pages_metadata' | 'enable_file_revisions' | 'enable_folder_details_edit' | 'enable_handlebar_template_support' | 'enable_height_in_component_theming' | 'enable_hotspot_visibility' | 'enable_improved_canvas_node_updating' | 'enable_individual_users_in_file_distribution' | 'enable_insearch_in_section_selector' | 'enable_instance_cloner' | 'enable_advanced_cloner' | 'enable_instance_editor_role' | 'enable_instance_navigation_from_management' | 'enable_knock_notifications' | 'enable_maintain_section_theme_control' | 'enable_metadata_in_file_uploads_with_default_values' | 'enable_more_intuitive_component_spacing' | 'enable_multimedia_component_ai_images' | 'enable_new_meeting_bar' | 'enable_original_pdf_link' | 'enable_scale_content' | 'enable_sorting_in_tiptap_table' | 'enable_theme_assets' | 'enable_toc_enhancements_to_support_same_section_in_section_list' | 'enable_pia_assistant' | 'enable_pipe_character_multi_search' | 'enable_popup_apps' | 'enable_reorder_search' | 'enable_reorder_scribble_isolation' | 'enable_reorder_component_options_menu' | 'enable_resizable_multimedia_component' | 'enable_responsive_scribble_component' | 'enable_saved_canvases_filters' | 'enable_short_tag_column_in_tables' | 'enable_scribble_component' | 'enable_scribble_content_as_background' | 'enable_search_and_filters_in_multimedia_component' | 'enable_section_context_in_dsr' | 'enable_selectors_dnd' | 'enable_section_selector_edit_section' | 'enable_smart_folders' | 'enable_smart_folders_for_sections' | 'enable_smart_folders_in_section_selector' | 'enable_smart_folders_in_files' | 'enable_sorting_in_sections' | 'enable_suggested_tags' | 'enable_template_folders' | 'enable_theme_options_border_radius' | 'enable_themes' | 'hide_asset_uploader' | 'include_files_content_in_print' | 'interpolate_rep_canvases_on_edit_mode' | 'is_fe_sentry_enabled' | 'is_timeline_component_allowed' | 'launch_in_full_screen_on_present_mode' | 'prefer_online_handlers' | 'restrict_owned_files_from_admins' | 'show_asset_manager_for_multimedia' | 'show_clear_all_annotations_button' | 'show_content_selector_list_view' | 'show_metadata_filters_in_all_canvas_things' | 'show_only_preview_mode_for_html_component' | 'show_popularity_icons' | 'use_core_endpoint_for_analytics' | 'convert_pptx_to_section_with_scribble_pdfjs' | 'use_short_url_for_shared_link' | 'use_zoho_instead_of_ms_wopi' | 'enable_new_section_list' | 'enable_sharebox_apps' | 'enable_sharebox_bulk_filtering' | 'enable_back_to_previous_location_in_canvas' | 'enable_crm_shape_for_external_links' | 'enable_adaptive_popup_apps' | 'enable_file_version_polling' | 'skip_pspdfkit_wait_for_high_res_thumbs' | 'enable_reactive_scribble_component_toolbar' | 'enable_embeddable_full_screen_mode' | 'enable_enhanced_user_management' | 'keep_static_pptx_editable' | 'enable_canvas_pdf_dimensions' | 'enable_editable_pptx_of_canvas' | 'enable_canvas_control_bars_collapse' | 'enable_rep_app_visibility_order';
1
+ export type LaunchDarklyBooleanFlagKey = 'ai_code_generation_model' | 'ai_text_generation_model' | 'ai_image_generation_model' | 'ai_video_generation_model' | 'allow_ai_prompts_in_canvas_text' | 'allow_bulk_actions_canvases_files' | 'allow_content_grid_autofill' | 'allow_canvas_duplication' | 'allow_canvases_tables_columns_settings' | 'allow_table_column_resizing' | 'allow_creating_canvas_with_no_template' | 'allow_dynamic_data_table_for_scribble_component' | 'allow_html_for_scribble_component' | 'allow_embeddable_for_scribble_component' | 'allow_embeddable_hiding' | 'allow_multimedia_for_scribble_component' | 'allow_note_taking' | 'allow_rep_canvas_metadata_edit' | 'allow_rep_file_distributions' | 'allow_rep_file_rating' | 'allow_rep_file_upload' | 'allow_saving_annotations_in_personal_layer' | 'allow_user_to_edit_font_size_and_color_in_canvas_tokens' | 'are_sections_system_controlled' | 'enable_canvas_core_distributions' | 'enable_file_core_distributions' | 'copy_context_to_canvas' | 'copy_template_metadata_to_canvas' | 'disable_canvas_edit_for_reps' | 'disable_custom_tooltips' | 'disable_file_edit_content' | 'disable_fullscreen_canvas_builder' | 'disable_impact_web_browser_fullscreen' | 'display_section_list_name' | 'disable_download_canvas' | 'enable_ai_generated_thumbnails' | 'enable_analytics' | 'enable_app_developer_role' | 'enable_algolia_search' | 'enable_background_image_theme_options' | 'enable_better_canvas_builder_control_bars_on_zoom' | 'enable_bulk_update_file_attributes' | 'enable_canvas_as_home' | 'enable_canvas_blocks' | 'enable_canvas_node_debugging' | 'enable_canvas_locks' | 'enable_canvas_template_edit_in_impact' | 'enable_canvas_tokens' | 'enable_collaborations' | 'enable_collection_player_data_accessor' | 'enable_content_grid_data_accessor' | 'enable_content_type_change_in_content_selector' | 'enable_cross_tab_instance_reload_for_ld_sync' | 'enable_create_section_from_section_template' | 'enable_custom_display_overrides' | 'enable_default_crm_shape' | 'enable_detailed_date_format' | 'enable_dsr_readonly_annotations' | 'enable_dynamic_data_table_component' | 'enable_custom_data_tables' | 'enable_embedded_video_autoplay' | 'enable_embedded_video' | 'enable_enhanced_canvas_drawer_app' | 'enable_enhanced_indicators' | 'enable_enhanced_section_execution_states' | 'enable_experimental_canvas_builder_dnd' | 'enable_extra_file_data' | 'enable_file_pages_metadata' | 'enable_file_revisions' | 'enable_file_divisible_permission' | 'enable_folder_details_edit' | 'enable_handlebar_template_support' | 'enable_height_in_component_theming' | 'enable_hotspot_visibility' | 'enable_improved_canvas_node_updating' | 'enable_individual_users_in_file_distribution' | 'enable_insearch_in_section_selector' | 'enable_instance_cloner' | 'enable_advanced_cloner' | 'enable_instance_editor_role' | 'enable_instance_navigation_from_management' | 'enable_knock_notifications' | 'enable_maintain_section_theme_control' | 'enable_metadata_in_file_uploads_with_default_values' | 'enable_more_intuitive_component_spacing' | 'enable_multimedia_component_ai_images' | 'enable_new_meeting_bar' | 'enable_original_pdf_link' | 'enable_scale_content' | 'enable_sorting_in_tiptap_table' | 'enable_theme_assets' | 'enable_toc_enhancements_to_support_same_section_in_section_list' | 'enable_pia_assistant' | 'enable_pipe_character_multi_search' | 'enable_popup_apps' | 'enable_reorder_search' | 'enable_reorder_scribble_isolation' | 'enable_reorder_component_options_menu' | 'enable_resizable_multimedia_component' | 'enable_responsive_scribble_component' | 'enable_saved_canvases_filters' | 'enable_short_tag_column_in_tables' | 'enable_scribble_component' | 'enable_scribble_content_as_background' | 'enable_search_and_filters_in_multimedia_component' | 'enable_section_context_in_dsr' | 'enable_selectors_dnd' | 'enable_section_selector_edit_section' | 'enable_smart_folders' | 'enable_smart_folders_for_sections' | 'enable_smart_folders_in_section_selector' | 'enable_smart_folders_in_files' | 'enable_sorting_in_sections' | 'enable_suggested_tags' | 'enable_template_component_permissions' | 'enable_template_folders' | 'enable_theme_options_border_radius' | 'enable_themes' | 'hide_asset_uploader' | 'include_files_content_in_print' | 'interpolate_rep_canvases_on_edit_mode' | 'is_fe_sentry_enabled' | 'is_timeline_component_allowed' | 'launch_in_full_screen_on_present_mode' | 'prefer_online_handlers' | 'restrict_owned_files_from_admins' | 'show_asset_manager_for_multimedia' | 'show_clear_all_annotations_button' | 'show_content_selector_list_view' | 'show_metadata_filters_in_all_canvas_things' | 'show_only_preview_mode_for_html_component' | 'show_popularity_icons' | 'use_core_endpoint_for_analytics' | 'convert_pptx_to_section_with_scribble_pdfjs' | 'use_short_url_for_shared_link' | 'use_zoho_instead_of_ms_wopi' | 'enable_new_section_list' | 'enable_sharebox_apps' | 'enable_sharebox_bulk_filtering' | 'enable_back_to_previous_location_in_canvas' | 'enable_crm_shape_for_external_links' | 'enable_adaptive_popup_apps' | 'enable_file_version_polling' | 'skip_pspdfkit_wait_for_high_res_thumbs' | 'enable_reactive_scribble_component_toolbar' | 'enable_embeddable_full_screen_mode' | 'enable_enhanced_user_management' | 'keep_static_pptx_editable' | 'enable_canvas_pdf_dimensions' | 'enable_editable_pptx_of_canvas' | 'enable_canvas_control_bars_collapse' | 'enable_rep_app_visibility_order';
2
2
  export type LaunchDarklyNumberFlagKey = 'canvas_section_selector_page_size' | 'canvas_section_selector_selected_items_with_thumbnail_size';
3
3
  type LaunchDarklyObjectFlags = {
4
4
  canvas_manager_table_columns: CanvasManagerTableColumns;
@@ -16,6 +16,7 @@ declare const LaunchDarklyStringFlags: {
16
16
  readonly ai_image_generation_model: readonly ["minimax/image-01", ""];
17
17
  readonly ai_video_generation_model: readonly ["minimax/video-01", ""];
18
18
  readonly ai_text_generation_model: readonly ["anthropic/claude-3.5-sonnet", ""];
19
+ readonly sharebox_format: readonly ["content-grid", "content-grid-default", "collection-player-default"];
19
20
  };
20
21
  type LaunchDarklyStringFlagValue<K extends LaunchDarklyStringFlagKey = LaunchDarklyStringFlagKey> = K extends LaunchDarklyStringFlagKey ? (typeof LaunchDarklyStringFlags)[K][number] : never;
21
22
  type CanvasManagerVisibility = {
@@ -39,6 +39,10 @@ export type OrganizationSettings = {
39
39
  }[];
40
40
  disable_rep_changing_allow_download?: boolean;
41
41
  initial_allow_download?: boolean;
42
+ communication_templates_by_lang?: Record<string, {
43
+ subject: string;
44
+ body: string;
45
+ }>;
42
46
  };
43
47
  };
44
48
  allow_revoke_shared_link?: boolean;
@@ -108,6 +112,7 @@ export type OrganizationSettings = {
108
112
  name: string;
109
113
  enabled: boolean;
110
114
  type: 'base' | 'app';
115
+ sidebar_name?: string;
111
116
  }[];
112
117
  sfdc?: {
113
118
  use_static_ip_proxy?: boolean;
@@ -59,6 +59,7 @@ export type SfEvent = {
59
59
  Type?: string;
60
60
  EventWhoIds?: string[];
61
61
  IsAllDayEvent?: boolean;
62
+ is_executed_condition?: string;
62
63
  };
63
64
  export type SfEventExtended = SfEvent & {
64
65
  contactName?: string;
@@ -106,6 +107,10 @@ export interface SfContactBasic {
106
107
  type: string;
107
108
  url: string;
108
109
  };
110
+ callId?: string;
111
+ PersonAccountId?: string;
112
+ AccountName?: string;
113
+ Account?: any;
109
114
  }
110
115
  export type EventsSfList = {
111
116
  done?: boolean;
@@ -0,0 +1,40 @@
1
+ /**
2
+ * SmartStore Smart SQL Query Utilities
3
+ *
4
+ * This module provides utilities for converting SOQL queries to SmartStore Smart SQL format
5
+ * for offline data access on iOS devices using Salesforce Mobile SDK.
6
+ */
7
+ /**
8
+ * Comprehensive SOQL to SmartStore Smart Query converter
9
+ *
10
+ * Converts standard SOQL queries to SmartStore Smart SQL format for offline use on iOS.
11
+ * Handles SELECT, FROM, WHERE, ORDER BY, GROUP BY, HAVING, LIMIT, OFFSET,
12
+ * aggregate functions, and relationship fields.
13
+ *
14
+ * SmartStore stores denormalized data, so relationship fields are accessed directly
15
+ * within the soup using the full relationship path (e.g., Child_Account_vod__r.Name).
16
+ *
17
+ * @param soqlQuery - The SOQL query string to convert
18
+ * @returns The converted SmartStore Smart SQL query string
19
+ *
20
+ * @example
21
+ * // Simple query
22
+ * convertSoqlToSmartQuery('SELECT Id, Name FROM Account WHERE Active = true')
23
+ * // Returns: SELECT {Account:Id}, {Account:Name} FROM {Account} WHERE {Account:Active} = true
24
+ *
25
+ * @example
26
+ * // With relationship fields (denormalized access - no joins needed)
27
+ * convertSoqlToSmartQuery('SELECT Id, Child_Account_vod__r.Name FROM Child_Account_vod__c')
28
+ * // Returns: SELECT {Child_Account_vod__c:Id}, {Child_Account_vod__c:Child_Account_vod__r.Name} FROM {Child_Account_vod__c}
29
+ *
30
+ * @example
31
+ * // With aggregate functions
32
+ * convertSoqlToSmartQuery('SELECT COUNT(Id), Industry FROM Account GROUP BY Industry')
33
+ * // Returns: SELECT COUNT({Account:Id}), {Account:Industry} FROM {Account} GROUP BY {Account:Industry}
34
+ *
35
+ * @example
36
+ * // With ORDER BY and LIMIT
37
+ * convertSoqlToSmartQuery('SELECT Id, Name FROM Contact ORDER BY LastName ASC, FirstName DESC LIMIT 100')
38
+ * // Returns: SELECT {Contact:Id}, {Contact:Name} FROM {Contact} ORDER BY {Contact:LastName} ASC, {Contact:FirstName} DESC LIMIT 100
39
+ */
40
+ export declare function convertSoqlToSmartQuery(soqlQuery: string): string;
@@ -0,0 +1 @@
1
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pitcher/js-api",
3
- "version": "1.26.0-beta.13",
3
+ "version": "1.26.0-beta.14",
4
4
  "type": "module",
5
5
  "main": "js-api.umd.min.js",
6
6
  "module": "js-api.esm.js",
@@ -1,4 +1,5 @@
1
1
  export type FilePermission = {
2
2
  can_download?: boolean;
3
3
  can_share?: boolean;
4
+ can_be_divided?: boolean;
4
5
  };
@@ -1,4 +1,5 @@
1
1
  export type FilePermissionRequest = {
2
2
  can_download?: boolean;
3
3
  can_share?: boolean;
4
+ can_be_divided?: boolean;
4
5
  };
@@ -1,7 +1,7 @@
1
1
  import { App } from './App';
2
2
  export type PaginatedAppList = {
3
- count?: number;
3
+ count: number;
4
4
  next?: string | null;
5
5
  previous?: string | null;
6
- results?: Array<App>;
6
+ results: Array<App>;
7
7
  };
@@ -1,7 +1,7 @@
1
1
  import { AuthToken } from './AuthToken';
2
2
  export type PaginatedAuthTokenList = {
3
- count?: number;
3
+ count: number;
4
4
  next?: string | null;
5
5
  previous?: string | null;
6
- results?: Array<AuthToken>;
6
+ results: Array<AuthToken>;
7
7
  };
@@ -1,7 +1,7 @@
1
1
  import { Canvas } from './Canvas';
2
2
  export type PaginatedCanvasList = {
3
- count?: number;
3
+ count: number;
4
4
  next?: string | null;
5
5
  previous?: string | null;
6
- results?: Array<Canvas>;
6
+ results: Array<Canvas>;
7
7
  };
@@ -1,7 +1,7 @@
1
1
  import { Collaboration } from './Collaboration';
2
2
  export type PaginatedCollaborationList = {
3
- count?: number;
3
+ count: number;
4
4
  next?: string | null;
5
5
  previous?: string | null;
6
- results?: Array<Collaboration>;
6
+ results: Array<Collaboration>;
7
7
  };
@@ -1,7 +1,7 @@
1
1
  import { ContentDistributionGroup } from './ContentDistributionGroup';
2
2
  export type PaginatedContentDistributionGroupList = {
3
- count?: number;
3
+ count: number;
4
4
  next?: string | null;
5
5
  previous?: string | null;
6
- results?: Array<ContentDistributionGroup>;
6
+ results: Array<ContentDistributionGroup>;
7
7
  };
@@ -1,7 +1,7 @@
1
1
  import { ContentDistributionGroupMembership } from './ContentDistributionGroupMembership';
2
2
  export type PaginatedContentDistributionGroupMembershipList = {
3
- count?: number;
3
+ count: number;
4
4
  next?: string | null;
5
5
  previous?: string | null;
6
- results?: Array<ContentDistributionGroupMembership>;
6
+ results: Array<ContentDistributionGroupMembership>;
7
7
  };