UNPKG

@kwiz/common

Version:

KWIZ common utilities and helpers for M365 platform

75 lines (74 loc) 4.09 kB
import { ISPPeoplePickerControlFormEntity } from "../../helpers/sharepoint"; import { ISiteGroupInfo } from "../../types/sharepoint.types"; import { IGroupInfo, IUserGroupInfo, IUserInfo } from "../../types/sharepoint.utils.types"; /** Get user login name */ export declare function GetUserLoginName(siteUrl?: string): Promise<string>; /** Get user login name syncronously */ export declare function GetUserLoginNameSync(siteUrl?: string): string; export declare function GetCurrentUser(siteUrl?: string, options?: { expandGroups: boolean; refreshCache?: boolean; }): Promise<IUserInfo>; export declare function GetCurrentUserSync(siteUrl?: string, options?: { /** expand groups only includes SP groups the user is a direct member of. It does not include groups associated through a security group membership, teams or M365 group */ expandGroups: boolean; }): IUserInfo; export declare function GetUser(siteUrl?: string, userId?: number, options?: { /** expand groups only includes SP groups the user is a direct member of. It does not include groups associated through a security group membership, teams or M365 group */ expandGroups: boolean; }): Promise<IUserInfo>; export declare function GetUserSync(siteUrl?: string, userId?: number, options?: { expandGroups: boolean; }): IUserInfo; export declare function GetUserByLogin(siteUrl?: string, loginName?: string, options?: { expandGroups: boolean; }): Promise<IUserInfo>; export declare function GetUserByLoginSync(siteUrl?: string, loginName?: string, options?: { expandGroups: boolean; }): IUserInfo; export declare function EnsureUser(siteUrl: string, userLogin: string, options?: { expandGroups: boolean; }): Promise<IUserInfo>; export declare function EnsureUserSync(siteUrl: string, userLogin: string, options?: { expandGroups: boolean; }): IUserInfo; export declare function GetOrEnsureUserByLoginSync(siteUrl: string, key: string, options?: { expandGroups: boolean; }): IUserInfo; export declare function GetSecurityGroupByTitle(siteUrl: string, title: string): Promise<IUserInfo>; export declare function GetSecurityGroupByTitleSync(siteUrl: string, title: string): IUserInfo; export declare function GetGroup(siteUrl?: string, groupId?: number, options?: { expandUsers: boolean; refreshCache?: boolean; }): Promise<IGroupInfo>; export declare function GetGroupSync(siteUrl?: string, groupId?: number, options?: { expandUsers: boolean; }): IGroupInfo; export declare function GetGroupByName(siteUrl: string, groupName: string, options?: { expandUsers: boolean; refreshCache?: boolean; }): Promise<IGroupInfo>; export declare function GetGroupByNameSync(siteUrl: string, groupName: string, options?: { expandUsers: boolean; }): IGroupInfo; export declare function GetSiteGroups(siteUrl: string, refreshCache?: boolean): Promise<IGroupInfo[]>; export declare function GetInfoFromSPPeoplePickerControlFormEntity(entity: ISPPeoplePickerControlFormEntity): IUserInfo | IGroupInfo; export declare function CreateSiteGroup(siteUrl: string, info: { name: string; description: string; }): Promise<ISiteGroupInfo>; export declare function AddUserToGroup(siteUrl: string, groupId: number, userIdOrLogin: number | string): Promise<void>; export declare function RemoveUserFromGroup(siteUrl: string, groupId: number, userId: number): Promise<void>; export declare function SetGroupOwner(siteUrl: string, groupId: number, ownerId: number, ownerIsAGroup?: boolean): Promise<boolean>; export declare function GroupIncludesAllUsers(siteUrl: string, groupId: number): Promise<boolean>; /** return array of AAD group IDs, guid, normalized */ export declare function GetCurrentUserADGroupMemberships(siteUrl: string): Promise<string[]>; /** checks users groups, then checks for groups that contains all users and that the user is not an external one */ export declare function IsUserMemberOfGroup(siteUrl: string, user: { LoginName: string; Id: number; Groups?: IUserGroupInfo[]; }, group: { Id: number; LoginName: string; }): Promise<boolean>;