@pnp/sp 2.8.0 → 2.12.0

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 (306) hide show
  1. package/LICENSE +25 -25
  2. package/appcatalog/index.d.ts +8 -8
  3. package/appcatalog/index.js +30 -30
  4. package/appcatalog/types.d.ts +81 -81
  5. package/appcatalog/types.d.ts.map +1 -1
  6. package/appcatalog/types.js +177 -177
  7. package/appcatalog/types.js.map +1 -1
  8. package/appcatalog/web.d.ts +16 -16
  9. package/appcatalog/web.js +6 -6
  10. package/attachments/index.d.ts +2 -2
  11. package/attachments/index.js +2 -2
  12. package/attachments/item.d.ts +12 -12
  13. package/attachments/item.js +4 -4
  14. package/attachments/types.d.ts +92 -92
  15. package/attachments/types.js +240 -240
  16. package/batch.d.ts +17 -17
  17. package/batch.js +223 -223
  18. package/clientside-pages/funcs.d.ts +22 -22
  19. package/clientside-pages/funcs.js +25 -25
  20. package/clientside-pages/index.d.ts +2 -2
  21. package/clientside-pages/index.js +2 -2
  22. package/clientside-pages/types.d.ts +496 -494
  23. package/clientside-pages/types.d.ts.map +1 -1
  24. package/clientside-pages/types.js +1496 -1487
  25. package/clientside-pages/types.js.map +1 -1
  26. package/clientside-pages/web.d.ts +41 -41
  27. package/clientside-pages/web.js +57 -57
  28. package/column-defaults/folder.d.ts +27 -27
  29. package/column-defaults/folder.js +82 -82
  30. package/column-defaults/index.d.ts +3 -3
  31. package/column-defaults/index.js +2 -2
  32. package/column-defaults/list.d.ts +19 -19
  33. package/column-defaults/list.js +198 -198
  34. package/column-defaults/types.d.ts +21 -21
  35. package/column-defaults/types.js +1 -1
  36. package/comments/clientside-page.d.ts +57 -57
  37. package/comments/clientside-page.d.ts.map +1 -1
  38. package/comments/clientside-page.js +136 -136
  39. package/comments/index.d.ts +2 -2
  40. package/comments/index.js +2 -2
  41. package/comments/item.d.ts +29 -29
  42. package/comments/item.js +47 -47
  43. package/comments/item.js.map +1 -1
  44. package/comments/types.d.ts +107 -107
  45. package/comments/types.d.ts.map +1 -1
  46. package/comments/types.js +145 -145
  47. package/comments/types.js.map +1 -1
  48. package/content-types/index.d.ts +4 -4
  49. package/content-types/index.js +4 -4
  50. package/content-types/item.d.ts +12 -12
  51. package/content-types/item.js +4 -4
  52. package/content-types/list.d.ts +12 -12
  53. package/content-types/list.js +4 -4
  54. package/content-types/types.d.ts +107 -107
  55. package/content-types/types.js +166 -166
  56. package/content-types/web.d.ts +12 -12
  57. package/content-types/web.js +4 -4
  58. package/decorators.d.ts +11 -11
  59. package/decorators.js +28 -28
  60. package/features/index.d.ts +3 -3
  61. package/features/index.js +3 -3
  62. package/features/site.d.ts +12 -12
  63. package/features/site.js +4 -4
  64. package/features/types.d.ts +47 -47
  65. package/features/types.js +109 -109
  66. package/features/web.d.ts +12 -12
  67. package/features/web.js +4 -4
  68. package/fields/index.d.ts +4 -4
  69. package/fields/index.js +4 -4
  70. package/fields/list.d.ts +12 -12
  71. package/fields/list.js +4 -4
  72. package/fields/types.d.ts +368 -368
  73. package/fields/types.js +624 -624
  74. package/fields/web.d.ts +17 -17
  75. package/fields/web.js +5 -5
  76. package/files/folder.d.ts +12 -12
  77. package/files/folder.js +4 -4
  78. package/files/index.d.ts +4 -4
  79. package/files/index.js +4 -4
  80. package/files/item.d.ts +12 -12
  81. package/files/item.js +4 -4
  82. package/files/types.d.ts +421 -421
  83. package/files/types.js +853 -853
  84. package/files/types.js.map +1 -1
  85. package/files/web.d.ts +35 -35
  86. package/files/web.js +15 -15
  87. package/folders/index.d.ts +4 -4
  88. package/folders/index.js +4 -4
  89. package/folders/item.d.ts +9 -9
  90. package/folders/item.js +4 -4
  91. package/folders/list.d.ts +12 -12
  92. package/folders/list.js +4 -4
  93. package/folders/types.d.ts +207 -207
  94. package/folders/types.js +433 -433
  95. package/folders/types.js.map +1 -1
  96. package/folders/web.d.ts +39 -39
  97. package/folders/web.js +15 -15
  98. package/forms/index.d.ts +2 -2
  99. package/forms/index.js +2 -2
  100. package/forms/list.d.ts +9 -9
  101. package/forms/list.js +4 -4
  102. package/forms/types.d.ts +35 -35
  103. package/forms/types.js +41 -41
  104. package/hubsites/index.d.ts +12 -12
  105. package/hubsites/index.js +15 -15
  106. package/hubsites/site.d.ts +26 -26
  107. package/hubsites/site.js +39 -39
  108. package/hubsites/types.d.ts +55 -55
  109. package/hubsites/types.d.ts.map +1 -1
  110. package/hubsites/types.js +53 -53
  111. package/hubsites/web.d.ts +21 -21
  112. package/hubsites/web.js +23 -23
  113. package/index.d.ts +14 -14
  114. package/index.js +13 -13
  115. package/items/index.d.ts +2 -2
  116. package/items/index.js +2 -2
  117. package/items/list.d.ts +9 -9
  118. package/items/list.js +4 -4
  119. package/items/types.d.ts +226 -226
  120. package/items/types.js +549 -549
  121. package/lists/index.d.ts +2 -2
  122. package/lists/index.js +2 -2
  123. package/lists/types.d.ts +495 -495
  124. package/lists/types.js +522 -522
  125. package/lists/types.js.map +1 -1
  126. package/lists/web.d.ts +43 -43
  127. package/lists/web.js +27 -27
  128. package/navigation/index.d.ts +8 -8
  129. package/navigation/index.js +14 -14
  130. package/navigation/types.d.ts +154 -154
  131. package/navigation/types.js +219 -219
  132. package/navigation/web.d.ts +13 -13
  133. package/navigation/web.js +4 -4
  134. package/odata.d.ts +5 -5
  135. package/odata.js +90 -90
  136. package/odata.js.map +1 -1
  137. package/operations.d.ts +9 -9
  138. package/operations.js +63 -63
  139. package/package.json +4 -4
  140. package/presets/all.d.ts +72 -72
  141. package/presets/all.js +72 -72
  142. package/presets/core.d.ts +11 -11
  143. package/presets/core.js +11 -11
  144. package/profiles/index.d.ts +7 -7
  145. package/profiles/index.js +13 -13
  146. package/profiles/types.d.ts +357 -357
  147. package/profiles/types.js +454 -454
  148. package/readme.md +21 -21
  149. package/regional-settings/content-type.d.ts +7 -7
  150. package/regional-settings/content-type.js +4 -4
  151. package/regional-settings/field.d.ts +7 -7
  152. package/regional-settings/field.js +4 -4
  153. package/regional-settings/funcs.d.ts +2 -2
  154. package/regional-settings/funcs.js +8 -8
  155. package/regional-settings/index.d.ts +6 -6
  156. package/regional-settings/index.js +6 -6
  157. package/regional-settings/list.d.ts +7 -7
  158. package/regional-settings/list.js +4 -4
  159. package/regional-settings/types.d.ts +111 -111
  160. package/regional-settings/types.js +159 -159
  161. package/regional-settings/user-custom-actions.d.ts +7 -7
  162. package/regional-settings/user-custom-actions.js +4 -4
  163. package/regional-settings/web.d.ts +12 -12
  164. package/regional-settings/web.js +7 -7
  165. package/related-items/index.d.ts +1 -1
  166. package/related-items/index.js +1 -1
  167. package/related-items/types.d.ts +76 -76
  168. package/related-items/types.js +103 -103
  169. package/related-items/web.d.ts +12 -12
  170. package/related-items/web.js +9 -9
  171. package/rest.d.ts +44 -44
  172. package/rest.js +72 -72
  173. package/search/index.d.ts +30 -30
  174. package/search/index.js +25 -25
  175. package/search/query.d.ts +62 -62
  176. package/search/query.js +302 -302
  177. package/search/suggest.d.ts +76 -76
  178. package/search/suggest.js +66 -66
  179. package/search/types.d.ts +426 -426
  180. package/search/types.js +57 -57
  181. package/security/funcs.d.ts +43 -43
  182. package/security/funcs.js +142 -142
  183. package/security/index.d.ts +4 -4
  184. package/security/index.js +4 -4
  185. package/security/item.d.ts +7 -7
  186. package/security/item.js +14 -14
  187. package/security/list.d.ts +7 -7
  188. package/security/list.js +14 -14
  189. package/security/types.d.ts +318 -318
  190. package/security/types.js +399 -399
  191. package/security/web.d.ts +9 -9
  192. package/security/web.js +15 -15
  193. package/sharepointqueryable.d.ts +135 -135
  194. package/sharepointqueryable.js +265 -265
  195. package/sharing/file.d.ts +18 -18
  196. package/sharing/file.js +116 -116
  197. package/sharing/folder.d.ts +9 -9
  198. package/sharing/folder.js +136 -136
  199. package/sharing/funcs.d.ts +62 -62
  200. package/sharing/funcs.js +239 -239
  201. package/sharing/funcs.js.map +1 -1
  202. package/sharing/index.d.ts +5 -5
  203. package/sharing/index.js +5 -5
  204. package/sharing/item.d.ts +16 -16
  205. package/sharing/item.js +15 -15
  206. package/sharing/types.d.ts +583 -583
  207. package/sharing/types.js +113 -113
  208. package/sharing/web.d.ts +19 -19
  209. package/sharing/web.js +76 -76
  210. package/site-designs/index.d.ts +8 -8
  211. package/site-designs/index.js +14 -14
  212. package/site-designs/types.d.ts +319 -319
  213. package/site-designs/types.js +203 -203
  214. package/site-designs/web.d.ts +25 -25
  215. package/site-designs/web.js +11 -11
  216. package/site-groups/index.d.ts +2 -2
  217. package/site-groups/index.js +2 -2
  218. package/site-groups/types.d.ts +89 -89
  219. package/site-groups/types.js +125 -125
  220. package/site-groups/web.d.ts +40 -40
  221. package/site-groups/web.js +30 -30
  222. package/site-scripts/index.d.ts +9 -9
  223. package/site-scripts/index.js +15 -15
  224. package/site-scripts/list.d.ts +12 -12
  225. package/site-scripts/list.js +24 -24
  226. package/site-scripts/types.d.ts +183 -183
  227. package/site-scripts/types.js +141 -141
  228. package/site-scripts/web.d.ts +13 -13
  229. package/site-scripts/web.js +5 -5
  230. package/site-users/index.d.ts +2 -2
  231. package/site-users/index.js +2 -2
  232. package/site-users/types.d.ts +138 -138
  233. package/site-users/types.js +122 -122
  234. package/site-users/web.d.ts +31 -31
  235. package/site-users/web.js +27 -27
  236. package/sites/index.d.ts +7 -7
  237. package/sites/index.js +13 -13
  238. package/sites/types.d.ts +147 -147
  239. package/sites/types.js +321 -321
  240. package/social/index.d.ts +10 -10
  241. package/social/index.js +13 -13
  242. package/social/types.d.ts +309 -309
  243. package/social/types.js +322 -322
  244. package/sphttpclient.d.ts +18 -18
  245. package/sphttpclient.js +189 -189
  246. package/splibconfig.d.ts +22 -22
  247. package/splibconfig.js +13 -13
  248. package/sputilities/index.d.ts +7 -7
  249. package/sputilities/index.js +13 -13
  250. package/sputilities/types.d.ts +130 -130
  251. package/sputilities/types.js +118 -118
  252. package/subscriptions/index.d.ts +2 -2
  253. package/subscriptions/index.js +2 -2
  254. package/subscriptions/list.d.ts +13 -13
  255. package/subscriptions/list.js +4 -4
  256. package/subscriptions/types.d.ts +54 -54
  257. package/subscriptions/types.js +111 -111
  258. package/taxonomy/index.d.ts +7 -7
  259. package/taxonomy/index.js +13 -13
  260. package/taxonomy/types.d.ts +200 -200
  261. package/taxonomy/types.js +347 -347
  262. package/taxonomy/types.js.map +1 -1
  263. package/telemetry.d.ts +12 -12
  264. package/telemetry.js +48 -48
  265. package/types.d.ts +218 -218
  266. package/types.js +79 -79
  267. package/user-custom-actions/index.d.ts +4 -4
  268. package/user-custom-actions/index.js +4 -4
  269. package/user-custom-actions/list.d.ts +12 -12
  270. package/user-custom-actions/list.js +4 -4
  271. package/user-custom-actions/site.d.ts +12 -12
  272. package/user-custom-actions/site.js +4 -4
  273. package/user-custom-actions/types.d.ts +82 -82
  274. package/user-custom-actions/types.js +93 -93
  275. package/user-custom-actions/web.d.ts +15 -15
  276. package/user-custom-actions/web.js +4 -4
  277. package/utils/escapeQueryStrValue.d.ts +1 -1
  278. package/utils/escapeQueryStrValue.js +19 -19
  279. package/utils/extractweburl.d.ts +1 -1
  280. package/utils/extractweburl.js +15 -15
  281. package/utils/file-names.d.ts +17 -17
  282. package/utils/file-names.js +38 -38
  283. package/utils/metadata.d.ts +5 -5
  284. package/utils/metadata.js +5 -5
  285. package/utils/objectToSPKeyValueCollection.d.ts +20 -20
  286. package/utils/objectToSPKeyValueCollection.js +16 -16
  287. package/utils/toResourcePath.d.ts +7 -7
  288. package/utils/toResourcePath.js +6 -6
  289. package/utils/toabsoluteurl.d.ts +7 -7
  290. package/utils/toabsoluteurl.js +61 -61
  291. package/views/index.d.ts +2 -2
  292. package/views/index.js +2 -2
  293. package/views/list.d.ts +23 -23
  294. package/views/list.js +8 -8
  295. package/views/types.d.ts +140 -140
  296. package/views/types.js +184 -184
  297. package/webparts/file.d.ts +15 -15
  298. package/webparts/file.js +6 -6
  299. package/webparts/index.d.ts +2 -2
  300. package/webparts/index.js +2 -2
  301. package/webparts/types.d.ts +83 -83
  302. package/webparts/types.js +117 -117
  303. package/webs/index.d.ts +16 -16
  304. package/webs/index.js +16 -16
  305. package/webs/types.d.ts +210 -210
  306. package/webs/types.js +295 -295
