@lindle/sharepoint_requests 0.1.19 → 0.1.20

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 (49) hide show
  1. package/dist/index.d.mts +469 -0
  2. package/dist/index.d.ts +460 -8
  3. package/dist/index.js +892 -5
  4. package/dist/index.js.map +1 -0
  5. package/dist/index.mjs +863 -0
  6. package/dist/index.mjs.map +1 -0
  7. package/package.json +5 -5
  8. package/src/root/index.ts +29 -9
  9. package/src/root/instance.ts +7 -0
  10. package/src/root/internal/context.ts +0 -1
  11. package/src/root/internal/digest.ts +16 -10
  12. package/src/root/internal/emailRequests.ts +2 -5
  13. package/src/root/internal/listRequests/createAttachment.ts +2 -2
  14. package/src/root/internal/listRequests/createListItem.ts +3 -18
  15. package/src/root/internal/listRequests/deleteFile.ts +1 -2
  16. package/src/root/internal/listRequests/deleteItem.ts +1 -1
  17. package/src/root/internal/listRequests/getListItems.ts +34 -7
  18. package/src/root/internal/listRequests/resolveMetadataType.ts +14 -0
  19. package/src/root/internal/listRequests/updateListItem.ts +3 -19
  20. package/src/root/internal/listRequests/uploadFile.ts +8 -13
  21. package/src/root/internal/userRequests.ts +52 -28
  22. package/src/types.ts +3 -2
  23. package/dist/root/index.d.ts +0 -163
  24. package/dist/root/instance.d.ts +0 -3
  25. package/dist/root/internal/context.d.ts +0 -11
  26. package/dist/root/internal/digest.d.ts +0 -2
  27. package/dist/root/internal/emailRequests.d.ts +0 -10
  28. package/dist/root/internal/listRequests/createAttachment.d.ts +0 -3
  29. package/dist/root/internal/listRequests/createListItem.d.ts +0 -3
  30. package/dist/root/internal/listRequests/deleteFile.d.ts +0 -3
  31. package/dist/root/internal/listRequests/deleteItem.d.ts +0 -3
  32. package/dist/root/internal/listRequests/getFiles.d.ts +0 -8
  33. package/dist/root/internal/listRequests/getListItems.d.ts +0 -8
  34. package/dist/root/internal/listRequests/getOnly.d.ts +0 -3
  35. package/dist/root/internal/listRequests/index.d.ts +0 -9
  36. package/dist/root/internal/listRequests/normalizePayload.d.ts +0 -4
  37. package/dist/root/internal/listRequests/updateListItem.d.ts +0 -3
  38. package/dist/root/internal/listRequests/uploadFile.d.ts +0 -6
  39. package/dist/root/internal/listRequests/utils.d.ts +0 -2
  40. package/dist/root/internal/odata.d.ts +0 -5
  41. package/dist/root/internal/sharepointUrl.d.ts +0 -2
  42. package/dist/root/internal/userRequests.d.ts +0 -15
  43. package/dist/sharepoint_requests.cjs.development.js +0 -1497
  44. package/dist/sharepoint_requests.cjs.development.js.map +0 -1
  45. package/dist/sharepoint_requests.cjs.production.min.js +0 -2
  46. package/dist/sharepoint_requests.cjs.production.min.js.map +0 -1
  47. package/dist/sharepoint_requests.esm.js +0 -1490
  48. package/dist/sharepoint_requests.esm.js.map +0 -1
  49. package/dist/types.d.ts +0 -260
@@ -1,14 +1,28 @@
1
1
  import { AxiosInstance } from 'axios';
2
- import { PersonField, UserPermision, UserProfile } from '../../types';
2
+ import { PermissionLabel, PersonField, UserPermision, UserProfile } from '../../types';
3
3
  import { RequestContext } from './context';
4
4
  import { escapeODataStringLiteral } from './sharepointUrl';
5
5
 
