@esri/arcgis-rest-portal
Version:
ArcGIS Online and Enterprise content and user helpers for @esri/arcgis-rest-request
40 lines (39 loc) • 1.52 kB
TypeScript
import { IAuthenticatedRequestOptions, GroupMembership } from "@esri/arcgis-rest-request";
export interface ISharingOptions extends IAuthenticatedRequestOptions {
/**
* Unique identifier for the item.
*/
id: string;
/**
* Item owner, if different from the authenticated user.
*/
owner?: string;
}
export interface ISharingResponse {
notSharedWith?: string[];
notUnsharedFrom?: string[];
itemId: string;
}
export declare function getSharingUrl(requestOptions: ISharingOptions, username?: string): string;
export declare function isItemOwner(requestOptions: ISharingOptions, username?: string): boolean;
/**
* Check it the user is a full org_admin
* @param requestOptions
* @returns Promise resolving in a boolean indicating if the user is an ArcGIS Organization administrator
*/
export declare function isOrgAdmin(requestOptions: IAuthenticatedRequestOptions): Promise<boolean>;
/**
* Get the User Membership for a particular group. Use this if all you have is the groupId.
* If you have the group object, check the `userMembership.memberType` property instead of calling this method.
*
* @param requestOptions
* @returns A Promise that resolves with "owner" | "admin" | "member" | "none"
*/
export declare function getUserMembership(requestOptions: IGroupSharingOptions): Promise<GroupMembership>;
export interface IGroupSharingOptions extends ISharingOptions {
/**
* Group identifier
*/
groupId: string;
confirmItemControl?: boolean;
}