{"version":3,"sources":["../../src/social-groups-v2-group-member-members.public.ts","../../src/social-groups-v2-group-member-members.universal.ts","../../src/social-groups-v2-group-member-members.http.ts","../../src/social-groups-v2-group-member-members.context.ts"],"sourcesContent":["import { renameKeysFromRESTResponseToSDKResponse } from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { EventDefinition, HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n  AddGroupMembersResponse,\n  GroupMemberAddedEnvelope,\n  GroupMemberQuery,\n  GroupMemberRemovedEnvelope,\n  ListGroupMembersOptions,\n  ListGroupMembersResponse,\n  ListMembershipsOptions,\n  ListMembershipsResponse,\n  MembersQueryBuilder,\n  QueryGroupMembersResponse,\n  QueryMembershipsOptions,\n  QueryMembershipsResponse,\n  addGroupMembers as universalAddGroupMembers,\n  listGroupMembers as universalListGroupMembers,\n  listMemberships as universalListMemberships,\n  queryGroupMembers as universalQueryGroupMembers,\n  queryMemberships as universalQueryMemberships,\n  removeGroupMembers as universalRemoveGroupMembers,\n  typedQueryGroupMembers as universalTypedQueryGroupMembers,\n} from './social-groups-v2-group-member-members.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/groups' };\n\nexport function addGroupMembers(\n  httpClient: HttpClient\n): AddGroupMembersSignature {\n  return (groupId: string, memberIds: string[]) =>\n    universalAddGroupMembers(\n      groupId,\n      memberIds,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface AddGroupMembersSignature {\n  /**\n   * Add site members to a specific group. Public members are added right away, while private members receive an invitation to join the group.\n   *\n   * For `SECRET` groups, group admins and group members can add additional members to their group.\n   * For `PUBLIC` and `PRIVATE` groups, only group admins can add additional members to their group.\n   * They can also allow all group members to add a new member to the group with `group.settings`.\n   * @param - Group ID.\n   * @param - Member IDs. See the Members API for details.\n   */\n  (groupId: string, memberIds: string[]): Promise<\n    NonNullablePaths<\n      AddGroupMembersResponse,\n      `members` | `members.${number}.memberId` | `members.${number}.role.value`,\n      5\n    >\n  >;\n}\n\nexport function removeGroupMembers(\n  httpClient: HttpClient\n): RemoveGroupMembersSignature {\n  return (groupId: string, memberIds: string[]) =>\n    universalRemoveGroupMembers(\n      groupId,\n      memberIds,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface RemoveGroupMembersSignature {\n  /**\n   * Removes site members from a specific group.\n   *\n   * Only group admins can remove members from their group.\n   * @param - Group ID.\n   * @param - Member IDs. See the Members API for details.\n   */\n  (groupId: string, memberIds: string[]): Promise<void>;\n}\n\nexport function listGroupMembers(\n  httpClient: HttpClient\n): ListGroupMembersSignature {\n  return (groupId: string, options?: ListGroupMembersOptions) =>\n    universalListGroupMembers(\n      groupId,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface ListGroupMembersSignature {\n  /**\n   * Retrieves a list of up to 100 group members, given the provided paging.\n   *\n   * For groups with `group.privacyStatus` set to `SECRET`, only group admins and group members can see the group and its content.\n   *\n   * Default sorts by `joinedDate` in descending order.\n   * @param - Group ID.\n   * @param - Paging options.\n   */\n  (groupId: string, options?: ListGroupMembersOptions): Promise<\n    NonNullablePaths<\n      ListGroupMembersResponse,\n      `members` | `members.${number}.memberId` | `members.${number}.role.value`,\n      5\n    >\n  >;\n}\n\nexport function queryGroupMembers(\n  httpClient: HttpClient\n): QueryGroupMembersSignature {\n  return (groupId: string) =>\n    universalQueryGroupMembers(\n      groupId,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface QueryGroupMembersSignature {\n  /**\n   * Retrieves a list of up to 100 group members, given the provided paging, sorting and filtering.\n   *\n   *\n   * Creates a query to retrieve a list of group members.\n   *\n   * > **Note:** For `SECRET` groups, only group admins and group members can query group members. <!-- However, if the `suppressAuth` option is set to `true`, all permissions are overwritten, and all site members (including non-group members) can query group members.  -->\n   *\n   * The `queryGroupMembers()` function builds a query to retrieve a list of all group members, and returns a [GroupMembersQueryBuilder](#membersquerybuilder) object.\n   *\n   * The returned object contains the query definition which is typically used to run the query using the [`find()`](#membersquerybuilder/find) function.\n   *\n   * 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.\n   *\n   *  `queryGroupMembers()` runs with these `GroupMembersQueryBuilder` defaults, which you can override:\n   *  + [`limit(100)`](/members-query-builder/limit)\n   *  + [`descending(\"joinedDate\")`](/members-query-builder/descending)\n   *\n   * 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`.\n   * @param - Group ID.\n   */\n  (groupId: string): MembersQueryBuilder;\n}\n\nexport function typedQueryGroupMembers(\n  httpClient: HttpClient\n): TypedQueryGroupMembersSignature {\n  return (query: GroupMemberQuery) =>\n    universalTypedQueryGroupMembers(\n      query,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface TypedQueryGroupMembersSignature {\n  /** */\n  (query: GroupMemberQuery): Promise<\n    NonNullablePaths<\n      QueryGroupMembersResponse,\n      `members` | `members.${number}.memberId` | `members.${number}.role.value`,\n      5\n    >\n  >;\n}\n\nexport function listMemberships(\n  httpClient: HttpClient\n): ListMembershipsSignature {\n  return (memberId: string, options?: ListMembershipsOptions) =>\n    universalListMemberships(\n      memberId,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface ListMembershipsSignature {\n  /**\n   * Retrieves a list of group memberships of a site member.\n   *\n   * Only Wix users can retrieve a site member's group memberships.\n   * Site members can only retrieve a list of their own group memberships.\n   *\n   * Default sorts by `groupId` in descending order.\n   * @param - Site member ID.\n   * @param - Paging options.\n   */\n  (memberId: string, options?: ListMembershipsOptions): Promise<\n    NonNullablePaths<\n      ListMembershipsResponse,\n      | `memberships`\n      | `memberships.${number}.groupId`\n      | `memberships.${number}.status`\n      | `memberships.${number}.role.value`,\n      5\n    >\n  >;\n}\n\nexport function queryMemberships(\n  httpClient: HttpClient\n): QueryMembershipsSignature {\n  return (memberId: string, options?: QueryMembershipsOptions) =>\n    universalQueryMemberships(\n      memberId,\n      options,\n      // @ts-ignore\n      { httpClient }\n    );\n}\n\ninterface QueryMembershipsSignature {\n  /**\n   * Retrieves a list of up to 100 members and their membership status, given the provided paging and filtering.\n   *\n   * The queryMemberships function returns a Promise that resolves to a list of memberships.\n   *\n   * >**Note:** Site members can only query their own memberships.\n   *\n   * | Property                    | Supported Filters & Sorting                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |\n   * | --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n   * | `status`                    | [`eq()`](#membershipsquerybuilder/eq), [`ne()`](#membershipsquerybuilder/ne)             |\n   * | `role`                      | [`eq()`](#membershipsquerybuilder/eq), [`ne()`](#membershipsquerybuilder/ne)             |\n   *\n   * @param - Site member ID.\n   */\n  (memberId: string, options?: QueryMembershipsOptions): Promise<\n    NonNullablePaths<\n      QueryMembershipsResponse,\n      | `memberships`\n      | `memberships.${number}.groupId`\n      | `memberships.${number}.status`\n      | `memberships.${number}.role.value`,\n      5\n    >\n  >;\n}\n\nexport const onGroupMemberAdded = EventDefinition(\n  'wix.social_groups.v2.group_member_added',\n  true,\n  (event: GroupMemberAddedEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: [\n            { path: 'data.groupMember.joinedDate' },\n            { path: 'metadata.eventTime' },\n          ],\n        },\n      ])\n    )\n)<GroupMemberAddedEnvelope>();\nexport const onGroupMemberRemoved = EventDefinition(\n  'wix.social_groups.v2.group_member_removed',\n  true,\n  (event: GroupMemberRemovedEnvelope) =>\n    renameKeysFromRESTResponseToSDKResponse(\n      transformPaths(event, [\n        {\n          transformFn: transformRESTTimestampToSDKTimestamp,\n          paths: [\n            { path: 'data.groupMember.joinedDate' },\n            { path: 'metadata.eventTime' },\n          ],\n        },\n      ])\n    )\n)<GroupMemberRemovedEnvelope>();\n\nexport {\n  AccountInfo,\n  AccountInfoMetadata,\n  ActionEvent,\n  AddGroupMembersRequest,\n  AddGroupMembersResponse,\n  BaseEventMetadata,\n  DomainEvent,\n  DomainEventBodyOneOf,\n  EntityCreatedEvent,\n  EntityDeletedEvent,\n  EntityUpdatedEvent,\n  EventMetadata,\n  GroupMember,\n  GroupMemberAddedEnvelope,\n  GroupMemberQuerySpec,\n  GroupMemberRemovedEnvelope,\n  GroupRole,\n  IdentificationData,\n  IdentificationDataIdOneOf,\n  JoinBy,\n  JoinRequest,\n  JoinRequestsApproved,\n  JoinResponse,\n  LeaveRequest,\n  LeaveResponse,\n  ListGroupMembersOptions,\n  ListGroupMembersRequest,\n  ListGroupMembersResponse,\n  ListMembershipsOptions,\n  ListMembershipsRequest,\n  ListMembershipsResponse,\n  MemberAdded,\n  MemberJoined,\n  MemberJoinedGroup,\n  MemberLeft,\n  MemberRemoved,\n  MembersAddedToGroup,\n  MembersInvitedToGroup,\n  MembersQueryBuilder,\n  MembersQueryResult,\n  Membership,\n  MembershipQuestionAnswer,\n  MembershipStatus,\n  MessageEnvelope,\n  Paging,\n  PagingMetadata,\n  Query,\n  QueryGroupMembersRequest,\n  QueryGroupMembersResponse,\n  QueryMembershipsOptions,\n  QueryMembershipsRequest,\n  QueryMembershipsResponse,\n  QueryMyMembershipRequest,\n  QueryMyMembershipResponse,\n  QueryNonGroupMembersRequest,\n  QueryNonGroupMembersResponse,\n  RemoveGroupMembersRequest,\n  RemoveGroupMembersResponse,\n  RestoreInfo,\n  Role,\n  SocialGroupsEvent,\n  SocialGroupsEventPayloadOneOf,\n  SortOrder,\n  Sorting,\n  WebhookIdentityType,\n  utils,\n} from './social-groups-v2-group-member-members.universal.js';\n","import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport { queryBuilder } from '@wix/sdk-runtime/query-builder';\nimport {\n  renameKeysFromSDKRequestToRESTRequest,\n  renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport {\n  HttpClient,\n  HttpResponse,\n  NonNullablePaths,\n  QuerySpec,\n  Query as QuerySdkType,\n} from '@wix/sdk-types';\nimport * as ambassadorWixSocialGroupsV2GroupMember from './social-groups-v2-group-member-members.http.js';\n// @ts-ignore\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { createQueryUtils } from '@wix/sdk-runtime/query-builder-utils';\n\n/**\n * A group member represents an existing site member that has joined a group.\n * You can add, remove, and query group members.\n * Learn more about [group members](https://support.wix.com/en/article/wix-groups-adding-new-members-to-your-group).\n */\nexport interface GroupMember {\n  /**\n   * Member ID. See the Members API for more details.\n   * @readonly\n   * @format GUID\n   */\n  memberId?: string;\n  /** Group member role. */\n  role?: GroupRole;\n  /**\n   * Date and time the group Member joined the group.\n   * @readonly\n   */\n  joinedDate?: Date | null;\n}\n\n/**\n * A group member may have multiple roles in a single group.\n * Currently, only `MEMBER` and `ADMIN` roles are supported, but more roles may be available in the future.\n */\nexport interface GroupRole {\n  /** Member's role. */\n  value?: RoleWithLiterals;\n}\n\nexport enum Role {\n  /** Regular group member. */\n  MEMBER = 'MEMBER',\n  /** Group administrator. */\n  ADMIN = 'ADMIN',\n}\n\n/** @enumType */\nexport type RoleWithLiterals = Role | 'MEMBER' | 'ADMIN';\n\nexport interface SocialGroupsEvent extends SocialGroupsEventPayloadOneOf {\n  memberJoined?: MemberJoinedGroup;\n  membersAdded?: MembersAddedToGroup;\n  joinRequestsApproved?: JoinRequestsApproved;\n  membersInvited?: MembersInvitedToGroup;\n}\n\n/** @oneof */\nexport interface SocialGroupsEventPayloadOneOf {\n  memberJoined?: MemberJoinedGroup;\n  membersAdded?: MembersAddedToGroup;\n  joinRequestsApproved?: JoinRequestsApproved;\n  membersInvited?: MembersInvitedToGroup;\n}\n\nexport interface MemberJoinedGroup {\n  /** @format GUID */\n  groupId?: string;\n  /** @format GUID */\n  groupsInstanceId?: string;\n  /** @format GUID */\n  siteMemberId?: string;\n}\n\nexport interface MembersAddedToGroup {\n  /** @format GUID */\n  groupId?: string;\n  /** @format GUID */\n  groupsInstanceId?: string;\n  /** @format GUID */\n  whoAddedId?: string | null;\n  /** @format GUID */\n  siteMemberIds?: string[];\n  /**\n   * Used for Apes sticky experiment\n   * @format GUID\n   */\n  operationId?: string;\n}\n\nexport interface JoinRequestsApproved {\n  /** @format GUID */\n  groupId?: string;\n  /** @format GUID */\n  groupsInstanceId?: string;\n  /** @format GUID */\n  siteMemberIds?: string[];\n  /**\n   * Used for Apes sticky experiment\n   * @format GUID\n   */\n  operationId?: string;\n}\n\nexport interface MembersInvitedToGroup {\n  /** @format GUID */\n  groupId?: string;\n  /** @format GUID */\n  groupsInstanceId?: string;\n  /** @format GUID */\n  siteMemberIds?: string[];\n}\n\n/** ID of the group to join. */\nexport interface JoinRequest {\n  /** @format GUID */\n  groupId?: string;\n  /**\n   * Answers to membership questions. A Join Request will fail, if the answer to a required question is omitted.\n   * @maxSize 50\n   */\n  membershipQuestionAnswers?: MembershipQuestionAnswer[];\n  autoInviteId?: string | null;\n}\n\n/** Answer to a membership question. */\nexport interface MembershipQuestionAnswer {\n  /**\n   * Question ID.\n   * @format GUID\n   */\n  _id?: string;\n  /**\n   * Answer text.\n   * @maxLength 300\n   */\n  text?: string | null;\n}\n\nexport interface JoinResponse {\n  /** New member. */\n  member?: GroupMember;\n}\n\nexport interface MemberJoined {\n  /**\n   * Group ID that member has joined.\n   * @format GUID\n   */\n  groupId?: string;\n  /** Joined group member. */\n  groupMember?: GroupMember;\n}\n\nexport enum JoinBy {\n  MANUALLY = 'MANUALLY',\n  PERSONAL_INVITE_LINK = 'PERSONAL_INVITE_LINK',\n  PUBLIC_INVITE_LINK = 'PUBLIC_INVITE_LINK',\n}\n\n/** @enumType */\nexport type JoinByWithLiterals =\n  | JoinBy\n  | 'MANUALLY'\n  | 'PERSONAL_INVITE_LINK'\n  | 'PUBLIC_INVITE_LINK';\n\nexport interface LeaveRequest {\n  /**\n   * ID of the Group to leave.\n   * @format GUID\n   */\n  groupId?: string;\n}\n\nexport interface LeaveResponse {}\n\nexport interface MemberLeft {\n  /**\n   * Group ID that member has left.\n   * @format GUID\n   */\n  groupId?: string;\n  /** Group member that left. */\n  groupMember?: GroupMember;\n}\n\nexport interface AddGroupMembersRequest {\n  /**\n   * Group ID.\n   * @format GUID\n   */\n  groupId: string;\n  /**\n   * Member IDs. See the Members API for details.\n   * @format GUID\n   * @maxSize 100\n   */\n  memberIds?: string[];\n}\n\nexport interface AddGroupMembersResponse {\n  /** New members. */\n  members?: GroupMember[];\n}\n\nexport interface MemberAdded {\n  /**\n   * Group ID that member was added to.\n   * @format GUID\n   */\n  groupId?: string;\n  /** Added group member. */\n  groupMember?: GroupMember;\n}\n\nexport interface RemoveGroupMembersRequest {\n  /**\n   * Group ID.\n   * @format GUID\n   */\n  groupId: string;\n  /**\n   * Member IDs. See the Members API for details.\n   * @format GUID\n   * @maxSize 100\n   */\n  memberIds?: string[];\n}\n\nexport interface RemoveGroupMembersResponse {}\n\nexport interface MemberRemoved {\n  /**\n   * Group ID that member was removed from.\n   * @format GUID\n   */\n  groupId?: string;\n  /** Removed group member. */\n  groupMember?: GroupMember;\n}\n\nexport interface ListGroupMembersRequest {\n  /**\n   * Group ID.\n   * @format GUID\n   */\n  groupId: string;\n  /**\n   * Number of items to load. Maximum `100`.\n   * @max 100\n   */\n  limit?: number | null;\n  /** Number of group members to skip in the list. */\n  offset?: number | null;\n}\n\nexport interface ListGroupMembersResponse {\n  /** Retrieved members. */\n  members?: GroupMember[];\n  /** Paging information. */\n  metadata?: PagingMetadata;\n}\n\nexport interface PagingMetadata {\n  /** Number of items returned in the response. */\n  count?: number | null;\n  /** Offset that was requested. */\n  offset?: number | null;\n  /** Total number of items that match the query. */\n  total?: number | null;\n  /** Flag that indicates the server failed to calculate the `total` field. */\n  tooManyToCount?: boolean | null;\n}\n\nexport interface QueryGroupMembersRequest {\n  /**\n   * Group ID.\n   * @format GUID\n   */\n  groupId: string;\n  query?: Query;\n}\n\nexport interface Query {\n  /**\n   * Filter object in the following format:\n   * `\"filter\" : {\n   * \"fieldName1\": \"value1\",\n   * \"fieldName2\":{\"$operator\":\"value2\"}\n   * }`\n   * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains`\n   */\n  filter?: any;\n  /**\n   * Sort object in the following format:\n   * `[{\"fieldName\":\"sortField1\",\"order\":\"ASC\"},{\"fieldName\":\"sortField2\",\"order\":\"DESC\"}]`\n   */\n  sort?: Sorting[];\n  /** Paging options to limit and skip the number of items. */\n  paging?: Paging;\n  /** Array of projected fields. A list of specific field names to return. If `fieldsets` are also specified, the union of `fieldsets` and `fields` is returned. */\n  fields?: string[];\n  /** Array of named, predefined sets of projected fields. A array of predefined named sets of fields to be returned. Specifying multiple `fieldsets` will return the union of fields from all sets. If `fields` are also specified, the union of `fieldsets` and `fields` is returned. */\n  fieldsets?: string[];\n}\n\nexport interface Sorting {\n  /**\n   * Name of the field to sort by.\n   * @maxLength 512\n   */\n  fieldName?: string;\n  /** Sort order. */\n  order?: SortOrderWithLiterals;\n}\n\nexport enum SortOrder {\n  ASC = 'ASC',\n  DESC = 'DESC',\n}\n\n/** @enumType */\nexport type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC';\n\nexport interface Paging {\n  /** Number of items to load. */\n  limit?: number | null;\n  /** Number of items to skip in the current sort order. */\n  offset?: number | null;\n}\n\nexport interface QueryGroupMembersResponse {\n  /** Group members. */\n  members?: GroupMember[];\n  /** Paging information. */\n  metadata?: PagingMetadata;\n}\n\nexport interface QueryNonGroupMembersRequest {\n  /**\n   * Group ID.\n   * @format GUID\n   */\n  groupId?: string;\n  query?: Query;\n}\n\nexport interface QueryNonGroupMembersResponse {\n  /** Retrieved members. */\n  members?: GroupMember[];\n}\n\nexport interface ListMembershipsRequest {\n  /**\n   * Member ID. See the Members API for details.\n   * @format GUID\n   */\n  memberId: string | null;\n  /**\n   * Number of items to load. Maximum `100`.\n   * @max 100\n   */\n  limit?: number | null;\n  /** Number of memberships to skip in the list. */\n  offset?: number | null;\n}\n\nexport interface ListMembershipsResponse {\n  /** Site member's memberships. */\n  memberships?: Membership[];\n  /** Paging information. */\n  metadata?: PagingMetadata;\n}\n\nexport interface Membership {\n  /**\n   * Group ID.\n   * @readonly\n   * @format GUID\n   */\n  groupId?: string;\n  /** Membership status with group. */\n  status?: MembershipStatusWithLiterals;\n  /** Group member role. When membership status is not `JOINED`, this is empty. */\n  role?: GroupRole;\n}\n\nexport enum MembershipStatus {\n  /** Undefined membership status. */\n  UNKNOWN_STATUS = 'UNKNOWN_STATUS',\n  /** Site member is a group member. */\n  JOINED = 'JOINED',\n  /** Site member has submitted a request to join this group. The request is still `PENDING`. */\n  PENDING = 'PENDING',\n}\n\n/** @enumType */\nexport type MembershipStatusWithLiterals =\n  | MembershipStatus\n  | 'UNKNOWN_STATUS'\n  | 'JOINED'\n  | 'PENDING';\n\nexport interface QueryMembershipsRequest {\n  /**\n   * Member ID. See the Members API for details.\n   * @format GUID\n   */\n  memberId: string | null;\n  query?: Query;\n}\n\nexport interface QueryMembershipsResponse {\n  /** Site member's memberships. */\n  memberships?: Membership[];\n  /** Paging information. */\n  metadata?: PagingMetadata;\n}\n\nexport interface QueryMyMembershipRequest {\n  query?: Query;\n}\n\nexport interface QueryMyMembershipResponse {\n  /** Site member's memberships. */\n  memberships?: Membership[];\n  /** Paging information. */\n  metadata?: PagingMetadata;\n}\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n  createdEvent?: EntityCreatedEvent;\n  updatedEvent?: EntityUpdatedEvent;\n  deletedEvent?: EntityDeletedEvent;\n  actionEvent?: ActionEvent;\n  /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n  _id?: string;\n  /**\n   * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n   * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n   */\n  entityFqdn?: string;\n  /**\n   * Event action name, placed at the top level to make it easier for users to dispatch messages.\n   * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n   */\n  slug?: string;\n  /** ID of the entity associated with the event. */\n  entityId?: string;\n  /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n  eventTime?: Date | null;\n  /**\n   * Whether the event was triggered as a result of a privacy regulation application\n   * (for example, GDPR).\n   */\n  triggeredByAnonymizeRequest?: boolean | null;\n  /** If present, indicates the action that triggered the event. */\n  originatedFrom?: string | null;\n  /**\n   * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n   * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n   */\n  entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n  createdEvent?: EntityCreatedEvent;\n  updatedEvent?: EntityUpdatedEvent;\n  deletedEvent?: EntityDeletedEvent;\n  actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n  entity?: string;\n}\n\nexport interface RestoreInfo {\n  deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n  /**\n   * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n   * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n   * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n   */\n  currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n  /** Entity that was deleted. */\n  deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n  body?: string;\n}\n\nexport interface MessageEnvelope {\n  /**\n   * App instance ID.\n   * @format GUID\n   */\n  instanceId?: string | null;\n  /**\n   * Event type.\n   * @maxLength 150\n   */\n  eventType?: string;\n  /** The identification type and identity data. */\n  identity?: IdentificationData;\n  /** Stringify payload. */\n  data?: string;\n  /** Details related to the account */\n  accountInfo?: AccountInfo;\n}\n\nexport interface IdentificationData extends IdentificationDataIdOneOf {\n  /**\n   * ID of a site visitor that has not logged in to the site.\n   * @format GUID\n   */\n  anonymousVisitorId?: string;\n  /**\n   * ID of a site visitor that has logged in to the site.\n   * @format GUID\n   */\n  memberId?: string;\n  /**\n   * ID of a Wix user (site owner, contributor, etc.).\n   * @format GUID\n   */\n  wixUserId?: string;\n  /**\n   * ID of an app.\n   * @format GUID\n   */\n  appId?: string;\n  /** @readonly */\n  identityType?: WebhookIdentityTypeWithLiterals;\n}\n\n/** @oneof */\nexport interface IdentificationDataIdOneOf {\n  /**\n   * ID of a site visitor that has not logged in to the site.\n   * @format GUID\n   */\n  anonymousVisitorId?: string;\n  /**\n   * ID of a site visitor that has logged in to the site.\n   * @format GUID\n   */\n  memberId?: string;\n  /**\n   * ID of a Wix user (site owner, contributor, etc.).\n   * @format GUID\n   */\n  wixUserId?: string;\n  /**\n   * ID of an app.\n   * @format GUID\n   */\n  appId?: string;\n}\n\nexport enum WebhookIdentityType {\n  UNKNOWN = 'UNKNOWN',\n  ANONYMOUS_VISITOR = 'ANONYMOUS_VISITOR',\n  MEMBER = 'MEMBER',\n  WIX_USER = 'WIX_USER',\n  APP = 'APP',\n}\n\n/** @enumType */\nexport type WebhookIdentityTypeWithLiterals =\n  | WebhookIdentityType\n  | 'UNKNOWN'\n  | 'ANONYMOUS_VISITOR'\n  | 'MEMBER'\n  | 'WIX_USER'\n  | 'APP';\n\nexport interface AccountInfo {\n  /**\n   * ID of the Wix account associated with the event.\n   * @format GUID\n   */\n  accountId?: string | null;\n  /**\n   * ID of the parent Wix account. Only included when accountId belongs to a child account.\n   * @format GUID\n   */\n  parentAccountId?: string | null;\n  /**\n   * ID of the Wix site associated with the event. Only included when the event is tied to a specific site.\n   * @format GUID\n   */\n  siteId?: string | null;\n}\n\nexport interface BaseEventMetadata {\n  /**\n   * App instance ID.\n   * @format GUID\n   */\n  instanceId?: string | null;\n  /**\n   * Event type.\n   * @maxLength 150\n   */\n  eventType?: string;\n  /** The identification type and identity data. */\n  identity?: IdentificationData;\n  /** Details related to the account */\n  accountInfo?: AccountInfo;\n}\n\nexport interface EventMetadata extends BaseEventMetadata {\n  /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n  _id?: string;\n  /**\n   * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n   * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n   */\n  entityFqdn?: string;\n  /**\n   * Event action name, placed at the top level to make it easier for users to dispatch messages.\n   * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n   */\n  slug?: string;\n  /** ID of the entity associated with the event. */\n  entityId?: string;\n  /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n  eventTime?: Date | null;\n  /**\n   * Whether the event was triggered as a result of a privacy regulation application\n   * (for example, GDPR).\n   */\n  triggeredByAnonymizeRequest?: boolean | null;\n  /** If present, indicates the action that triggered the event. */\n  originatedFrom?: string | null;\n  /**\n   * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n   * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n   */\n  entityEventSequence?: string | null;\n  accountInfo?: AccountInfoMetadata;\n}\n\nexport interface AccountInfoMetadata {\n  /** ID of the Wix account associated with the event */\n  accountId: string;\n  /** ID of the Wix site associated with the event. Only included when the event is tied to a specific site. */\n  siteId?: string;\n  /** ID of the parent Wix account. Only included when 'accountId' belongs to a child account. */\n  parentAccountId?: string;\n}\n\nexport interface GroupMemberAddedEnvelope {\n  data: MemberAdded;\n  metadata: EventMetadata;\n}\n\n/**\n * Triggered when a new member is added to a group, either directly by an admin or when a Join Request is approved.\n * @webhook\n * @eventType wix.social_groups.v2.group_member_added\n * @serviceIdentifier wix.social.groups.api.v2.GroupMembersService\n * @slug added\n */\nexport declare function onGroupMemberAdded(\n  handler: (event: GroupMemberAddedEnvelope) => void | Promise<void>\n): void;\n\nexport interface GroupMemberRemovedEnvelope {\n  data: MemberRemoved;\n  metadata: EventMetadata;\n}\n\n/**\n * Triggered when a member is removed from a group.\n * @webhook\n * @eventType wix.social_groups.v2.group_member_removed\n * @serviceIdentifier wix.social.groups.api.v2.GroupMembersService\n * @slug removed\n */\nexport declare function onGroupMemberRemoved(\n  handler: (event: GroupMemberRemovedEnvelope) => void | Promise<void>\n): void;\n\n/**\n * Add site members to a specific group. Public members are added right away, while private members receive an invitation to join the group.\n *\n * For `SECRET` groups, group admins and group members can add additional members to their group.\n * For `PUBLIC` and `PRIVATE` groups, only group admins can add additional members to their group.\n * They can also allow all group members to add a new member to the group with `group.settings`.\n * @param groupId - Group ID.\n * @param memberIds - Member IDs. See the Members API for details.\n * @public\n * @requiredField groupId\n * @requiredField memberIds\n * @fqn wix.social.groups.api.v2.GroupMembersService.AddGroupMembers\n */\nexport async function addGroupMembers(\n  groupId: string,\n  memberIds: string[]\n): Promise<\n  NonNullablePaths<\n    AddGroupMembersResponse,\n    `members` | `members.${number}.memberId` | `members.${number}.role.value`,\n    5\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    groupId: groupId,\n    memberIds: memberIds,\n  });\n\n  const reqOpts =\n    ambassadorWixSocialGroupsV2GroupMember.addGroupMembers(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { groupId: '$[0]', memberIds: '$[1]' },\n        singleArgumentUnchanged: false,\n      },\n      ['groupId', 'memberIds']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Removes site members from a specific group.\n *\n * Only group admins can remove members from their group.\n * @param groupId - Group ID.\n * @param memberIds - Member IDs. See the Members API for details.\n * @public\n * @requiredField groupId\n * @requiredField memberIds\n * @fqn wix.social.groups.api.v2.GroupMembersService.RemoveGroupMembers\n */\nexport async function removeGroupMembers(\n  groupId: string,\n  memberIds: string[]\n): Promise<void> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    groupId: groupId,\n    memberIds: memberIds,\n  });\n\n  const reqOpts =\n    ambassadorWixSocialGroupsV2GroupMember.removeGroupMembers(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { groupId: '$[0]', memberIds: '$[1]' },\n        singleArgumentUnchanged: false,\n      },\n      ['groupId', 'memberIds']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\n/**\n * Retrieves a list of up to 100 group members, given the provided paging.\n *\n * For groups with `group.privacyStatus` set to `SECRET`, only group admins and group members can see the group and its content.\n *\n * Default sorts by `joinedDate` in descending order.\n * @param groupId - Group ID.\n * @public\n * @requiredField groupId\n * @param options - Paging options.\n * @fqn wix.social.groups.api.v2.GroupMembersService.ListGroupMembers\n */\nexport async function listGroupMembers(\n  groupId: string,\n  options?: ListGroupMembersOptions\n): Promise<\n  NonNullablePaths<\n    ListGroupMembersResponse,\n    `members` | `members.${number}.memberId` | `members.${number}.role.value`,\n    5\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    groupId: groupId,\n    limit: options?.limit,\n    offset: options?.offset,\n  });\n\n  const reqOpts =\n    ambassadorWixSocialGroupsV2GroupMember.listGroupMembers(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          groupId: '$[0]',\n          limit: '$[1].limit',\n          offset: '$[1].offset',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['groupId', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface ListGroupMembersOptions {\n  /**\n   * Number of items to load. Maximum `100`.\n   * @max 100\n   */\n  limit?: number | null;\n  /** Number of group members to skip in the list. */\n  offset?: number | null;\n}\n\n/**\n * Retrieves a list of up to 100 group members, given the provided paging, sorting and filtering.\n *\n *\n * Creates a query to retrieve a list of group members.\n *\n * > **Note:** For `SECRET` groups, only group admins and group members can query group members. <!-- However, if the `suppressAuth` option is set to `true`, all permissions are overwritten, and all site members (including non-group members) can query group members.  -->\n *\n * The `queryGroupMembers()` function builds a query to retrieve a list of all group members, and returns a [GroupMembersQueryBuilder](#membersquerybuilder) object.\n *\n * The returned object contains the query definition which is typically used to run the query using the [`find()`](#membersquerybuilder/find) function.\n *\n * 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.\n *\n *  `queryGroupMembers()` runs with these `GroupMembersQueryBuilder` defaults, which you can override:\n *  + [`limit(100)`](/members-query-builder/limit)\n *  + [`descending(\"joinedDate\")`](/members-query-builder/descending)\n *\n * 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`.\n * @public\n * @requiredField groupId\n * @param groupId - Group ID.\n * @fqn wix.social.groups.api.v2.GroupMembersService.QueryGroupMembers\n */\nexport function queryGroupMembers(groupId: string): MembersQueryBuilder {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  return queryBuilder<\n    GroupMember,\n    'OFFSET',\n    QueryGroupMembersRequest,\n    QueryGroupMembersResponse\n  >({\n    func: async (payload: QueryGroupMembersRequest) => {\n      const reqOpts =\n        ambassadorWixSocialGroupsV2GroupMember.queryGroupMembers(payload);\n\n      sideEffects?.onSiteCall?.();\n      try {\n        const result = await httpClient.request(reqOpts);\n        sideEffects?.onSuccess?.(result);\n        return result;\n      } catch (err) {\n        sideEffects?.onError?.(err);\n        throw err;\n      }\n    },\n    requestTransformer: (query: QueryGroupMembersRequest['query']) => {\n      const args = [query, groupId, {}] as [\n        QueryGroupMembersRequest['query'],\n        typeof groupId,\n        {}\n      ];\n      return renameKeysFromSDKRequestToRESTRequest({\n        groupId: args?.[1],\n        ...args?.[2],\n        query: args?.[0],\n      });\n    },\n    responseTransformer: ({\n      data,\n    }: HttpResponse<QueryGroupMembersResponse>) => {\n      const transformedData = renameKeysFromRESTResponseToSDKResponse(\n        transformPaths(data, [])\n      );\n\n      return {\n        items: transformedData?.members,\n        pagingMetadata: transformedData?.metadata,\n      };\n    },\n    errorTransformer: (err: unknown) => {\n      const transformedError = sdkTransformError(err, {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { groupId: '$[1]', query: '$[0]' },\n        singleArgumentUnchanged: false,\n      });\n\n      throw transformedError;\n    },\n    pagingMethod: 'OFFSET',\n    transformationPaths: {},\n  });\n}\n\ninterface QueryOffsetResult {\n  currentPage: number | undefined;\n  totalPages: number | undefined;\n  totalCount: number | undefined;\n  hasNext: () => boolean;\n  hasPrev: () => boolean;\n  length: number;\n  pageSize: number;\n}\n\nexport interface MembersQueryResult extends QueryOffsetResult {\n  items: GroupMember[];\n  query: MembersQueryBuilder;\n  next: () => Promise<MembersQueryResult>;\n  prev: () => Promise<MembersQueryResult>;\n}\n\nexport interface MembersQueryBuilder {\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   */\n  eq: (propertyName: 'role', value: any) => MembersQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `value`.\n   * @param value - Value to compare against.\n   */\n  ne: (propertyName: 'role', value: any) => MembersQueryBuilder;\n  /** @param propertyName - Property whose value is compared with `values`.\n   * @param values - List of values to compare against.\n   */\n  hasSome: (propertyName: 'role', value: any[]) => MembersQueryBuilder;\n  in: (propertyName: 'role', value: any) => MembersQueryBuilder;\n  exists: (propertyName: 'role', value: boolean) => MembersQueryBuilder;\n  /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */\n  ascending: (\n    ...propertyNames: Array<'role' | 'joinedDate'>\n  ) => MembersQueryBuilder;\n  /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */\n  descending: (\n    ...propertyNames: Array<'role' | 'joinedDate'>\n  ) => MembersQueryBuilder;\n  /** @param limit - Number of items to return, which is also the `pageSize` of the results object. */\n  limit: (limit: number) => MembersQueryBuilder;\n  /** @param skip - Number of items to skip in the query results before returning the results. */\n  skip: (skip: number) => MembersQueryBuilder;\n  find: () => Promise<MembersQueryResult>;\n}\n\n/**\n * @hidden\n * @fqn wix.social.groups.api.v2.GroupMembersService.QueryGroupMembers\n * @requiredField query\n */\nexport async function typedQueryGroupMembers(\n  query: GroupMemberQuery\n): Promise<\n  NonNullablePaths<\n    QueryGroupMembersResponse,\n    `members` | `members.${number}.memberId` | `members.${number}.role.value`,\n    5\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[1] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({ query: query });\n\n  const reqOpts =\n    ambassadorWixSocialGroupsV2GroupMember.queryGroupMembers(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { query: '$[0]' },\n        singleArgumentUnchanged: false,\n      },\n      ['query']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface GroupMemberQuerySpec extends QuerySpec {\n  paging: 'offset';\n  wql: [];\n}\n\nexport type CommonQueryWithEntityContext = QuerySdkType<\n  GroupMember,\n  GroupMemberQuerySpec\n>;\nexport type GroupMemberQuery = {\n  /** \n  Filter object in the following format:\n  `\"filter\" : {\n  \"fieldName1\": \"value1\",\n  \"fieldName2\":{\"$operator\":\"value2\"}\n  }`\n  Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains`  \n  */\n  filter?: CommonQueryWithEntityContext['filter'];\n  /** \n  Sort object in the following format:\n  `[{\"fieldName\":\"sortField1\",\"order\":\"ASC\"},{\"fieldName\":\"sortField2\",\"order\":\"DESC\"}]`  \n  */\n  sort?: {\n    /** \n  Name of the field to sort by. \n  @maxLength: 512 \n  */\n    fieldName?: NonNullable<\n      CommonQueryWithEntityContext['sort']\n    >[number]['fieldName'];\n    /** \n  Sort order.  \n  */\n    order?: NonNullable<CommonQueryWithEntityContext['sort']>[number]['order'];\n  }[];\n  /** \n  Paging options to limit and skip the number of items.  \n  */\n  paging?: {\n    /** \n  Number of items to load.  \n  */\n    limit?: NonNullable<CommonQueryWithEntityContext['paging']>['limit'] | null;\n    /** \n  Number of items to skip in the current sort order.  \n  */\n    offset?:\n      | NonNullable<CommonQueryWithEntityContext['paging']>['offset']\n      | null;\n  };\n};\n\nexport const utils = {\n  ...createQueryUtils<GroupMember, GroupMemberQuerySpec, GroupMemberQuery>(),\n};\n\n/**\n * Retrieves a list of group memberships of a site member.\n *\n * Only Wix users can retrieve a site member's group memberships.\n * Site members can only retrieve a list of their own group memberships.\n *\n * Default sorts by `groupId` in descending order.\n * @public\n * @requiredField memberId\n * @param memberId - Site member ID.\n * @param options - Paging options.\n * @fqn wix.social.groups.api.v2.GroupMembersService.ListMemberships\n */\nexport async function listMemberships(\n  memberId: string,\n  options?: ListMembershipsOptions\n): Promise<\n  NonNullablePaths<\n    ListMembershipsResponse,\n    | `memberships`\n    | `memberships.${number}.groupId`\n    | `memberships.${number}.status`\n    | `memberships.${number}.role.value`,\n    5\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    memberId: memberId,\n    limit: options?.limit,\n    offset: options?.offset,\n  });\n\n  const reqOpts =\n    ambassadorWixSocialGroupsV2GroupMember.listMemberships(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: {\n          memberId: '$[0]',\n          limit: '$[1].limit',\n          offset: '$[1].offset',\n        },\n        singleArgumentUnchanged: false,\n      },\n      ['memberId', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface ListMembershipsOptions {\n  /**\n   * Number of items to load. Maximum `100`.\n   * @max 100\n   */\n  limit?: number | null;\n  /** Number of memberships to skip in the list. */\n  offset?: number | null;\n}\n\n/**\n * Retrieves a list of up to 100 members and their membership status, given the provided paging and filtering.\n *\n * The queryMemberships function returns a Promise that resolves to a list of memberships.\n *\n * >**Note:** Site members can only query their own memberships.\n *\n * | Property                    | Supported Filters & Sorting                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |\n * | --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n * | `status`                    | [`eq()`](#membershipsquerybuilder/eq), [`ne()`](#membershipsquerybuilder/ne)             |\n * | `role`                      | [`eq()`](#membershipsquerybuilder/eq), [`ne()`](#membershipsquerybuilder/ne)             |\n *\n * @public\n * @requiredField memberId\n * @param memberId - Site member ID.\n * @fqn wix.social.groups.api.v2.GroupMembersService.QueryMemberships\n */\nexport async function queryMemberships(\n  memberId: string,\n  options?: QueryMembershipsOptions\n): Promise<\n  NonNullablePaths<\n    QueryMembershipsResponse,\n    | `memberships`\n    | `memberships.${number}.groupId`\n    | `memberships.${number}.status`\n    | `memberships.${number}.role.value`,\n    5\n  >\n> {\n  // @ts-ignore\n  const { httpClient, sideEffects } = arguments[2] as {\n    httpClient: HttpClient;\n    sideEffects?: any;\n  };\n\n  const payload = renameKeysFromSDKRequestToRESTRequest({\n    memberId: memberId,\n    query: options?.query,\n  });\n\n  const reqOpts =\n    ambassadorWixSocialGroupsV2GroupMember.queryMemberships(payload);\n\n  sideEffects?.onSiteCall?.();\n  try {\n    const result = await httpClient.request(reqOpts);\n    sideEffects?.onSuccess?.(result);\n\n    return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n  } catch (err: any) {\n    const transformedError = sdkTransformError(\n      err,\n      {\n        spreadPathsToArguments: {},\n        explicitPathsToArguments: { memberId: '$[0]', query: '$[1].query' },\n        singleArgumentUnchanged: false,\n      },\n      ['memberId', 'options']\n    );\n    sideEffects?.onError?.(err);\n\n    throw transformedError;\n  }\n}\n\nexport interface QueryMembershipsOptions {\n  query?: Query;\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { transformRESTTimestampToSDKTimestamp } from '@wix/sdk-runtime/transformations/timestamp';\nimport { transformPaths } from '@wix/sdk-runtime/transformations/transform-paths';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixSocialGroupsApiV2GroupMembersServiceUrl(\n  opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n  const domainToMappings = {\n    _: [\n      {\n        srcPath: '/_api_group-members-proxy',\n        destPath: '',\n      },\n      {\n        srcPath: '/_api/social-groups-proxy/members',\n        destPath: '',\n      },\n    ],\n    'api._api_base_domain_': [\n      {\n        srcPath: '/group-members-proxy',\n        destPath: '',\n      },\n    ],\n    '*.dev.wix-code.com': [\n      {\n        srcPath: '/_api/social-groups-proxy/members',\n        destPath: '',\n      },\n    ],\n    'editor-flow.wixapps.net': [\n      {\n        srcPath: '/_api/social-groups-proxy/members',\n        destPath: '',\n      },\n    ],\n    'editor._base_domain_': [\n      {\n        srcPath: '/_api/social-groups-proxy/members',\n        destPath: '',\n      },\n    ],\n    'blocks._base_domain_': [\n      {\n        srcPath: '/_api/social-groups-proxy/members',\n        destPath: '',\n      },\n    ],\n    'create.editorx': [\n      {\n        srcPath: '/_api/social-groups-proxy/members',\n        destPath: '',\n      },\n    ],\n    'editor.wixapps.net': [\n      {\n        srcPath: '/_api/social-groups-proxy/members',\n        destPath: '',\n      },\n    ],\n    'groups.wixapps.net': [\n      {\n        srcPath: '/_api/social-groups-proxy/members',\n        destPath: '',\n      },\n    ],\n    'manage._base_domain_': [\n      {\n        srcPath: '/_api/social-groups-proxy/members',\n        destPath: '',\n      },\n      {\n        srcPath: '/social-groups-proxy/api/members',\n        destPath: '',\n      },\n    ],\n    'www._base_domain_': [\n      {\n        srcPath: '/_api/social-groups-proxy/members',\n        destPath: '',\n      },\n    ],\n    'www.wixapis.com': [\n      {\n        srcPath: '/social-groups-proxy/members',\n        destPath: '',\n      },\n    ],\n  };\n\n  return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_groups_members';\n\n/**\n * Add site members to a specific group. Public members are added right away, while private members receive an invitation to join the group.\n *\n * For `SECRET` groups, group admins and group members can add additional members to their group.\n * For `PUBLIC` and `PRIVATE` groups, only group admins can add additional members to their group.\n * They can also allow all group members to add a new member to the group with `group.settings`.\n */\nexport function addGroupMembers(payload: object): RequestOptionsFactory<any> {\n  function __addGroupMembers({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.social_groups.v2.group_member',\n      method: 'POST' as any,\n      methodFqn: 'wix.social.groups.api.v2.GroupMembersService.AddGroupMembers',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixSocialGroupsApiV2GroupMembersServiceUrl({\n        protoPath: '/v2/groups/{groupId}/members',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [{ path: 'members.joinedDate' }],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __addGroupMembers;\n}\n\n/**\n * Removes site members from a specific group.\n *\n * Only group admins can remove members from their group.\n */\nexport function removeGroupMembers(\n  payload: object\n): RequestOptionsFactory<any> {\n  function __removeGroupMembers({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.social_groups.v2.group_member',\n      method: 'DELETE' as any,\n      methodFqn:\n        'wix.social.groups.api.v2.GroupMembersService.RemoveGroupMembers',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixSocialGroupsApiV2GroupMembersServiceUrl({\n        protoPath: '/v2/groups/{groupId}/members',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n    };\n\n    return metadata;\n  }\n\n  return __removeGroupMembers;\n}\n\n/**\n * Retrieves a list of up to 100 group members, given the provided paging.\n *\n * For groups with `group.privacyStatus` set to `SECRET`, only group admins and group members can see the group and its content.\n *\n * Default sorts by `joinedDate` in descending order.\n */\nexport function listGroupMembers(payload: object): RequestOptionsFactory<any> {\n  function __listGroupMembers({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.social_groups.v2.group_member',\n      method: 'GET' as any,\n      methodFqn:\n        'wix.social.groups.api.v2.GroupMembersService.ListGroupMembers',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixSocialGroupsApiV2GroupMembersServiceUrl({\n        protoPath: '/v2/groups/{groupId}/members',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [{ path: 'members.joinedDate' }],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __listGroupMembers;\n}\n\n/**\n * Retrieves a list of up to 100 group members, given the provided paging, sorting and filtering.\n *\n *\n * Creates a query to retrieve a list of group members.\n *\n * > **Note:** For `SECRET` groups, only group admins and group members can query group members. <!-- However, if the `suppressAuth` option is set to `true`, all permissions are overwritten, and all site members (including non-group members) can query group members.  -->\n *\n * The `queryGroupMembers()` function builds a query to retrieve a list of all group members, and returns a [GroupMembersQueryBuilder](#membersquerybuilder) object.\n *\n * The returned object contains the query definition which is typically used to run the query using the [`find()`](#membersquerybuilder/find) function.\n *\n * 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.\n *\n *  `queryGroupMembers()` runs with these `GroupMembersQueryBuilder` defaults, which you can override:\n *  + [`limit(100)`](/members-query-builder/limit)\n *  + [`descending(\"joinedDate\")`](/members-query-builder/descending)\n *\n * 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`.\n */\nexport function queryGroupMembers(payload: object): RequestOptionsFactory<any> {\n  function __queryGroupMembers({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.social_groups.v2.group_member',\n      method: 'POST' as any,\n      methodFqn:\n        'wix.social.groups.api.v2.GroupMembersService.QueryGroupMembers',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixSocialGroupsApiV2GroupMembersServiceUrl({\n        protoPath: '/v2/groups/{groupId}/members/query',\n        data: payload,\n        host,\n      }),\n      data: payload,\n      transformResponse: (payload: any) =>\n        transformPaths(payload, [\n          {\n            transformFn: transformRESTTimestampToSDKTimestamp,\n            paths: [{ path: 'members.joinedDate' }],\n          },\n        ]),\n    };\n\n    return metadata;\n  }\n\n  return __queryGroupMembers;\n}\n\n/**\n * Retrieves a list of group memberships of a site member.\n *\n * Only Wix users can retrieve a site member's group memberships.\n * Site members can only retrieve a list of their own group memberships.\n *\n * Default sorts by `groupId` in descending order.\n */\nexport function listMemberships(payload: object): RequestOptionsFactory<any> {\n  function __listMemberships({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.social_groups.v2.group_member',\n      method: 'GET' as any,\n      methodFqn: 'wix.social.groups.api.v2.GroupMembersService.ListMemberships',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixSocialGroupsApiV2GroupMembersServiceUrl({\n        protoPath: '/v2/members/{memberId}/memberships',\n        data: payload,\n        host,\n      }),\n      params: toURLSearchParams(payload),\n    };\n\n    return metadata;\n  }\n\n  return __listMemberships;\n}\n\n/**\n * Retrieves a list of up to 100 members and their membership status, given the provided paging and filtering.\n *\n * The queryMemberships function returns a Promise that resolves to a list of memberships.\n *\n * >**Note:** Site members can only query their own memberships.\n *\n * | Property                    | Supported Filters & Sorting                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |\n * | --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n * | `status`                    | [`eq()`](#membershipsquerybuilder/eq), [`ne()`](#membershipsquerybuilder/ne)             |\n * | `role`                      | [`eq()`](#membershipsquerybuilder/eq), [`ne()`](#membershipsquerybuilder/ne)             |\n *\n */\nexport function queryMemberships(payload: object): RequestOptionsFactory<any> {\n  function __queryMemberships({ host }: any) {\n    const metadata = {\n      entityFqdn: 'wix.social_groups.v2.group_member',\n      method: 'POST' as any,\n      methodFqn:\n        'wix.social.groups.api.v2.GroupMembersService.QueryMemberships',\n      packageName: PACKAGE_NAME,\n      migrationOptions: {\n        optInTransformResponse: true,\n      },\n      url: resolveWixSocialGroupsApiV2GroupMembersServiceUrl({\n        protoPath: '/v2/members/{memberId}/memberships/query',\n        data: payload,\n        host,\n      }),\n      data: payload,\n    };\n\n    return metadata;\n  }\n\n  return __queryMemberships;\n}\n","import {\n  addGroupMembers as publicAddGroupMembers,\n  removeGroupMembers as publicRemoveGroupMembers,\n  listGroupMembers as publicListGroupMembers,\n  queryGroupMembers as publicQueryGroupMembers,\n  typedQueryGroupMembers as publicTypedQueryGroupMembers,\n  listMemberships as publicListMemberships,\n  queryMemberships as publicQueryMemberships,\n} from './social-groups-v2-group-member-members.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { createEventModule } from '@wix/sdk-runtime/event-definition-modules';\nimport {\n  BuildRESTFunction,\n  MaybeContext,\n  BuildEventDefinition,\n} from '@wix/sdk-types';\nimport { onGroupMemberAdded as publicOnGroupMemberAdded } from './social-groups-v2-group-member-members.public.js';\nimport { onGroupMemberRemoved as publicOnGroupMemberRemoved } from './social-groups-v2-group-member-members.public.js';\n\nexport const addGroupMembers: MaybeContext<\n  BuildRESTFunction<typeof publicAddGroupMembers> & typeof publicAddGroupMembers\n> = /*#__PURE__*/ createRESTModule(publicAddGroupMembers);\nexport const removeGroupMembers: MaybeContext<\n  BuildRESTFunction<typeof publicRemoveGroupMembers> &\n    typeof publicRemoveGroupMembers\n> = /*#__PURE__*/ createRESTModule(publicRemoveGroupMembers);\nexport const listGroupMembers: MaybeContext<\n  BuildRESTFunction<typeof publicListGroupMembers> &\n    typeof publicListGroupMembers\n> = /*#__PURE__*/ createRESTModule(publicListGroupMembers);\nexport const queryGroupMembers: MaybeContext<\n  BuildRESTFunction<typeof publicQueryGroupMembers> &\n    typeof publicQueryGroupMembers\n> = /*#__PURE__*/ createRESTModule(publicQueryGroupMembers);\nexport const typedQueryGroupMembers: MaybeContext<\n  BuildRESTFunction<typeof publicTypedQueryGroupMembers> &\n    typeof publicTypedQueryGroupMembers\n> = /*#__PURE__*/ createRESTModule(publicTypedQueryGroupMembers);\nexport const listMemberships: MaybeContext<\n  BuildRESTFunction<typeof publicListMemberships> & typeof publicListMemberships\n> = /*#__PURE__*/ createRESTModule(publicListMemberships);\nexport const queryMemberships: MaybeContext<\n  BuildRESTFunction<typeof publicQueryMemberships> &\n    typeof publicQueryMemberships\n> = /*#__PURE__*/ createRESTModule(publicQueryMemberships);\n/**\n * Triggered when a new member is added to a group, either directly by an admin or when a Join Request is approved.\n */\nexport const onGroupMemberAdded: BuildEventDefinition<\n  typeof publicOnGroupMemberAdded\n> &\n  typeof publicOnGroupMemberAdded = createEventModule(publicOnGroupMemberAdded);\n/**\n * Triggered when a member is removed from a group.\n */\nexport const onGroupMemberRemoved: BuildEventDefinition<\n  typeof publicOnGroupMemberRemoved\n> &\n  typeof publicOnGroupMemberRemoved = createEventModule(\n  publicOnGroupMemberRemoved\n);\n\nexport {\n  Role,\n  JoinBy,\n  SortOrder,\n  MembershipStatus,\n  WebhookIdentityType,\n} from './social-groups-v2-group-member-members.universal.js';\nexport {\n  GroupMember,\n  GroupRole,\n  SocialGroupsEvent,\n  SocialGroupsEventPayloadOneOf,\n  MemberJoinedGroup,\n  MembersAddedToGroup,\n  JoinRequestsApproved,\n  MembersInvitedToGroup,\n  JoinRequest,\n  MembershipQuestionAnswer,\n  JoinResponse,\n  MemberJoined,\n  LeaveRequest,\n  LeaveResponse,\n  MemberLeft,\n  AddGroupMembersRequest,\n  AddGroupMembersResponse,\n  MemberAdded,\n  RemoveGroupMembersRequest,\n  RemoveGroupMembersResponse,\n  MemberRemoved,\n  ListGroupMembersRequest,\n  ListGroupMembersResponse,\n  PagingMetadata,\n  QueryGroupMembersRequest,\n  Query,\n  Sorting,\n  Paging,\n  QueryGroupMembersResponse,\n  QueryNonGroupMembersRequest,\n  QueryNonGroupMembersResponse,\n  ListMembershipsRequest,\n  ListMembershipsResponse,\n  Membership,\n  QueryMembershipsRequest,\n  QueryMembershipsResponse,\n  QueryMyMembershipRequest,\n  QueryMyMembershipResponse,\n  DomainEvent,\n  DomainEventBodyOneOf,\n  EntityCreatedEvent,\n  RestoreInfo,\n  EntityUpdatedEvent,\n  EntityDeletedEvent,\n  ActionEvent,\n  MessageEnvelope,\n  IdentificationData,\n  IdentificationDataIdOneOf,\n  AccountInfo,\n  BaseEventMetadata,\n  EventMetadata,\n  AccountInfoMetadata,\n  GroupMemberAddedEnvelope,\n  GroupMemberRemovedEnvelope,\n  ListGroupMembersOptions,\n  MembersQueryResult,\n  MembersQueryBuilder,\n  GroupMemberQuerySpec,\n  ListMembershipsOptions,\n  QueryMembershipsOptions,\n} from './social-groups-v2-group-member-members.universal.js';\nexport { utils } from './social-groups-v2-group-member-members.universal.js';\nexport {\n  RoleWithLiterals,\n  JoinByWithLiterals,\n  SortOrderWithLiterals,\n  MembershipStatusWithLiterals,\n  WebhookIdentityTypeWithLiterals,\n  CommonQueryWithEntityContext,\n  GroupMemberQuery,\n} from './social-groups-v2-group-member-members.universal.js';\n"],"mappings":"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","names":["renameKeysFromRESTResponseToSDKResponse","transformRESTTimestampToSDKTimestamp","transformPaths","payload","transformPaths","Role","JoinBy","SortOrder","MembershipStatus","WebhookIdentityType","addGroupMembers","removeGroupMembers","listGroupMembers","queryGroupMembers","listMemberships","queryMemberships","addGroupMembers","removeGroupMembers","listGroupMembers","queryGroupMembers","typedQueryGroupMembers","listMemberships","queryMemberships","renameKeysFromRESTResponseToSDKResponse","transformPaths","transformRESTTimestampToSDKTimestamp","addGroupMembers","removeGroupMembers","listGroupMembers","queryGroupMembers","typedQueryGroupMembers","listMemberships","queryMemberships","onGroupMemberAdded","onGroupMemberRemoved"]}