6
6
  type RoleDefinition = {
7
+ Name: string;
8
+ Description: string;
9
+ Hidden: boolean;
10
+ Id: number;
11
+ Order: number;
12
+ RoleTypeKind: number;
7
13
  BasePermissions: {
8
14
  High: string;
15
+ Low: string;
9
16
  };
10
17
  };
11
18
 
19
+ const PERMISSION_PRIORITY: PermissionLabel[] = [
20
+ 'Full Control',
21
+ 'Edit',
22
+ 'Contribute',
23
+ 'Read',
24
+ ];
25
+
12
26
  export async function typeAhead(
13
27
  instance: AxiosInstance,
14
28
  input: string,
@@ -70,24 +84,19 @@ export async function currentUserProperties(
70
84
  instance: AxiosInstance
71
85
  ): Promise<UserProfile> {
72
86
  const requestUrl = '_api/sp.userprofiles.peoplemanager/getmyproperties';
73
- let profile: any = await instance.get(requestUrl);
87
+ const response = await instance.get(requestUrl);
74
88
 
75
- profile = profile.data.d;
89
+ const profile = (response.data?.d ?? response.data) as UserProfile | undefined;
90
+ if (!profile) {
91
+ throw new Error('Unable to retrieve user profile.');
92
+ }
76
93
 
77
- profile.UserProfileProperties.results.forEach(
94
+ profile.UserProfileProperties?.results?.forEach(
78
95
  (prop: { Key: string; Value: string }) => {
79
- if (prop.Key === 'FirstName') {
80
- profile.FirstName = prop.Value;
81
- }
82
- if (prop.Key === 'LastName') {
83
- profile.LastName = prop.Value;
84
- }
85
- if (prop.Key === 'Country') {
86
- profile.Country = prop.Value;
87
- }
88
- if (prop.Key === 'UserName') {
89
- profile.UserName = prop.Value;
90
- }
96
+ if (prop.Key === 'FirstName') profile.FirstName = prop.Value;
97
+ else if (prop.Key === 'LastName') profile.LastName = prop.Value;
98
+ else if (prop.Key === 'Country') profile.Country = prop.Value;
99
+ else if (prop.Key === 'UserName') profile.UserName = prop.Value;
91
100
  }
92
101
  );
93
102
 
@@ -109,33 +118,48 @@ export async function getSiteUser(
109
118
  return response.data.d;
110
119
  }
111
120
 
112
- export async function roleDefinitions(instance: AxiosInstance) {
113
- const requestUrl = `_api/Web/RoleDefinitions`;
114
- const response = await instance.get(requestUrl);
121
+ async function roleDefinitions(instance: AxiosInstance): Promise<RoleDefinition[]> {
122
+ const response = await instance.get('_api/Web/RoleDefinitions');
115
123
  return response.data.d.results as RoleDefinition[];
116
124
  }
117
125
 
118
- export async function getEffectiveBasePermissions(instance: AxiosInstance) {
119
- const requestUrl = `_api/Web/effectiveBasePermissions`;
120
- const response = await instance.get(requestUrl);
126
+ async function getEffectiveBasePermissions(
127
+ instance: AxiosInstance
128
+ ): Promise<{ High: string; Low: string }> {
129
+ const response = await instance.get('_api/Web/effectiveBasePermissions');
121
130
  return response.data.d.EffectiveBasePermissions;
122
131
  }
123
132
 
124
133
  export async function currentUserPermissions(
125
134
  context: RequestContext
126
135
  ): Promise<UserPermision> {
127
- const { High } = await getEffectiveBasePermissions(context.instance);
136
+ const { High: userHigh, Low: userLow } = await getEffectiveBasePermissions(
137
+ context.instance
138
+ );
128
139
  const definitions = await roleDefinitions(context.instance);
129
140
 
130
- const result = definitions.find(
131
- ({ BasePermissions }: RoleDefinition) => BasePermissions.High === High
132
- );
141
+ const userHighInt = parseInt(userHigh, 10);
142
+ const userLowInt = parseInt(userLow, 10);
143
+
144
+ const matching = definitions
145
+ .filter((def): def is RoleDefinition =>
146
+ PERMISSION_PRIORITY.includes(def.Name as PermissionLabel) &&
147
+ (userHighInt & parseInt(def.BasePermissions.High, 10)) === parseInt(def.BasePermissions.High, 10) &&
148
+ (userLowInt & parseInt(def.BasePermissions.Low, 10)) === parseInt(def.BasePermissions.Low, 10)
149
+ )
150
+ .sort(
151
+ (a, b) =>
152
+ PERMISSION_PRIORITY.indexOf(a.Name as PermissionLabel) -
153
+ PERMISSION_PRIORITY.indexOf(b.Name as PermissionLabel)
154
+ );
155
+
156
+ const result = matching[0];
133
157
 
134
158
  if (!result) {
135
159
  throw new Error(
136
- `Unable to resolve current user permission for BasePermissions.High="${High}".`
160
+ `Unable to resolve current user permission. Effective: High="${userHigh}", Low="${userLow}"`
137
161
  );
138
162
  }
139
163
 
140
- return result as UserPermision;
164
+ return result as unknown as UserPermision;
141
165
  }
package/src/types.ts CHANGED
@@ -238,7 +238,7 @@ export type MultiPersonField = {
238
238
 
239
239
  export type PermissionLabel = 'Full Control' | 'Edit' | 'Contribute' | 'Read';
240
240
 
241
- export type UserPermision = {
241
+ export type UserPermission = {
242
242
  BasePermissions: {
243
243
  High: string;
244
244
  Low: string;
@@ -255,7 +255,8 @@ export type UserPermision = {
255
255
  __metadata: Metadata;
256
256
  };
257
257
 
258
- export type UserPermission = UserPermision;
258
+ /** @deprecated Use `UserPermission` instead. */
259
+ export type UserPermision = UserPermission;
259
260
 
260
261
  export type CurrentUser = {
261
262
  Email: string;
@@ -1,163 +0,0 @@
1
- import { CreateAxiosDefaults as AxiosConfig } from 'axios';
2
- import { CreateFileProps, CurrentUser, DeleteFileProps, EmailProps, Field_Options, Folder_Options, ItemID, ListData, Options, PersonField, SHAREPOINT_VER, UploadFileProps, UserPermision, UserProfile } from '../types';
3
- import { sendEmail as sendEmailRequest } from './internal/emailRequests';
4
- type ListKey<T extends {
5
- LISTS: Record<string, unknown>;
6
- }> = Extract<keyof T['LISTS'], string>;
7
- type EmailApi = ((from: string, to: string[] | string, subject: string | undefined, body: string) => ReturnType<typeof sendEmailRequest>) & {
8
- send: (props: EmailProps) => ReturnType<typeof sendEmailRequest>;
9
- };
10
- declare class HTTPSharePointRequests<T extends {
11
- LISTS: Record<string, unknown>;
12
- FOLDERS?: Record<string, unknown>;
13
- }> {
14
- private readonly baseURL;
15
- private readonly instance;
16
- private readonly listItemEntityTypeCache;
17
- readonly email: EmailApi;
18
- constructor(baseURL: string, config?: AxiosConfig);
19
- private createContext;
20
- private resolveListItemEntityTypeFullName;
21
- private buildListScope;
22
- /**
23
- * @deprecated Use `from(listName, '2010')` instead.
24
- */
25
- list<K extends ListKey<T>>(listName: K): {
26
- create: (data: ListData<T["LISTS"][K]>) => Promise<import("axios").AxiosResponse<any, any, {}>>;
27
- get: (options?: Options<T["LISTS"][K], "2010">) => Promise<{
28
- data: (T["LISTS"][K] & Partial<import("../types").SPItem2010>) | (T["LISTS"][K] & Partial<import("../types").SPItem2010>)[];
29
- meta: {
30
- url: URL;
31
- };
32
- }>;
33
- update: (id: ItemID, data: ListData<T["LISTS"][K]>, digest?: string) => Promise<import("axios").AxiosResponse<any, any, {}>>;
34
- delete: (id: ItemID) => Promise<import("axios").AxiosResponse<any, any, {}>>;
35
- remove: (id: ItemID) => Promise<import("axios").AxiosResponse<any, any, {}>>;
36
- createFile: (props: CreateFileProps) => Promise<import("axios").AxiosResponse<any, any, {}>>;
37
- uploadFile: (props: UploadFileProps) => Promise<import("axios").AxiosResponse<any, any, {}> & {
38
- itemId?: ItemID;
39
- }>;
40
- deleteFile: (props: DeleteFileProps) => Promise<import("axios").AxiosResponse<any, any, {}>>;
41
- removeFile: (props: DeleteFileProps) => Promise<import("axios").AxiosResponse<any, any, {}>>;
42
- fields: (options?: Field_Options<T["LISTS"][K], "2010">) => {
43
- get: () => Promise<any>;
44
- };
45
- items: {
46
- create: (data: ListData<T["LISTS"][K]>) => Promise<import("axios").AxiosResponse<any, any, {}>>;
47
- get: (options?: Options<T["LISTS"][K], "2010">) => Promise<{
48
- data: (T["LISTS"][K] & Partial<import("../types").SPItem2010>) | (T["LISTS"][K] & Partial<import("../types").SPItem2010>)[];
49
- meta: {
50
- url: URL;
51
- };
52
- }>;
53
- update: (id: ItemID, data: ListData<T["LISTS"][K]>, digest?: string) => Promise<import("axios").AxiosResponse<any, any, {}>>;
54
- delete: (id: ItemID) => Promise<import("axios").AxiosResponse<any, any, {}>>;
55
- remove: (id: ItemID) => Promise<import("axios").AxiosResponse<any, any, {}>>;
56
- };
57
- files: {
58
- attach: (props: CreateFileProps) => Promise<import("axios").AxiosResponse<any, any, {}>>;
59
- upload: (props: UploadFileProps) => Promise<import("axios").AxiosResponse<any, any, {}> & {
60
- itemId?: ItemID;
61
- }>;
62
- delete: (props: DeleteFileProps) => Promise<import("axios").AxiosResponse<any, any, {}>>;
63
- remove: (props: DeleteFileProps) => Promise<import("axios").AxiosResponse<any, any, {}>>;
64
- };
65
- };
66
- from<K extends ListKey<T>, V extends SHAREPOINT_VER = '2013'>(listName: K, sharepointVersion?: V): {
67
- create: (data: ListData<T["LISTS"][K]>) => Promise<import("axios").AxiosResponse<any, any, {}>>;
68
- get: (options?: Options<T["LISTS"][K], V>) => Promise<{
69
- data: (T["LISTS"][K] & Partial<import("../types").SPItem<V>>) | (T["LISTS"][K] & Partial<import("../types").SPItem<V>>)[];
70
- meta: {
71
- url: URL;
72
- };
73
- }>;
74
- update: (id: ItemID, data: ListData<T["LISTS"][K]>, digest?: string) => Promise<import("axios").AxiosResponse<any, any, {}>>;
75
- delete: (id: ItemID) => Promise<import("axios").AxiosResponse<any, any, {}>>;
76
- remove: (id: ItemID) => Promise<import("axios").AxiosResponse<any, any, {}>>;
77
- createFile: (props: CreateFileProps) => Promise<import("axios").AxiosResponse<any, any, {}>>;
78
- uploadFile: (props: UploadFileProps) => Promise<import("axios").AxiosResponse<any, any, {}> & {
79
- itemId?: ItemID;
80
- }>;
81
- deleteFile: (props: DeleteFileProps) => Promise<import("axios").AxiosResponse<any, any, {}>>;
82
- removeFile: (props: DeleteFileProps) => Promise<import("axios").AxiosResponse<any, any, {}>>;
83
- fields: (options?: Field_Options<T["LISTS"][K], V>) => {
84
- get: () => Promise<any>;
85
- };
86
- items: {
87
- create: (data: ListData<T["LISTS"][K]>) => Promise<import("axios").AxiosResponse<any, any, {}>>;
88
- get: (options?: Options<T["LISTS"][K], V>) => Promise<{
89
- data: (T["LISTS"][K] & Partial<import("../types").SPItem<V>>) | (T["LISTS"][K] & Partial<import("../types").SPItem<V>>)[];
90
- meta: {
91
- url: URL;
92
- };
93
- }>;
94
- update: (id: ItemID, data: ListData<T["LISTS"][K]>, digest?: string) => Promise<import("axios").AxiosResponse<any, any, {}>>;
95
- delete: (id: ItemID) => Promise<import("axios").AxiosResponse<any, any, {}>>;
96
- remove: (id: ItemID) => Promise<import("axios").AxiosResponse<any, any, {}>>;
97
- };
98
- files: {
99
- attach: (props: CreateFileProps) => Promise<import("axios").AxiosResponse<any, any, {}>>;
100
- upload: (props: UploadFileProps) => Promise<import("axios").AxiosResponse<any, any, {}> & {
101
- itemId?: ItemID;
102
- }>;
103
- delete: (props: DeleteFileProps) => Promise<import("axios").AxiosResponse<any, any, {}>>;
104
- remove: (props: DeleteFileProps) => Promise<import("axios").AxiosResponse<any, any, {}>>;
105
- };
106
- };
107
- field<K extends ListKey<T>, V extends SHAREPOINT_VER = '2013'>(listName: K, fieldName?: Extract<keyof T['LISTS'][K], string>, sharepointVersion?: V): Promise<any>;
108
- lists(options?: Options<Record<string, unknown>, '2013'>): {
109
- get: () => Promise<{
110
- data: (Record<string, unknown> & Partial<import("../types").SPItem2013>) | (Record<string, unknown> & Partial<import("../types").SPItem2013>)[];
111
- meta: {
112
- url: URL;
113
- };
114
- }>;
115
- };
116
- getDigest(): Promise<string>;
117
- folders(options?: Folder_Options<Record<string, unknown>>): {
118
- get: () => Promise<{
119
- data: any;
120
- meta: {
121
- url: URL;
122
- };
123
- }>;
124
- };
125
- folder(folderName?: string | string[]): {
126
- get: (options?: Folder_Options<Record<string, unknown>>) => Promise<{
127
- data: any;
128
- meta: {
129
- url: URL;
130
- };
131
- }>;
132
- };
133
- users(options?: Options<Record<string, unknown>, '2013'>): {
134
- get: () => Promise<{
135
- data: (Record<string, unknown> & Partial<import("../types").SPItem2013>) | (Record<string, unknown> & Partial<import("../types").SPItem2013>)[];
136
- meta: {
137
- url: URL;
138
- };
139
- }>;
140
- };
141
- sendEmail(props: EmailProps): Promise<import("axios").AxiosResponse<{
142
- d: {
143
- SendEmail: null;
144
- };
145
- }, any, {}>>;
146
- readonly user: {
147
- properties: () => {
148
- get: () => Promise<UserProfile>;
149
- };
150
- searchSiteUser: (searchValue: string) => Promise<any>;
151
- searchUser: (input: string, filter?: string) => Promise<PersonField>;
152
- current: () => {
153
- get: () => Promise<CurrentUser>;
154
- };
155
- currentPermission: () => {
156
- get: () => Promise<UserPermision>;
157
- };
158
- };
159
- getCurrentUser(): Promise<CurrentUser>;
160
- currentUserProperties(): Promise<UserProfile>;
161
- currentUserPermission(): Promise<UserPermision>;
162
- }
163
- export default HTTPSharePointRequests;
@@ -1,3 +0,0 @@
1
- import { CreateAxiosDefaults as AxiosConfig } from 'axios';
2
- export declare const instance: (baseURL: string, config?: AxiosConfig) => import("axios").AxiosInstance;
3
- export default instance;
@@ -1,11 +0,0 @@
1
- import { AxiosInstance } from 'axios';
2
- import { SHAREPOINT_VER } from '../../types';
3
- export interface RequestContext<V extends SHAREPOINT_VER = '2013'> {
4
- instance: AxiosInstance;
5
- baseURL: string;
6
- endpoint: string;
7
- listName: string;
8
- sharepointVersion: V;
9
- listItemEntityTypeFullName?: string;
10
- resolveListItemEntityType?: () => Promise<string>;
11
- }
@@ -1,2 +0,0 @@
1
- import { AxiosInstance } from 'axios';
2
- export declare function fetchDigest(instance: AxiosInstance, baseURL: string): Promise<string>;
@@ -1,10 +0,0 @@
1
- import { AxiosResponse } from 'axios';
2
- import { EmailProps } from '../../types';
3
- import { RequestContext } from './context';
4
- type SendEmailResponse = AxiosResponse<{
5
- d: {
6
- SendEmail: null;
7
- };
8
- }>;
9
- export declare function sendEmail(context: RequestContext, { From, To, Subject, Body }: EmailProps): Promise<SendEmailResponse>;
10
- export {};
@@ -1,3 +0,0 @@
1
- import { CreateFileProps, SHAREPOINT_VER } from '../../../types';
2
- import { RequestContext } from '../context';
3
- export declare function createAttachment<V extends SHAREPOINT_VER = '2013'>(context: RequestContext<V>, { file, itemId }: CreateFileProps): Promise<import("axios").AxiosResponse<any, any, {}>>;
@@ -1,3 +0,0 @@
1
- import { ListData, SHAREPOINT_VER } from '../../../types';
2
- import { RequestContext } from '../context';
3
- export declare function createListItem<D = Record<string, unknown>, V extends SHAREPOINT_VER = '2013'>(context: RequestContext<V>, listData: ListData<D>): Promise<import("axios").AxiosResponse<any, any, {}>>;
@@ -1,3 +0,0 @@
1
- import { SHAREPOINT_VER, DeleteFileProps } from '../../../types';
2
- import { RequestContext } from '../context';
3
- export declare function deleteFile<V extends SHAREPOINT_VER = '2013'>(context: RequestContext<V>, { fileName, folderPath }: DeleteFileProps): Promise<import("axios").AxiosResponse<any, any, {}>>;
@@ -1,3 +0,0 @@
1
- import { SHAREPOINT_VER } from '../../../types';
2
- import { RequestContext } from '../context';
3
- export declare function deleteItem<V extends SHAREPOINT_VER = '2013'>(context: RequestContext<V>, id: number | string): Promise<import("axios").AxiosResponse<any, any, {}>>;
@@ -1,8 +0,0 @@
1
- import { Folder_Options, SHAREPOINT_VER } from '../../../types';
2
- import { RequestContext } from '../context';
3
- export declare function getFiles<T, V extends SHAREPOINT_VER = '2013'>(context: RequestContext<V>, options?: Folder_Options<T>): Promise<{
4
- data: any;
5
- meta: {
6
- url: URL;
7
- };
8
- }>;
@@ -1,8 +0,0 @@
1
- import { Options, SPItem, SHAREPOINT_VER } from '../../../types';
2
- import { RequestContext } from '../context';
3
- export declare function getListItems<K, V extends SHAREPOINT_VER = '2013'>(context: RequestContext<V>, options?: Options<K, V>): Promise<{
4
- data: (K & Partial<SPItem<V>>) | (K & Partial<SPItem<V>>)[] | undefined;
5
- meta: {
6
- url: URL;
7
- };
8
- }>;
@@ -1,3 +0,0 @@
1
- import { AxiosInstance } from 'axios';
2
- import { Options, SHAREPOINT_VER } from '../../../types';
3
- export declare function getOnly<T, V extends SHAREPOINT_VER = '2013'>(instance: AxiosInstance, endpoint: string, options?: Options<T, V>): Promise<any>;
@@ -1,9 +0,0 @@
1
- export { createListItem } from './createListItem';
2
- export { createAttachment } from './createAttachment';
3
- export { deleteItem } from './deleteItem';
4
- export { deleteFile } from './deleteFile';
5
- export { getFiles } from './getFiles';
6
- export { getListItems } from './getListItems';
7
- export { getOnly } from './getOnly';
8
- export { updateListItem } from './updateListItem';
9
- export { uploadFile } from './uploadFile';
@@ -1,4 +0,0 @@
1
- import { ListData } from '../../../types';
2
- type AnyRecord = Record<string, unknown>;
3
- export declare function normalizeListPayload<D = Record<string, unknown>>(data: ListData<D>): AnyRecord;
4
- export {};
@@ -1,3 +0,0 @@
1
- import { ListData, SHAREPOINT_VER } from '../../../types';
2
- import { RequestContext } from '../context';
3
- export declare function updateListItem<D = Record<string, unknown>, V extends SHAREPOINT_VER = '2013'>(context: RequestContext<V>, id: number | string, data: ListData<D>, digest?: string): Promise<import("axios").AxiosResponse<any, any, {}>>;
@@ -1,6 +0,0 @@
1
- import { AxiosResponse } from 'axios';
2
- import { ItemID, SHAREPOINT_VER, UploadFileProps } from '../../../types';
3
- import { RequestContext } from '../context';
4
- export declare function uploadFile<V extends SHAREPOINT_VER = '2013'>(context: RequestContext<V>, { file, folderPath, overwrite }: UploadFileProps): Promise<AxiosResponse & {
5
- itemId?: ItemID;
6
- }>;
@@ -1,2 +0,0 @@
1
- export declare function buildLibraryPath(folderPath?: string | string[]): string;
2
- export declare function encodeFileName(fileName: string): string;
@@ -1,5 +0,0 @@
1
- import { Folder_Options, Options, SHAREPOINT_VER } from '../../types';
2
- type QueryableOptions<T, V extends SHAREPOINT_VER = '2013'> = Options<T, V> | Folder_Options<T>;
3
- export declare function buildODataParams<T, V extends SHAREPOINT_VER = '2013'>(options: QueryableOptions<T, V> | undefined, orderBySeparator?: ',' | ' '): Record<string, string | number>;
4
- export declare function appendParamsToUrl(baseUrl: URL, params: Record<string, string | number | undefined | null>): void;
5
- export {};
@@ -1,2 +0,0 @@
1
- export declare function escapeODataStringLiteral(value: string): string;
2
- export declare function buildListByTitleEndpoint(listName: string): string;
@@ -1,15 +0,0 @@
1
- import { AxiosInstance } from 'axios';
2
- import { PersonField, UserPermision, UserProfile } from '../../types';
3
- import { RequestContext } from './context';
4
- type RoleDefinition = {
5
- BasePermissions: {
6
- High: string;
7
- };
8
- };
9
- export declare function typeAhead(instance: AxiosInstance, input: string, filter?: string): Promise<PersonField>;
10
- export declare function currentUserProperties(instance: AxiosInstance): Promise<UserProfile>;
11
- export declare function getSiteUser(instance: AxiosInstance, searchValue: string): Promise<any>;
12
- export declare function roleDefinitions(instance: AxiosInstance): Promise<RoleDefinition[]>;
13
- export declare function getEffectiveBasePermissions(instance: AxiosInstance): Promise<any>;
14
- export declare function currentUserPermissions(context: RequestContext): Promise<UserPermision>;
15
- export {};