@@ -1,584 +1,584 @@
1
- import { IPrincipalInfo } from "../types.js";
2
- import { _Web } from "../webs/types.js";
3
- import { _File } from "../files/types.js";
4
- import { _Item } from "../items/types.js";
5
- import { _Folder } from "../folders/types.js";
6
- export declare type ShareableQueryable = _Web | _File | _Folder | _Item;
7
- /**
8
- * Indicates the role of the sharing link
9
- */
10
- export declare enum SharingRole {
11
- None = 0,
12
- View = 1,
13
- Edit = 2,
14
- Owner = 3
15
- }
16
- export declare enum SPSharedObjectType {
17
- Unknown = 0,
18
- File = 1,
19
- Folder = 2,
20
- Item = 3,
21
- List = 4,
22
- Web = 5,
23
- Max = 6
24
- }
25
- export declare enum SharingDomainRestrictionMode {
26
- None = 0,
27
- AllowList = 1,
28
- BlockList = 2
29
- }
30
- export declare enum SharingOperationStatusCode {
31
- /**
32
- * The share operation completed without errors.
33
- */
34
- CompletedSuccessfully = 0,
35
- /**
36
- * The share operation completed and generated requests for access.
37
- */
38
- AccessRequestsQueued = 1,
39
- /**
40
- * The share operation failed as there were no resolved users.
41
- */
42
- NoResolvedUsers = -1,
43
- /**
44
- * The share operation failed due to insufficient permissions.
45
- */
46
- AccessDenied = -2,
47
- /**
48
- * The share operation failed when attempting a cross site share, which is not supported.
49
- */
50
- CrossSiteRequestNotSupported = -3,
51
- /**
52
- * The sharing operation failed due to an unknown error.
53
- */
54
- UnknowError = -4,
55
- /**
56
- * The text you typed is too long. Please shorten it.
57
- */
58
- EmailBodyTooLong = -5,
59
- /**
60
- * The maximum number of unique scopes in the list has been exceeded.
61
- */
62
- ListUniqueScopesExceeded = -6,
63
- /**
64
- * The share operation failed because a sharing capability is disabled in the site.
65
- */
66
- CapabilityDisabled = -7,
67
- /**
68
- * The specified object for the share operation is not supported.
69
- */
70
- ObjectNotSupported = -8,
71
- /**
72
- * A SharePoint group cannot contain another SharePoint group.
73
- */
74
- NestedGroupsNotSupported = -9
75
- }
76
- export declare enum SharingLinkKind {
77
- /**
78
- * Uninitialized link
79
- */
80
- Uninitialized = 0,
81
- /**
82
- * Direct link to the object being shared
83
- */
84
- Direct = 1,
85
- /**
86
- * Organization-shareable link to the object being shared with view permissions
87
- */
88
- OrganizationView = 2,
89
- /**
90
- * Organization-shareable link to the object being shared with edit permissions
91
- */
92
- OrganizationEdit = 3,
93
- /**
94
- * View only anonymous link
95
- */
96
- AnonymousView = 4,
97
- /**
98
- * Read/Write anonymous link
99
- */
100
- AnonymousEdit = 5,
101
- /**
102
- * Flexible sharing Link where properties can change without affecting link URL
103
- */
104
- Flexible = 6
105
- }
106
- export interface ISharedFuncs {
107
- /**
108
- * Gets a link suitable for sharing for this item
109
- *
110
- * @param kind The type of link to share
111
- * @param expiration The optional expiration date
112
- */
113
- getShareLink(kind: SharingLinkKind, expiration?: Date): Promise<IShareLinkResponse>;
114
- /**
115
- * Checks Permissions on the list of Users and returns back role the users have on the Item.
116
- *
117
- * @param recipients The array of Entities for which Permissions need to be checked.
118
- */
119
- checkSharingPermissions(recipients: ISharingRecipient[]): Promise<ISharingEntityPermission[]>;
120
- /**
121
- * Get Sharing Information.
122
- *
123
- * @param request The SharingInformationRequest Object.
124
- * @param expands Expand more fields.
125
- *
126
- */
127
- getSharingInformation(request?: ISharingInformationRequest, expands?: string[]): Promise<ISharingInformation>;
128
- /**
129
- * Gets the sharing settings of an item.
130
- *
131
- * @param useSimplifiedRoles Determines whether to use simplified roles.
132
- */
133
- getObjectSharingSettings(useSimplifiedRoles?: boolean): Promise<IObjectSharingSettings>;
134
- /**
135
- * Unshare this item
136
- */
137
- unshare(): Promise<ISharingResult>;
138
- /**
139
- * Deletes a sharing link by kind
140
- *
141
- * @param kind Deletes a sharing link by the kind of link
142
- */
143
- deleteSharingLinkByKind(kind: SharingLinkKind): Promise<void>;
144
- /**
145
- * Removes the specified link to the item.
146
- *
147
- * @param kind The kind of link to be deleted.
148
- * @param shareId
149
- */
150
- unshareLink(kind: SharingLinkKind, shareId?: string): Promise<void>;
151
- }
152
- export interface IShareObjectOptions {
153
- url?: string;
154
- loginNames?: string | string[];
155
- role: SharingRole;
156
- emailData?: ISharingEmailData;
157
- group?: RoleType;
158
- propagateAcl?: boolean;
159
- includeAnonymousLinkInEmail?: boolean;
160
- useSimplifiedRoles?: boolean;
161
- }
162
- /**
163
- * Represents email data.
164
- */
165
- export interface ISharingEmailData {
166
- /**
167
- * The e-mail subject.
168
- */
169
- subject?: string;
170
- /**
171
- * The e-mail body.
172
- */
173
- body: string;
174
- }
175
- export interface IShareLinkSettings {
176
- /**
177
- * The optional unique identifier of an existing sharing link to be retrieved and updated if necessary.
178
- */
179
- shareId?: string;
180
- /**
181
- * The kind of the sharing link to be created.
182
- */
183
- linkKind: SharingLinkKind;
184
- /**
185
- * A date/time string for which the format conforms to the ISO 8601:2004(E) complete representation for calendar date and time of day and
186
- * which represents the time and date of expiry for the anonymous link. Both the minutes and hour value must be specified for the
187
- * difference between the local and UTC time. Midnight is represented as 00:00:00.
188
- */
189
- expiration?: string;
190
- /**
191
- * The role to be used for the sharing link. This is required for Flexible links, and ignored for legacy link kinds.
192
- */
193
- role?: SharingRole;
194
- /**
195
- * Indicates if the sharing link, should support anonymous access. This is required for Flexible links, and ignored for legacy link kinds.
196
- */
197
- allowAnonymousAccess?: boolean;
198
- }
199
- export interface IShareLinkRequest {
200
- /**
201
- * A string of JSON representing users in people picker format. Only needed if an e-mail notification should be sent.
202
- */
203
- peoplePickerInput?: string;
204
- /**
205
- * Whether to create the link or not if it doesn't exist yet.
206
- */
207
- createLink: boolean;
208
- /**
209
- * The e-mail data. Only needed if an e-mail notification should be sent.
210
- */
211
- emailData?: ISharingEmailData;
212
- /**
213
- * The settings for the sharing link to be created/updated
214
- */
215
- settings: IShareLinkSettings;
216
- }
217
- /**
218
- * Represents a response for sharing a link
219
- */
220
- export interface IShareLinkResponse {
221
- /**
222
- * A SharingLinkInfo that represents the sharing link. Will be populated if sharing operation is returning a sharing link.
223
- */
224
- sharingLinkInfo: ISharingLinkInfo;
225
- }
226
- export interface ISharingLinkInfo {
227
- AllowsAnonymousAccess: boolean;
228
- Created: string;
229
- CreatedBy: IPrincipalInfo;
230
- Expiration: string;
231
- IsActive: boolean;
232
- IsEditLink: boolean;
233
- IsFormsLink: boolean;
234
- IsUnhealthy: boolean;
235
- LastModified: string;
236
- LastModifiedBy: IPrincipalInfo;
237
- LinkKind: SharingLinkKind;
238
- ShareId: string;
239
- Url: string;
240
- }
241
- export interface ISharingResult {
242
- /**
243
- * The relative URL of a page which can be navigated to, to show permissions.
244
- */
245
- PermissionsPageRelativeUrl?: string;
246
- /**
247
- * A collection of users which have new pending access requests as a result of sharing.
248
- */
249
- UsersWithAccessRequests?: any[];
250
- /**
251
- * An enumeration which summarizes the result of the sharing operation.
252
- */
253
- StatusCode?: SharingOperationStatusCode;
254
- /**
255
- * An error message about the failure if sharing was unsuccessful.
256
- */
257
- ErrorMessage?: string;
258
- /**
259
- * A list of UserSharingResults from attempting to share a securable with unique permissions.
260
- */
261
- UniquelyPermissionedUsers?: IUserSharingResult[];
262
- /**
263
- * Groups which were granted permissions.
264
- */
265
- GroupsSharedWith?: any[];
266
- /**
267
- * The SharePoint group users were added to, if any were added to a group.
268
- */
269
- GroupUsersAddedTo?: any;
270
- /**
271
- * A list of users being added to a SharePoint permissions goup
272
- */
273
- UsersAddedToGroup?: IUserSharingResult[];
274
- /**
275
- * A list of SPInvitationCreationResult for external users being invited to have access.
276
- */
277
- InvitedUsers?: IInvitationCreationResult[];
278
- /**
279
- * The name of the securable being shared.
280
- */
281
- Name?: string;
282
- /**
283
- * The url of the securable being shared.
284
- */
285
- Url?: string;
286
- /**
287
- * IconUrl
288
- */
289
- IconUrl?: string;
290
- }
291
- export interface IInvitationCreationResult {
292
- Succeeded?: boolean;
293
- Email?: string;
294
- InvitationLink?: string;
295
- }
296
- export interface IUserSharingResult {
297
- IsUserKnown?: boolean;
298
- Status?: boolean;
299
- Message?: string;
300
- User?: string;
301
- DisplayName?: string;
302
- Email?: string;
303
- CurrentRole?: SharingRole;
304
- AllowedRoles?: SharingRole[];
305
- InvitationLink?: string;
306
- }
307
- export interface ISharingRecipient {
308
- email?: string;
309
- alias?: string;
310
- }
311
- export interface ISharingEntityPermission {
312
- /**
313
- * The Input Entity provided to the Call.
314
- */
315
- inputEntity: string;
316
- /**
317
- * The Resolved Entity after resolving using PeoplePicker API.
318
- */
319
- resolvedEntity: string;
320
- /**
321
- * Does the Entity have Access to the Securable Object
322
- */
323
- hasAccess: boolean;
324
- /**
325
- * Role of the Entity on ListItem
326
- */
327
- role: SharingRole;
328
- }
329
- export interface ISharingInformationRequest {
330
- /**
331
- * Max Principal's to return.
332
- */
333
- maxPrincipalsToReturn: number;
334
- /**
335
- * Supported Features (For future use by Office Client).
336
- */
337
- clientSupportedFeatures: string;
338
- }
339
- export interface IObjectSharingSettings {
340
- /**
341
- * The URL pointing to the containing SPWeb object
342
- */
343
- WebUrl: string;
344
- /**
345
- * The unique ID of the parent list (if applicable)
346
- */
347
- ListId?: string;
348
- /**
349
- * The list item ID (if applicable)
350
- */
351
- ItemId?: string;
352
- /**
353
- * The object title
354
- */
355
- ItemName: string;
356
- /**
357
- * The server relative object URL
358
- */
359
- ItemUrl: string;
360
- /**
361
- * Contains information about the sharing state of a shareable object
362
- */
363
- ObjectSharingInformation: any;
364
- /**
365
- * Boolean indicating whether the sharing context operates under the access request mode
366
- */
367
- AccessRequestMode: boolean;
368
- /**
369
- * Boolean indicating whether the sharing context operates under the permissions only mode
370
- * (i.e. adding to a group or hiding the groups dropdown in the SharePoint UI)
371
- */
372
- PermissionsOnlyMode: boolean;
373
- /**
374
- * URL of the site from which the shared object inherits permissions
375
- */
376
- InheritingWebLink: string;
377
- /**
378
- * Boolean flag denoting if guest users are enabled for the site collection
379
- */
380
- ShareByEmailEnabled: boolean;
381
- /**
382
- * Boolean indicating whether the current user is a guest user
383
- */
384
- IsGuestUser: boolean;
385
- /**
386
- * Boolean indicating whether the site has the standard "Editor" role
387
- */
388
- HasEditRole: boolean;
389
- /**
390
- * Boolean indicating whether the site has the standard "Reader" role
391
- */
392
- HasReadRole: boolean;
393
- /**
394
- * Boolean indicating whether the object to share is a picture library
395
- */
396
- IsPictureLibrary: boolean;
397
- /**
398
- * Boolean indicating whether the folder object can be shared
399
- */
400
- CanShareFolder: boolean;
401
- /**
402
- * Boolean indicating whether email invitations can be sent
403
- */
404
- CanSendEmail: boolean;
405
- /**
406
- * Default share link type
407
- */
408
- DefaultShareLinkType: SharingLinkKind;
409
- /**
410
- * Boolean indicating whether the object to share supports ACL propagation
411
- */
412
- SupportsAclPropagation: boolean;
413
- /**
414
- * Boolean indicating whether the current user can only share within the tenancy
415
- */
416
- CanCurrentUserShareInternally: boolean;
417
- /**
418
- * Boolean indicating whether the current user can share outside the tenancy, by inviting external users
419
- */
420
- CanCurrentUserShareExternally: boolean;
421
- /**
422
- * Boolean indicating whether the current user can retrieve an anonymous View link, if one has already been created
423
- * If one has not been created, the user cannot create one
424
- */
425
- CanCurrentUserRetrieveReadonlyLink: boolean;
426
- /**
427
- * Boolean indicating whether the current user can create or disable an anonymous Edit link
428
- */
429
- CanCurrentUserManageReadonlyLink: boolean;
430
- /**
431
- * Boolean indicating whether the current user can retrieve an anonymous Edit link, if one has already been created
432
- * If one has not been created, the user cannot create one
433
- */
434
- CanCurrentUserRetrieveReadWriteLink: boolean;
435
- /**
436
- * Boolean indicating whether the current user can create or disable an anonymous Edit link
437
- */
438
- CanCurrentUserManageReadWriteLink: boolean;
439
- /**
440
- * Boolean indicating whether the current user can retrieve an organization View link, if one has already been created
441
- * If one has not been created, the user cannot create one
442
- */
443
- CanCurrentUserRetrieveOrganizationReadonlyLink: boolean;
444
- /**
445
- * Boolean indicating whether the current user can create or disable an organization Edit link
446
- */
447
- CanCurrentUserManageOrganizationReadonlyLink: boolean;
448
- /**
449
- * Boolean indicating whether the current user can retrieve an organization Edit link, if one has already been created
450
- * If one has not been created, the user cannot create one
451
- */
452
- CanCurrentUserRetrieveOrganizationReadWriteLink: boolean;
453
- /**
454
- * Boolean indicating whether the current user can create or disable an organization Edit link
455
- */
456
- CanCurrentUserManageOrganizationReadWriteLink: boolean;
457
- /**
458
- * Boolean indicating whether the current user can make use of Share-By-Link
459
- */
460
- CanSendLink: boolean;
461
- /**
462
- * Boolean indicating whether the client logic should warn the user
463
- * that they are about to share with external email addresses.
464
- */
465
- ShowExternalSharingWarning: boolean;
466
- /**
467
- * A list of SharingPermissionInformation objects that can be used to share
468
- */
469
- SharingPermissions: any[];
470
- /**
471
- * A dictionary object that lists the display name and the id of
472
- * the SharePoint simplified roles (edit, view)
473
- */
474
- SimplifiedRoles: {
475
- [key: string]: string;
476
- };
477
- /**
478
- * A dictionary object that lists the display name and the id of the SharePoint groups
479
- */
480
- GroupsList: {
481
- [key: string]: string;
482
- };
483
- /**
484
- * A dictionary object that lists the display name and the id of the SharePoint regular roles
485
- */
486
- Roles: {
487
- [key: string]: string;
488
- };
489
- /**
490
- * An object containing the SharePoint UI specific sharing settings.
491
- */
492
- SharePointSettings: any;
493
- /**
494
- * Boolean indicating whether the current user is a site collection administrator
495
- */
496
- IsUserSiteAdmin: boolean;
497
- /**
498
- * A value that indicates number of days an anonymous link can be valid before it expires
499
- */
500
- RequiredAnonymousLinkExpirationInDays: number;
501
- }
502
- export interface ISharingInformation {
503
- /**
504
- * External Sharing.
505
- */
506
- canAddExternalPrincipal?: boolean;
507
- /**
508
- * Internal Sharing.
509
- */
510
- canAddInternalPrincipal?: boolean;
511
- /**
512
- * Can Send Email.
513
- */
514
- canSendEmail?: boolean;
515
- /**
516
- * Can Use Simplified Roles present in Roles Enum.
517
- */
518
- canUseSimplifiedRoles?: boolean;
519
- /**
520
- * Has Unique Permissions.
521
- */
522
- hasUniquePermissions?: boolean;
523
- /**
524
- * Current Users Role on the Item.
525
- */
526
- currentRole?: SharingRole;
527
- /**
528
- * Does the User+Item require Approval from Admin for Sharing.
529
- */
530
- requiresAccessApproval?: boolean;
531
- /**
532
- * (Owners only)Whether there are pending access requests for the securable object.
533
- */
534
- hasPendingAccessRequests?: boolean;
535
- /**
536
- * (Owners only)The link to the access requests page for the securable object, or an empty string if the link is not available.
537
- */
538
- pendingAccessRequestsLink?: string;
539
- /**
540
- * sharedObjectType
541
- */
542
- sharedObjectType?: SPSharedObjectType;
543
- /**
544
- * Url for the Securable Object (Encoded).
545
- */
546
- directUrl?: string;
547
- /**
548
- * Parent Web Url for the Securable Object (Encoded).
549
- */
550
- webUrl?: string;
551
- /**
552
- * Default SharingLinkKind.
553
- */
554
- defaultLinkKind?: SharingLinkKind;
555
- /**
556
- * Tenant's SharingDomainRestrictionMode.
557
- */
558
- domainRestrictionMode?: SharingDomainRestrictionMode;
559
- /**
560
- * Tenant's RestrictedDomains.
561
- */
562
- RestrictedDomains?: string;
563
- /**
564
- * Tenant's Anonymous Link Expiration Restriction in Days.
565
- */
566
- anonymousLinkExpirationRestrictionDays?: number;
567
- /**
568
- * The PermissionCollection that are on the Securable Object (Princpals & Links)
569
- */
570
- permissionsInformation?: any;
571
- /**
572
- * PickerSettings used by the PeoplePicker Control.
573
- */
574
- pickerSettings?: any;
575
- }
576
- export declare enum RoleType {
577
- None = 0,
578
- Guest = 1,
579
- Reader = 2,
580
- Contributor = 3,
581
- WebDesigner = 4,
582
- Administrator = 5
583
- }
1
+ import { IPrincipalInfo } from "../types.js";
2
+ import { _Web } from "../webs/types.js";
3
+ import { _File } from "../files/types.js";
4
+ import { _Item } from "../items/types.js";
5
+ import { _Folder } from "../folders/types.js";
6
+ export declare type ShareableQueryable = _Web | _File | _Folder | _Item;
7
+ /**
8
+ * Indicates the role of the sharing link
9
+ */
10
+ export declare enum SharingRole {
11
+ None = 0,
12
+ View = 1,
13
+ Edit = 2,
14
+ Owner = 3
15
+ }
16
+ export declare enum SPSharedObjectType {
17
+ Unknown = 0,
18
+ File = 1,
19
+ Folder = 2,
20
+ Item = 3,
21
+ List = 4,
22
+ Web = 5,
23
+ Max = 6
24
+ }
25
+ export declare enum SharingDomainRestrictionMode {
26
+ None = 0,
27
+ AllowList = 1,
28
+ BlockList = 2
29
+ }
30
+ export declare enum SharingOperationStatusCode {
31
+ /**
32
+ * The share operation completed without errors.
33
+ */
34
+ CompletedSuccessfully = 0,
35
+ /**
36
+ * The share operation completed and generated requests for access.
37
+ */
38
+ AccessRequestsQueued = 1,
39
+ /**
40
+ * The share operation failed as there were no resolved users.
41
+ */
42
+ NoResolvedUsers = -1,
43
+ /**
44
+ * The share operation failed due to insufficient permissions.
45
+ */
46
+ AccessDenied = -2,
47
+ /**
48
+ * The share operation failed when attempting a cross site share, which is not supported.
49
+ */
50
+ CrossSiteRequestNotSupported = -3,
51
+ /**
52
+ * The sharing operation failed due to an unknown error.
53
+ */
54
+ UnknowError = -4,
55
+ /**
56
+ * The text you typed is too long. Please shorten it.
57
+ */
58
+ EmailBodyTooLong = -5,
59
+ /**
60
+ * The maximum number of unique scopes in the list has been exceeded.
61
+ */
62
+ ListUniqueScopesExceeded = -6,
63
+ /**
64
+ * The share operation failed because a sharing capability is disabled in the site.
65
+ */
66
+ CapabilityDisabled = -7,
67
+ /**
68
+ * The specified object for the share operation is not supported.
69
+ */
70
+ ObjectNotSupported = -8,
71
+ /**
72
+ * A SharePoint group cannot contain another SharePoint group.
73
+ */
74
+ NestedGroupsNotSupported = -9
75
+ }
76
+ export declare enum SharingLinkKind {
77
+ /**
78
+ * Uninitialized link
79
+ */
80
+ Uninitialized = 0,
81
+ /**
82
+ * Direct link to the object being shared
83
+ */
84
+ Direct = 1,
85
+ /**
86
+ * Organization-shareable link to the object being shared with view permissions
87
+ */
88
+ OrganizationView = 2,
89
+ /**
90
+ * Organization-shareable link to the object being shared with edit permissions
91
+ */
92
+ OrganizationEdit = 3,
93
+ /**
94
+ * View only anonymous link
95
+ */
96
+ AnonymousView = 4,
97
+ /**
98
+ * Read/Write anonymous link
99
+ */
100
+ AnonymousEdit = 5,
101
+ /**
102
+ * Flexible sharing Link where properties can change without affecting link URL
103
+ */
104
+ Flexible = 6
105
+ }
106
+ export interface ISharedFuncs {
107
+ /**
108
+ * Gets a link suitable for sharing for this item
109
+ *
110
+ * @param kind The type of link to share
111
+ * @param expiration The optional expiration date
112
+ */
113
+ getShareLink(kind: SharingLinkKind, expiration?: Date): Promise<IShareLinkResponse>;
114
+ /**
115
+ * Checks Permissions on the list of Users and returns back role the users have on the Item.
116
+ *
117
+ * @param recipients The array of Entities for which Permissions need to be checked.
118
+ */
119
+ checkSharingPermissions(recipients: ISharingRecipient[]): Promise<ISharingEntityPermission[]>;
120
+ /**
121
+ * Get Sharing Information.
122
+ *
123
+ * @param request The SharingInformationRequest Object.
124
+ * @param expands Expand more fields.
125
+ *
126
+ */
127
+ getSharingInformation(request?: ISharingInformationRequest, expands?: string[]): Promise<ISharingInformation>;
128
+ /**
129
+ * Gets the sharing settings of an item.
130
+ *
131
+ * @param useSimplifiedRoles Determines whether to use simplified roles.
132
+ */
133
+ getObjectSharingSettings(useSimplifiedRoles?: boolean): Promise<IObjectSharingSettings>;
134
+ /**
135
+ * Unshare this item
136
+ */
137
+ unshare(): Promise<ISharingResult>;
138
+ /**
139
+ * Deletes a sharing link by kind
140
+ *
141
+ * @param kind Deletes a sharing link by the kind of link
142
+ */
143
+ deleteSharingLinkByKind(kind: SharingLinkKind): Promise<void>;
144
+ /**
145
+ * Removes the specified link to the item.
146
+ *
147
+ * @param kind The kind of link to be deleted.
148
+ * @param shareId
149
+ */
150
+ unshareLink(kind: SharingLinkKind, shareId?: string): Promise<void>;
151
+ }
152
+ export interface IShareObjectOptions {
153
+ url?: string;
154
+ loginNames?: string | string[];
155
+ role: SharingRole;
156
+ emailData?: ISharingEmailData;
157
+ group?: RoleType;
158
+ propagateAcl?: boolean;
159
+ includeAnonymousLinkInEmail?: boolean;
160
+ useSimplifiedRoles?: boolean;
161
+ }
162
+ /**
163
+ * Represents email data.
164
+ */
165
+ export interface ISharingEmailData {
166
+ /**
167
+ * The e-mail subject.
168
+ */
169
+ subject?: string;
170
+ /**
171
+ * The e-mail body.
172
+ */
173
+ body: string;
174
+ }
175
+ export interface IShareLinkSettings {
176
+ /**
177
+ * The optional unique identifier of an existing sharing link to be retrieved and updated if necessary.
178
+ */
179
+ shareId?: string;
180
+ /**
181
+ * The kind of the sharing link to be created.
182
+ */
183
+ linkKind: SharingLinkKind;
184
+ /**
185
+ * A date/time string for which the format conforms to the ISO 8601:2004(E) complete representation for calendar date and time of day and
186
+ * which represents the time and date of expiry for the anonymous link. Both the minutes and hour value must be specified for the
187
+ * difference between the local and UTC time. Midnight is represented as 00:00:00.
188
+ */
189
+ expiration?: string;
190
+ /**
191
+ * The role to be used for the sharing link. This is required for Flexible links, and ignored for legacy link kinds.
192
+ */
193
+ role?: SharingRole;
194
+ /**
195
+ * Indicates if the sharing link, should support anonymous access. This is required for Flexible links, and ignored for legacy link kinds.
196
+ */
197
+ allowAnonymousAccess?: boolean;
198
+ }
199
+ export interface IShareLinkRequest {
200
+ /**
201
+ * A string of JSON representing users in people picker format. Only needed if an e-mail notification should be sent.
202
+ */
203
+ peoplePickerInput?: string;
204
+ /**
205
+ * Whether to create the link or not if it doesn't exist yet.
206
+ */
207
+ createLink: boolean;
208
+ /**
209
+ * The e-mail data. Only needed if an e-mail notification should be sent.
210
+ */
211
+ emailData?: ISharingEmailData;
212
+ /**
213
+ * The settings for the sharing link to be created/updated
214
+ */
215
+ settings: IShareLinkSettings;
216
+ }
217
+ /**
218
+ * Represents a response for sharing a link
219
+ */
220
+ export interface IShareLinkResponse {
221
+ /**
222
+ * A SharingLinkInfo that represents the sharing link. Will be populated if sharing operation is returning a sharing link.
223
+ */
224
+ sharingLinkInfo: ISharingLinkInfo;
225
+ }
226
+ export interface ISharingLinkInfo {
227
+ AllowsAnonymousAccess: boolean;
228
+ Created: string;
229
+ CreatedBy: IPrincipalInfo;
230
+ Expiration: string;
231
+ IsActive: boolean;
232
+ IsEditLink: boolean;
233
+ IsFormsLink: boolean;
234
+ IsUnhealthy: boolean;
235
+ LastModified: string;
236
+ LastModifiedBy: IPrincipalInfo;
237
+ LinkKind: SharingLinkKind;
238
+ ShareId: string;
239
+ Url: string;
240
+ }
241
+ export interface ISharingResult {
242
+ /**
243
+ * The relative URL of a page which can be navigated to, to show permissions.
244
+ */
245
+ PermissionsPageRelativeUrl?: string;
246
+ /**
247
+ * A collection of users which have new pending access requests as a result of sharing.
248
+ */
249
+ UsersWithAccessRequests?: any[];
250
+ /**
251
+ * An enumeration which summarizes the result of the sharing operation.
252
+ */
253
+ StatusCode?: SharingOperationStatusCode;
254
+ /**
255
+ * An error message about the failure if sharing was unsuccessful.
256
+ */
257
+ ErrorMessage?: string;
258
+ /**
259
+ * A list of UserSharingResults from attempting to share a securable with unique permissions.
260
+ */
261
+ UniquelyPermissionedUsers?: IUserSharingResult[];
262
+ /**
263
+ * Groups which were granted permissions.
264
+ */
265
+ GroupsSharedWith?: any[];
266
+ /**
267
+ * The SharePoint group users were added to, if any were added to a group.
268
+ */
269
+ GroupUsersAddedTo?: any;
270
+ /**
271
+ * A list of users being added to a SharePoint permissions goup
272
+ */
273
+ UsersAddedToGroup?: IUserSharingResult[];
274
+ /**
275
+ * A list of SPInvitationCreationResult for external users being invited to have access.
276
+ */
277
+ InvitedUsers?: IInvitationCreationResult[];
278
+ /**
279
+ * The name of the securable being shared.
280
+ */
281
+ Name?: string;
282
+ /**
283
+ * The url of the securable being shared.
284
+ */
285
+ Url?: string;
286
+ /**
287
+ * IconUrl
288
+ */
289
+ IconUrl?: string;
290
+ }
291
+ export interface IInvitationCreationResult {
292
+ Succeeded?: boolean;
293
+ Email?: string;
294
+ InvitationLink?: string;
295
+ }
296
+ export interface IUserSharingResult {
297
+ IsUserKnown?: boolean;
298
+ Status?: boolean;
299
+ Message?: string;
300
+ User?: string;
301
+ DisplayName?: string;
302
+ Email?: string;
303
+ CurrentRole?: SharingRole;
304
+ AllowedRoles?: SharingRole[];
305
+ InvitationLink?: string;
306
+ }
307
+ export interface ISharingRecipient {
308
+ email?: string;
309
+ alias?: string;
310
+ }
311
+ export interface ISharingEntityPermission {
312
+ /**
313
+ * The Input Entity provided to the Call.
314
+ */
315
+ inputEntity: string;
316
+ /**
317
+ * The Resolved Entity after resolving using PeoplePicker API.
318
+ */
319
+ resolvedEntity: string;
320
+ /**
321
+ * Does the Entity have Access to the Securable Object
322
+ */
323
+ hasAccess: boolean;
324
+ /**
325
+ * Role of the Entity on ListItem
326
+ */
327
+ role: SharingRole;
328
+ }
329
+ export interface ISharingInformationRequest {
330
+ /**
331
+ * Max Principal's to return.
332
+ */
333
+ maxPrincipalsToReturn: number;
334
+ /**
335
+ * Supported Features (For future use by Office Client).
336
+ */
337
+ clientSupportedFeatures: string;
338
+ }
339
+ export interface IObjectSharingSettings {
340
+ /**
341
+ * The URL pointing to the containing SPWeb object
342
+ */
343
+ WebUrl: string;
344
+ /**
345
+ * The unique ID of the parent list (if applicable)
346
+ */
347
+ ListId?: string;
348
+ /**
349
+ * The list item ID (if applicable)
350
+ */
351
+ ItemId?: string;
352
+ /**
353
+ * The object title
354
+ */
355
+ ItemName: string;
356
+ /**
357
+ * The server relative object URL
358
+ */
359
+ ItemUrl: string;
360
+ /**
361
+ * Contains information about the sharing state of a shareable object
362
+ */
363
+ ObjectSharingInformation: any;
364
+ /**
365
+ * Boolean indicating whether the sharing context operates under the access request mode
366
+ */
367
+ AccessRequestMode: boolean;
368
+ /**
369
+ * Boolean indicating whether the sharing context operates under the permissions only mode
370
+ * (i.e. adding to a group or hiding the groups dropdown in the SharePoint UI)
371
+ */
372
+ PermissionsOnlyMode: boolean;
373
+ /**
374
+ * URL of the site from which the shared object inherits permissions
375
+ */
376
+ InheritingWebLink: string;
377
+ /**
378
+ * Boolean flag denoting if guest users are enabled for the site collection
379
+ */
380
+ ShareByEmailEnabled: boolean;
381
+ /**
382
+ * Boolean indicating whether the current user is a guest user
383
+ */
384
+ IsGuestUser: boolean;
385
+ /**
386
+ * Boolean indicating whether the site has the standard "Editor" role
387
+ */
388
+ HasEditRole: boolean;
389
+ /**
390
+ * Boolean indicating whether the site has the standard "Reader" role
391
+ */
392
+ HasReadRole: boolean;
393
+ /**
394
+ * Boolean indicating whether the object to share is a picture library
395
+ */
396
+ IsPictureLibrary: boolean;
397
+ /**
398
+ * Boolean indicating whether the folder object can be shared
399
+ */
400
+ CanShareFolder: boolean;
401
+ /**
402
+ * Boolean indicating whether email invitations can be sent
403
+ */
404
+ CanSendEmail: boolean;
405
+ /**
406
+ * Default share link type
407
+ */
408
+ DefaultShareLinkType: SharingLinkKind;
409
+ /**
410
+ * Boolean indicating whether the object to share supports ACL propagation
411
+ */
412
+ SupportsAclPropagation: boolean;
413
+ /**
414
+ * Boolean indicating whether the current user can only share within the tenancy
415
+ */
416
+ CanCurrentUserShareInternally: boolean;
417
+ /**
418
+ * Boolean indicating whether the current user can share outside the tenancy, by inviting external users
419
+ */
420
+ CanCurrentUserShareExternally: boolean;
421
+ /**
422
+ * Boolean indicating whether the current user can retrieve an anonymous View link, if one has already been created
423
+ * If one has not been created, the user cannot create one
424
+ */
425
+ CanCurrentUserRetrieveReadonlyLink: boolean;
426
+ /**
427
+ * Boolean indicating whether the current user can create or disable an anonymous Edit link
428
+ */
429
+ CanCurrentUserManageReadonlyLink: boolean;
430
+ /**
431
+ * Boolean indicating whether the current user can retrieve an anonymous Edit link, if one has already been created
432
+ * If one has not been created, the user cannot create one
433
+ */
434
+ CanCurrentUserRetrieveReadWriteLink: boolean;
435
+ /**
436
+ * Boolean indicating whether the current user can create or disable an anonymous Edit link
437
+ */
438
+ CanCurrentUserManageReadWriteLink: boolean;
439
+ /**
440
+ * Boolean indicating whether the current user can retrieve an organization View link, if one has already been created
441
+ * If one has not been created, the user cannot create one
442
+ */
443
+ CanCurrentUserRetrieveOrganizationReadonlyLink: boolean;
444
+ /**
445
+ * Boolean indicating whether the current user can create or disable an organization Edit link
446
+ */
447
+ CanCurrentUserManageOrganizationReadonlyLink: boolean;
448
+ /**
449
+ * Boolean indicating whether the current user can retrieve an organization Edit link, if one has already been created
450
+ * If one has not been created, the user cannot create one
451
+ */
452
+ CanCurrentUserRetrieveOrganizationReadWriteLink: boolean;
453
+ /**
454
+ * Boolean indicating whether the current user can create or disable an organization Edit link
455
+ */
456
+ CanCurrentUserManageOrganizationReadWriteLink: boolean;
457
+ /**
458
+ * Boolean indicating whether the current user can make use of Share-By-Link
459
+ */
460
+ CanSendLink: boolean;
461
+ /**
462
+ * Boolean indicating whether the client logic should warn the user
463
+ * that they are about to share with external email addresses.
464
+ */
465
+ ShowExternalSharingWarning: boolean;
466
+ /**
467
+ * A list of SharingPermissionInformation objects that can be used to share
468
+ */
469
+ SharingPermissions: any[];
470
+ /**
471
+ * A dictionary object that lists the display name and the id of
472
+ * the SharePoint simplified roles (edit, view)
473
+ */
474
+ SimplifiedRoles: {
475
+ [key: string]: string;
476
+ };
477
+ /**
478
+ * A dictionary object that lists the display name and the id of the SharePoint groups
479
+ */
480
+ GroupsList: {
481
+ [key: string]: string;
482
+ };
483
+ /**
484
+ * A dictionary object that lists the display name and the id of the SharePoint regular roles
485
+ */
486
+ Roles: {
487
+ [key: string]: string;
488
+ };
489
+ /**
490
+ * An object containing the SharePoint UI specific sharing settings.
491
+ */
492
+ SharePointSettings: any;
493
+ /**
494
+ * Boolean indicating whether the current user is a site collection administrator
495
+ */
496
+ IsUserSiteAdmin: boolean;
497
+ /**
498
+ * A value that indicates number of days an anonymous link can be valid before it expires
499
+ */
500
+ RequiredAnonymousLinkExpirationInDays: number;
501
+ }
502
+ export interface ISharingInformation {
503
+ /**
504
+ * External Sharing.
505
+ */
506
+ canAddExternalPrincipal?: boolean;
507
+ /**
508
+ * Internal Sharing.
509
+ */
510
+ canAddInternalPrincipal?: boolean;
511
+ /**
512
+ * Can Send Email.
513
+ */
514
+ canSendEmail?: boolean;
515
+ /**
516
+ * Can Use Simplified Roles present in Roles Enum.
517
+ */
518
+ canUseSimplifiedRoles?: boolean;
519
+ /**
520
+ * Has Unique Permissions.
521
+ */
522
+ hasUniquePermissions?: boolean;
523
+ /**
524
+ * Current Users Role on the Item.
525
+ */
526
+ currentRole?: SharingRole;
527
+ /**
528
+ * Does the User+Item require Approval from Admin for Sharing.
529
+ */
530
+ requiresAccessApproval?: boolean;
531
+ /**
532
+ * (Owners only)Whether there are pending access requests for the securable object.
533
+ */
534
+ hasPendingAccessRequests?: boolean;
535
+ /**
536
+ * (Owners only)The link to the access requests page for the securable object, or an empty string if the link is not available.
537
+ */
538
+ pendingAccessRequestsLink?: string;
539
+ /**
540
+ * sharedObjectType
541
+ */
542
+ sharedObjectType?: SPSharedObjectType;
543
+ /**
544
+ * Url for the Securable Object (Encoded).
545
+ */
546
+ directUrl?: string;
547
+ /**
548
+ * Parent Web Url for the Securable Object (Encoded).
549
+ */
550
+ webUrl?: string;
551
+ /**
552
+ * Default SharingLinkKind.
553
+ */
554
+ defaultLinkKind?: SharingLinkKind;
555
+ /**
556
+ * Tenant's SharingDomainRestrictionMode.
557
+ */
558
+ domainRestrictionMode?: SharingDomainRestrictionMode;
559
+ /**
560
+ * Tenant's RestrictedDomains.
561
+ */
562
+ RestrictedDomains?: string;
563
+ /**
564
+ * Tenant's Anonymous Link Expiration Restriction in Days.
565
+ */
566
+ anonymousLinkExpirationRestrictionDays?: number;
567
+ /**
568
+ * The PermissionCollection that are on the Securable Object (Princpals & Links)
569
+ */
570
+ permissionsInformation?: any;
571
+ /**
572
+ * PickerSettings used by the PeoplePicker Control.
573
+ */
574
+ pickerSettings?: any;
575
+ }
576
+ export declare enum RoleType {
577
+ None = 0,
578
+ Guest = 1,
579
+ Reader = 2,
580
+ Contributor = 3,
581
+ WebDesigner = 4,
582
+ Administrator = 5
583
+ }
584
584
  //# sourceMappingURL=types.d.ts.map