/** * @module UsersLists */ import { User } from "./user.model"; export interface UsersListProfile { /** * Name of the users list */ name?: string; /** * A description of the purpose of the users list */ description?: string; /** * Data indicating whether the list has been marked as favorite or not. */ isFavorite?: boolean; } export interface UsersList { /** * Unique identifier of the users list * @readonly */ id: string; /** * Name of the users list */ name: string; /** * Description of the users list */ description: string; /** * Data indicating whether the list has been marked as favorite or not. */ isFavorite: boolean; /** * User(s) members of the list * @readonly */ users: User[]; /** * Add a user in the list. * A ON_USER_ADDED_TO_LIST event is sent afterwards at the completion of the operation to notify about adding the user to the list. * @param user - The user to add to users list */ addUser(user: User): Promise; /** * Remove a user from the list. * A ON_USER_REMOVED_FROM_LIST event is sent afterwards at the completion of the operation to notify about removing a user from the list. * @param user - Reference of the user to remove from the list */ removeUser(user: User): Promise; /** * Update the profile of the users list. * Only the general information, i.e. the name, the description and the favorite status can be updated using this method. * Users can only be added or removed from the list using methods 'addUser' and 'removeUser' respectively. * A ON_USERS_LIST_PROFILE_UPDATED event is sent afterwards at the completion of the operation to notify about the list's profile update. * @param profile - The profile information to be updated */ updateProfile(profile: UsersListProfile): Promise; } /** * @internal */ export declare class UsersListRB implements UsersList { /** * The unique identifier of the users list * @readonly */ id: string; /** * The name of the users list */ name: string; /** * The filtername of the users list (in order to operate some pattern finding with name) * UCaaS Only: Internal management */ filterName?: string; /** * A description of the purpose of the list */ description: string; /** * Data indicating whether the list has been marked as favorite or not. */ isFavorite: boolean; /** * The users who are members of the list */ users: User[]; private usersListsService?; constructor(id: string, name: string, description?: string, isFavorite?: boolean); static createFromData(data: any): UsersListRB; /** * Add a user in the list. * A ON_USER_ADDED_TO_LIST event is sent afterwards at the completion of the operation to notify about adding the user to the list. * @param user - The user to add to users list */ addUser(user: User): Promise; /** * Remove a user from the list. * A ON_USER_REMOVED_FROM_LIST event is sent afterwards at the completion of the operation to notify about removing a user from the list. * @param user - Reference of the user to remove from the list */ removeUser(user: User): Promise; /** * Update the profile of the users list. * Only the general information, i.e. the name, the description and the favorite status can be updated using this method. * Users can only be added or removed from the list using methods 'addUser' and 'removeUser' respectively. * A ON_USERS_LIST_PROFILE_UPDATED event is sent afterwards at the completion of the operation to notify about the list's profile update. * @param profile - The profile information to be updated */ updateProfile(profile: UsersListProfile): Promise; } //# sourceMappingURL=usersList.model.d.ts.map