import { RequestOptionsFactory } from '@wix/sdk-types'; /** * Creates a group. * * When a group is created, the newly created group is added to the [Groups List](https://support.wix.com/en/article/wix-groups-about-your-groups-pages#groups-group-list) page * of a site. * * Specify a `creatorId` to set the group's creator. The group's creator will automatically become a group admin, see Terminology ([REST](https://dev.wix.com/docs/rest/crm/community/groups/terminology) | [SDK](https://dev.wix.com/docs/sdk/backend-modules/groups/terminology)). * * Wix users determine who can create a group. * This setting can be found in [a site's Dashboard](https://www.wix.com/my-account/site-selector/?buttonText=Select%20Site&title=Select%20a%20Site&autoSelectOnSingleSite=true&actionUrl=https:%2F%2Fwww.wix.com%2Fdashboard%2F%7B%7BmetaSiteId%7D%7D%2Fwix-groups/settings?) underĀ **Groups > General Settings > Group Creation**. * If set to **members with approval**, site members can create a group with the Create GroupĀ method, and the group becomes a `createRequest` with a status of `PENDING`. * A Wix user either approves or rejects the request to create a group. * If set to **all site members**, site members can create a group with the Create Group method and no approval is required. * If set to **only admins**, only Wix users can create a group with the Create Group method. * Default is set to **members with approval**. */ export declare function createGroup(payload: object): RequestOptionsFactory; /** * Updates a group. * * When a public or private group's name is updated, the slug is updated to reflect the new group name. * Only group admins can update their group. * * > **Notes:** * > + When `group.privacyStatus` is updated from `PRIVATE` to `PUBLIC`, all pending group join requests are automatically approved. * > + When `group.privacyStatus` is updated from `PRIVATE` to `SECRET`, all pending group join requests are automatically rejected. */ export declare function updateGroup(payload: object): RequestOptionsFactory; /** * Hides a group from the [Groups List](https://support.wix.com/en/article/wix-groups-about-your-groups-pages#groups-group-list) or cancels a group request. * * >**Notes:** * > + Only group admins can delete their group. * > + The group will no longer be visible in the live site or the dashboard. * > + It is not possible to restore a deleted group with the Update Group method. * > + It is still possible to retrieve the group with the Get Group, List Groups, and Query Groups methods. */ export declare function deleteGroup(payload: object): RequestOptionsFactory; /** * Retrieves a group. * * For groups with `group.privacyStatus` set to `SECRET`, only group admins and group members can see the group and its content. */ export declare function getGroup(payload: object): RequestOptionsFactory; /** * Retrieves a group by slug. * * The slug is the end of a group's URL that refers to a specific group. * For example, if a group's URL is `https:/example.com/groups/{my-fitness-group}`, the slug is `my-fitness-group`. * Slugs are case-sensitive. It is generally based on the group name, but for secret groups it is an autogenerated string of characters, * for example, `https:/example.com/groups/{5D3yTX}`. * * For groups with `group.privacyStatus` set to `SECRET`, only group admins and group members can see the group and its content. */ export declare function getGroupBySlug(payload: object): RequestOptionsFactory; /** * Retrieves up to 100 groups. * * * Default sorts by `_createdDate` in descending order. For `SECRET` groups, only group admins and group members can see a list of groups and their content. * * > **Note:** This function's parameters are positional, and must be specified in the sequence shown in the syntax below. When specifying a parameter, use `null` as a placeholder for any unspecified parameters. For example, to specify limit only, call `listGroups(paging, null)`. */ export declare function listGroups(payload: object): RequestOptionsFactory; /** * Retrieves up to 100 groups, given the provided paging, filtering, and sorting. * * Supported fields for filtering: * - `title` * * Supported fields for sorting: * - `title` * - `createdDate` * - `membersCount` * - `recentActivityDate` * * For groups with `group.privacyStatus` set to `SECRET`, only group admins and group members can see the group and its content. */ export declare function queryGroups(payload: object): RequestOptionsFactory;