import { HttpClient, NonNullablePaths, EventDefinition, MaybeContext, BuildRESTFunction, BuildEventDefinition } from '@wix/sdk-types'; import { AddGroupMembersResponse, ListGroupMembersOptions, ListGroupMembersResponse, MembersQueryBuilder, GroupMemberQuery, QueryGroupMembersResponse, ListMembershipsOptions, ListMembershipsResponse, QueryMembershipsOptions, QueryMembershipsResponse, GroupMemberAddedEnvelope, GroupMemberRemovedEnvelope } from './index.typings.js'; export { AccountInfo, AccountInfoMetadata, ActionEvent, AddGroupMembersRequest, BaseEventMetadata, CommonQueryWithEntityContext, DomainEvent, DomainEventBodyOneOf, EntityCreatedEvent, EntityDeletedEvent, EntityUpdatedEvent, EventMetadata, GroupMember, GroupMemberQuerySpec, GroupRole, IdentificationData, IdentificationDataIdOneOf, JoinBy, JoinByWithLiterals, JoinRequest, JoinRequestsApproved, JoinResponse, LeaveRequest, LeaveResponse, ListGroupMembersRequest, ListMembershipsRequest, MemberAdded, MemberJoined, MemberJoinedGroup, MemberLeft, MemberRemoved, MembersAddedToGroup, MembersInvitedToGroup, MembersQueryResult, Membership, MembershipQuestionAnswer, MembershipStatus, MembershipStatusWithLiterals, MessageEnvelope, Paging, PagingMetadata, Query, QueryGroupMembersRequest, QueryMembershipsRequest, QueryMyMembershipRequest, QueryMyMembershipResponse, QueryNonGroupMembersRequest, QueryNonGroupMembersResponse, RemoveGroupMembersRequest, RemoveGroupMembersResponse, RestoreInfo, Role, RoleWithLiterals, SocialGroupsEvent, SocialGroupsEventPayloadOneOf, SortOrder, SortOrderWithLiterals, Sorting, WebhookIdentityType, WebhookIdentityTypeWithLiterals, utils } from './index.typings.js'; declare function addGroupMembers$1(httpClient: HttpClient): AddGroupMembersSignature; interface AddGroupMembersSignature { /** * Add site members to a specific group. Public members are added right away, while private members receive an invitation to join the group. * * For `SECRET` groups, group admins and group members can add additional members to their group. * For `PUBLIC` and `PRIVATE` groups, only group admins can add additional members to their group. * They can also allow all group members to add a new member to the group with `group.settings`. * @param - Group ID. * @param - Member IDs. See the Members API for details. */ (groupId: string, memberIds: string[]): Promise>; } declare function removeGroupMembers$1(httpClient: HttpClient): RemoveGroupMembersSignature; interface RemoveGroupMembersSignature { /** * Removes site members from a specific group. * * Only group admins can remove members from their group. * @param - Group ID. * @param - Member IDs. See the Members API for details. */ (groupId: string, memberIds: string[]): Promise; } declare function listGroupMembers$1(httpClient: HttpClient): ListGroupMembersSignature; interface ListGroupMembersSignature { /** * Retrieves a list of up to 100 group members, given the provided paging. * * For groups with `group.privacyStatus` set to `SECRET`, only group admins and group members can see the group and its content. * * Default sorts by `joinedDate` in descending order. * @param - Group ID. * @param - Paging options. */ (groupId: string, options?: ListGroupMembersOptions): Promise>; } declare function queryGroupMembers$1(httpClient: HttpClient): QueryGroupMembersSignature; interface QueryGroupMembersSignature { /** * Retrieves a list of up to 100 group members, given the provided paging, sorting and filtering. * * * Creates a query to retrieve a list of group members. * * > **Note:** For `SECRET` groups, only group admins and group members can query group members. * * The `queryGroupMembers()` function builds a query to retrieve a list of all group members, and returns a [GroupMembersQueryBuilder](#membersquerybuilder) object. * * The returned object contains the query definition which is typically used to run the query using the [`find()`](#membersquerybuilder/find) function. * * You can refine the query by chaining `GroupMembersQueryBuilder` functions onto the query. `GroupMembersQueryBuilder` functions enable you to sort, filter, and control the results that `queryMembers()` returns. * * `queryGroupMembers()` runs with these `GroupMembersQueryBuilder` defaults, which you can override: * + [`limit(100)`](/members-query-builder/limit) * + [`descending("joinedDate")`](/members-query-builder/descending) * * The following `GroupMembersQueryBuilder` functions are supported for `queryGroupMembers()`. For a full description of the Members object, see the object returned for the [`items`](/members-query-result/items) property in `MembersQueryResult`. * @param - Group ID. */ (groupId: string): MembersQueryBuilder; } declare function typedQueryGroupMembers$1(httpClient: HttpClient): TypedQueryGroupMembersSignature; interface TypedQueryGroupMembersSignature { /** */ (query: GroupMemberQuery): Promise>; } declare function listMemberships$1(httpClient: HttpClient): ListMembershipsSignature; interface ListMembershipsSignature { /** * Retrieves a list of group memberships of a site member. * * Only Wix users can retrieve a site member's group memberships. * Site members can only retrieve a list of their own group memberships. * * Default sorts by `groupId` in descending order. * @param - Site member ID. * @param - Paging options. */ (memberId: string, options?: ListMembershipsOptions): Promise>; } declare function queryMemberships$1(httpClient: HttpClient): QueryMembershipsSignature; interface QueryMembershipsSignature { /** * Retrieves a list of up to 100 members and their membership status, given the provided paging and filtering. * * The queryMemberships function returns a Promise that resolves to a list of memberships. * * >**Note:** Site members can only query their own memberships. * * | Property | Supported Filters & Sorting | * | --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | * | `status` | [`eq()`](#membershipsquerybuilder/eq), [`ne()`](#membershipsquerybuilder/ne) | * | `role` | [`eq()`](#membershipsquerybuilder/eq), [`ne()`](#membershipsquerybuilder/ne) | * * @param - Site member ID. */ (memberId: string, options?: QueryMembershipsOptions): Promise>; } declare const onGroupMemberAdded$1: EventDefinition; declare const onGroupMemberRemoved$1: EventDefinition; declare const addGroupMembers: MaybeContext & typeof addGroupMembers$1>; declare const removeGroupMembers: MaybeContext & typeof removeGroupMembers$1>; declare const listGroupMembers: MaybeContext & typeof listGroupMembers$1>; declare const queryGroupMembers: MaybeContext & typeof queryGroupMembers$1>; declare const typedQueryGroupMembers: MaybeContext & typeof typedQueryGroupMembers$1>; declare const listMemberships: MaybeContext & typeof listMemberships$1>; declare const queryMemberships: MaybeContext & typeof queryMemberships$1>; /** * Triggered when a new member is added to a group, either directly by an admin or when a Join Request is approved. */ declare const onGroupMemberAdded: BuildEventDefinition & typeof onGroupMemberAdded$1; /** * Triggered when a member is removed from a group. */ declare const onGroupMemberRemoved: BuildEventDefinition & typeof onGroupMemberRemoved$1; export { AddGroupMembersResponse, GroupMemberAddedEnvelope, GroupMemberQuery, GroupMemberRemovedEnvelope, ListGroupMembersOptions, ListGroupMembersResponse, ListMembershipsOptions, ListMembershipsResponse, MembersQueryBuilder, QueryGroupMembersResponse, QueryMembershipsOptions, QueryMembershipsResponse, addGroupMembers, listGroupMembers, listMemberships, onGroupMemberAdded, onGroupMemberRemoved, queryGroupMembers, queryMemberships, removeGroupMembers, typedQueryGroupMembers };