import type { ArrayToUnion, Identifier, ObjectPrettify } from "typeforge";
import type { GroupMembers_Filter } from "./groups.types";
/**
 * Gets information about a user from their id.
 * @endpoint GET /v2/groups/{groupId}
 *
 * @param groupId The id of the group to get info about.
 *
 * @example  const { data:groupInfo } = await GroupsApi.groupInfo({ groupId: 5850082 });
 * @exampleData {"path":"groups/5850082","createTime":"2020-03-29T18:15:20.100Z","updateTime":"2024-05-12T13:17:41.639Z","id":"5850082","displayName":"MightyPart Games","description":"Hello World!","owner":"users/45348281","memberCount":99,"publicEntryAllowed":true,"locked":false,"verified":false}
 * @exampleRawBody {"path":"groups/5850082","createTime":"2020-03-29T18:15:20.100Z","updateTime":"2024-05-12T13:17:41.639132600Z","id":"5850082","displayName":"MightyPart Games","description":"Hello World!","owner":"users/45348281","memberCount":99,"publicEntryAllowed":true,"locked":false,"verified":false}
 */
export declare const groupInfo: <GroupId extends Identifier>(this: any, args: {
    groupId: GroupId;
}) => Promise<{
    data: {
        path: `groups/${GroupId}`;
        createTime: Date;
        updateTime: Date;
        id: GroupId;
        displayName: string;
        description: string;
        owner: `users/${number}`;
        memberCount: number;
        publicEntryAllowed: boolean;
        locked: boolean;
        verified: boolean;
    };
    response: {
        fullResponse: unknown;
        url: `https://${string}`;
        method: import("../../../utils/utils.types").RestMethod;
        success: boolean;
        statusCode: number;
        headers: Headers;
        body: {
            path: `groups/${GroupId}`;
            createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
            updateTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
            id: GroupId;
            displayName: string;
            description: string;
            owner: `users/${number}`;
            memberCount: number;
            publicEntryAllowed: boolean;
            locked: boolean;
            verified: boolean;
        };
    };
} & {
    again: () => Promise<{
        data: {
            path: `groups/${GroupId}`;
            createTime: Date;
            updateTime: Date;
            id: GroupId;
            displayName: string;
            description: string;
            owner: `users/${number}`;
            memberCount: number;
            publicEntryAllowed: boolean;
            locked: boolean;
            verified: boolean;
        };
        response: {
            fullResponse: unknown;
            url: `https://${string}`;
            method: import("../../../utils/utils.types").RestMethod;
            success: boolean;
            statusCode: number;
            headers: Headers;
            body: {
                path: `groups/${GroupId}`;
                createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                updateTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                id: GroupId;
                displayName: string;
                description: string;
                owner: `users/${number}`;
                memberCount: number;
                publicEntryAllowed: boolean;
                locked: boolean;
                verified: boolean;
            };
        };
    }>;
}>;
/**
 * Gets members for a group.
 * @endpoint GET /v2/groups/{groupId}/memberships
 *
 * @param groupId The id of the group to get join requests for.
 * @param limit The maximum number of group memberships to return. The service might return fewer than this value. If unspecified, at most 10 group memberships are returned. The maximum value is 100 and higher values are set to 100.
 * @param filter This field may be set in order to filter the resources returned.
 * @param cursor A page token, received from a previous call, to retrieve a subsequent page.
 *
 * @example const { data:members } = await GroupsApi.groupMembers({ groupId: 5850082, filter: { userId: 45348281 } })
 * @exampleData [{"path":"groups/5850082/memberships/NDUzNDgyODE","createTime":"2020-03-29T18:15:20.020Z","updateTime":"2023-09-15T07:03:50.583Z","user":"users/45348281","role":"groups/5850082/roles/38353811"}]
 * @exampleRawBody {"groupMemberships":[{"path":"groups/5850082/memberships/NDUzNDgyODE","createTime":"2020-03-29T18:15:20.020Z","updateTime":"2023-09-15T07:03:50.583Z","user":"users/45348281","role":"groups/5850082/roles/38353811"}],"nextPageToken":""}
 */
export declare const groupMembers: <GroupId extends "-" | Identifier, const Filter extends GroupId extends "-" ? {
    userIds: Identifier[];
} : ObjectPrettify<GroupMembers_Filter>, const UserId extends Identifier = "userIds" extends keyof Filter ? Filter["userIds"] extends readonly Identifier[] ? ArrayToUnion<Filter["userIds"]> : Identifier : "userId" extends keyof Filter ? Filter["userId"] extends Identifier ? Filter["userId"] : Identifier : Identifier>(this: any, args: {
    groupId: GroupId;
    limit?: UserId | undefined;
    filter?: Filter | undefined;
    cursor?: string | undefined;
}) => Promise<{
    data: {
        path: `groups/${GroupId extends "-" ? Identifier : GroupId}/memberships/${string}`;
        createTime: Date;
        updateTime: Date;
        user: `users/${UserId}`;
        role: `groups/${GroupId extends "-" ? Identifier : GroupId}/roles/${string}`;
    }[];
    response: {
        fullResponse: unknown;
        url: `https://${string}`;
        method: import("../../../utils/utils.types").RestMethod;
        success: boolean;
        statusCode: number;
        headers: Headers;
        body: {
            groupMemberships: {
                path: `groups/${GroupId extends "-" ? Identifier : GroupId}/memberships/${string}`;
                createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                updateTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                user: `users/${UserId}`;
                role: `groups/${GroupId extends "-" ? Identifier : GroupId}/roles/${string}`;
            }[];
            nextPageToken: string;
        };
    };
    cursors: {
        previous: import("../../apiGroup/apiGroup.types").Cursor;
        next: import("../../apiGroup/apiGroup.types").Cursor;
    };
    [Symbol.asyncIterator]: () => AsyncGenerator<{
        data: {
            path: `groups/${GroupId extends "-" ? Identifier : GroupId}/memberships/${string}`;
            createTime: Date;
            updateTime: Date;
            user: `users/${UserId}`;
            role: `groups/${GroupId extends "-" ? Identifier : GroupId}/roles/${string}`;
        }[];
        response: {
            fullResponse: unknown;
            url: `https://${string}`;
            method: import("../../../utils/utils.types").RestMethod;
            success: boolean;
            statusCode: number;
            headers: Headers;
            body: {
                groupMemberships: {
                    path: `groups/${GroupId extends "-" ? Identifier : GroupId}/memberships/${string}`;
                    createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                    updateTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                    user: `users/${UserId}`;
                    role: `groups/${GroupId extends "-" ? Identifier : GroupId}/roles/${string}`;
                }[];
                nextPageToken: string;
            };
        };
        cursors: {
            previous: import("../../apiGroup/apiGroup.types").Cursor;
            next: import("../../apiGroup/apiGroup.types").Cursor;
        };
        [Symbol.asyncIterator]: null;
    } & {
        again: () => Promise<{
            data: {
                path: `groups/${GroupId extends "-" ? Identifier : GroupId}/memberships/${string}`;
                createTime: Date;
                updateTime: Date;
                user: `users/${UserId}`;
                role: `groups/${GroupId extends "-" ? Identifier : GroupId}/roles/${string}`;
            }[];
            response: {
                fullResponse: unknown;
                url: `https://${string}`;
                method: import("../../../utils/utils.types").RestMethod;
                success: boolean;
                statusCode: number;
                headers: Headers;
                body: {
                    groupMemberships: {
                        path: `groups/${GroupId extends "-" ? Identifier : GroupId}/memberships/${string}`;
                        createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                        updateTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                        user: `users/${UserId}`;
                        role: `groups/${GroupId extends "-" ? Identifier : GroupId}/roles/${string}`;
                    }[];
                    nextPageToken: string;
                };
            };
        }>;
    }, any, unknown>;
} & {
    again: () => Promise<{
        data: {
            path: `groups/${GroupId extends "-" ? Identifier : GroupId}/memberships/${string}`;
            createTime: Date;
            updateTime: Date;
            user: `users/${UserId}`;
            role: `groups/${GroupId extends "-" ? Identifier : GroupId}/roles/${string}`;
        }[];
        response: {
            fullResponse: unknown;
            url: `https://${string}`;
            method: import("../../../utils/utils.types").RestMethod;
            success: boolean;
            statusCode: number;
            headers: Headers;
            body: {
                groupMemberships: {
                    path: `groups/${GroupId extends "-" ? Identifier : GroupId}/memberships/${string}`;
                    createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                    updateTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                    user: `users/${UserId}`;
                    role: `groups/${GroupId extends "-" ? Identifier : GroupId}/roles/${string}`;
                }[];
                nextPageToken: string;
            };
        };
    }>;
}>;
/**
 * Gets roles for a group.
 * @endpoint GET /v2/groups/{groupId}/roles
 *
 * @param groupId The id of the group to get roles for.
 * @param limit The maximum number of group roles to return. The service might return fewer than this value. If unspecified, at most 10 group roles are returned. The maximum value is 20 and higher values are set to 20.
 * @param cursor A page token, received from a previous call, to retrieve a subsequent page.
 *
 * @example const { data:roles } = await GroupsApi.groupRoles({ groupId: 5850082, limit: 1 })
 * @exampleData [{"path":"groups/5850082/roles/38353811","createTime":"2020-03-29T13:15:20.020Z","updateTime":"2020-09-20T08:04:35.850Z","id":"38353811","displayName":"NamelessGuy2005 - Scriptor","description":"","rank":255,"memberCount":1,"permissions":{"viewWallPosts":true,"createWallPosts":true,"deleteWallPosts":true,"viewGroupShout":true,"createGroupShout":true,"changeRank":true,"acceptRequests":true,"exileMembers":true,"manageRelationships":true,"viewAuditLog":true,"spendGroupFunds":true,"advertiseGroup":true,"createAvatarItems":true,"manageAvatarItems":true,"manageGroupUniverses":true,"viewUniverseAnalytics":true,"createApiKeys":true,"manageApiKeys":true}}]
 * @exampleRawBody {"groupRoles":[{"path":"groups/5850082/roles/38353811","createTime":"2020-03-29T13:15:20.020Z","updateTime":"2020-09-20T08:04:35.850Z","id":"38353811","displayName":"NamelessGuy2005 - Scriptor","description":"","rank":255,"memberCount":1,"permissions":{"viewWallPosts":true,"createWallPosts":true,"deleteWallPosts":true,"viewGroupShout":true,"createGroupShout":true,"changeRank":true,"acceptRequests":true,"exileMembers":true,"manageRelationships":true,"viewAuditLog":true,"spendGroupFunds":true,"advertiseGroup":true,"createAvatarItems":true,"manageAvatarItems":true,"manageGroupUniverses":true,"viewUniverseAnalytics":true,"createApiKeys":true,"manageApiKeys":true}}],"nextPageToken":"38353811"}
 */
export declare const groupRoles: <GroupId extends Identifier>(this: any, args: {
    groupId: GroupId;
    limit?: number | undefined;
    cursor?: string | undefined;
}) => Promise<{
    data: {
        path: `groups/${GroupId}/roles/${number}`;
        createTime: Date;
        updateTime: Date;
        id: Identifier;
        displayName: string;
        description: string;
        rank: number;
        memberCount: number;
        permissions: {
            viewWallPosts: boolean;
            createWallPosts: boolean;
            deleteWallPosts: boolean;
            viewGroupShout: boolean;
            createGroupShout: boolean;
            changeRank: boolean;
            acceptRequests: boolean;
            exileMembers: boolean;
            manageRelationships: boolean;
            viewAuditLog: boolean;
            spendGroupFunds: boolean;
            advertiseGroup: boolean;
            createAvatarItems: boolean;
            manageAvatarItems: boolean;
            manageGroupUniverses: boolean;
            viewUniverseAnalytics: boolean;
            createApiKeys: boolean;
            manageApiKeys: boolean;
        };
    }[];
    response: {
        fullResponse: unknown;
        url: `https://${string}`;
        method: import("../../../utils/utils.types").RestMethod;
        success: boolean;
        statusCode: number;
        headers: Headers;
        body: {
            groupRoles: {
                path: `groups/${GroupId}/roles/${number}`;
                createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                updateTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                id: Identifier;
                displayName: string;
                description: string;
                rank: number;
                memberCount: number;
                permissions: {
                    viewWallPosts: boolean;
                    createWallPosts: boolean;
                    deleteWallPosts: boolean;
                    viewGroupShout: boolean;
                    createGroupShout: boolean;
                    changeRank: boolean;
                    acceptRequests: boolean;
                    exileMembers: boolean;
                    manageRelationships: boolean;
                    viewAuditLog: boolean;
                    spendGroupFunds: boolean;
                    advertiseGroup: boolean;
                    createAvatarItems: boolean;
                    manageAvatarItems: boolean;
                    manageGroupUniverses: boolean;
                    viewUniverseAnalytics: boolean;
                    createApiKeys: boolean;
                    manageApiKeys: boolean;
                };
            }[];
            nextPageToken: string;
        };
    };
    cursors: {
        previous: import("../../apiGroup/apiGroup.types").Cursor;
        next: import("../../apiGroup/apiGroup.types").Cursor;
    };
    [Symbol.asyncIterator]: () => AsyncGenerator<{
        data: {
            path: `groups/${GroupId}/roles/${number}`;
            createTime: Date;
            updateTime: Date;
            id: Identifier;
            displayName: string;
            description: string;
            rank: number;
            memberCount: number;
            permissions: {
                viewWallPosts: boolean;
                createWallPosts: boolean;
                deleteWallPosts: boolean;
                viewGroupShout: boolean;
                createGroupShout: boolean;
                changeRank: boolean;
                acceptRequests: boolean;
                exileMembers: boolean;
                manageRelationships: boolean;
                viewAuditLog: boolean;
                spendGroupFunds: boolean;
                advertiseGroup: boolean;
                createAvatarItems: boolean;
                manageAvatarItems: boolean;
                manageGroupUniverses: boolean;
                viewUniverseAnalytics: boolean;
                createApiKeys: boolean;
                manageApiKeys: boolean;
            };
        }[];
        response: {
            fullResponse: unknown;
            url: `https://${string}`;
            method: import("../../../utils/utils.types").RestMethod;
            success: boolean;
            statusCode: number;
            headers: Headers;
            body: {
                groupRoles: {
                    path: `groups/${GroupId}/roles/${number}`;
                    createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                    updateTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                    id: Identifier;
                    displayName: string;
                    description: string;
                    rank: number;
                    memberCount: number;
                    permissions: {
                        viewWallPosts: boolean;
                        createWallPosts: boolean;
                        deleteWallPosts: boolean;
                        viewGroupShout: boolean;
                        createGroupShout: boolean;
                        changeRank: boolean;
                        acceptRequests: boolean;
                        exileMembers: boolean;
                        manageRelationships: boolean;
                        viewAuditLog: boolean;
                        spendGroupFunds: boolean;
                        advertiseGroup: boolean;
                        createAvatarItems: boolean;
                        manageAvatarItems: boolean;
                        manageGroupUniverses: boolean;
                        viewUniverseAnalytics: boolean;
                        createApiKeys: boolean;
                        manageApiKeys: boolean;
                    };
                }[];
                nextPageToken: string;
            };
        };
        cursors: {
            previous: import("../../apiGroup/apiGroup.types").Cursor;
            next: import("../../apiGroup/apiGroup.types").Cursor;
        };
        [Symbol.asyncIterator]: null;
    } & {
        again: () => Promise<{
            data: {
                path: `groups/${GroupId}/roles/${number}`;
                createTime: Date;
                updateTime: Date;
                id: Identifier;
                displayName: string;
                description: string;
                rank: number;
                memberCount: number;
                permissions: {
                    viewWallPosts: boolean;
                    createWallPosts: boolean;
                    deleteWallPosts: boolean;
                    viewGroupShout: boolean;
                    createGroupShout: boolean;
                    changeRank: boolean;
                    acceptRequests: boolean;
                    exileMembers: boolean;
                    manageRelationships: boolean;
                    viewAuditLog: boolean;
                    spendGroupFunds: boolean;
                    advertiseGroup: boolean;
                    createAvatarItems: boolean;
                    manageAvatarItems: boolean;
                    manageGroupUniverses: boolean;
                    viewUniverseAnalytics: boolean;
                    createApiKeys: boolean;
                    manageApiKeys: boolean;
                };
            }[];
            response: {
                fullResponse: unknown;
                url: `https://${string}`;
                method: import("../../../utils/utils.types").RestMethod;
                success: boolean;
                statusCode: number;
                headers: Headers;
                body: {
                    groupRoles: {
                        path: `groups/${GroupId}/roles/${number}`;
                        createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                        updateTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                        id: Identifier;
                        displayName: string;
                        description: string;
                        rank: number;
                        memberCount: number;
                        permissions: {
                            viewWallPosts: boolean;
                            createWallPosts: boolean;
                            deleteWallPosts: boolean;
                            viewGroupShout: boolean;
                            createGroupShout: boolean;
                            changeRank: boolean;
                            acceptRequests: boolean;
                            exileMembers: boolean;
                            manageRelationships: boolean;
                            viewAuditLog: boolean;
                            spendGroupFunds: boolean;
                            advertiseGroup: boolean;
                            createAvatarItems: boolean;
                            manageAvatarItems: boolean;
                            manageGroupUniverses: boolean;
                            viewUniverseAnalytics: boolean;
                            createApiKeys: boolean;
                            manageApiKeys: boolean;
                        };
                    }[];
                    nextPageToken: string;
                };
            };
        }>;
    }, any, unknown>;
} & {
    again: () => Promise<{
        data: {
            path: `groups/${GroupId}/roles/${number}`;
            createTime: Date;
            updateTime: Date;
            id: Identifier;
            displayName: string;
            description: string;
            rank: number;
            memberCount: number;
            permissions: {
                viewWallPosts: boolean;
                createWallPosts: boolean;
                deleteWallPosts: boolean;
                viewGroupShout: boolean;
                createGroupShout: boolean;
                changeRank: boolean;
                acceptRequests: boolean;
                exileMembers: boolean;
                manageRelationships: boolean;
                viewAuditLog: boolean;
                spendGroupFunds: boolean;
                advertiseGroup: boolean;
                createAvatarItems: boolean;
                manageAvatarItems: boolean;
                manageGroupUniverses: boolean;
                viewUniverseAnalytics: boolean;
                createApiKeys: boolean;
                manageApiKeys: boolean;
            };
        }[];
        response: {
            fullResponse: unknown;
            url: `https://${string}`;
            method: import("../../../utils/utils.types").RestMethod;
            success: boolean;
            statusCode: number;
            headers: Headers;
            body: {
                groupRoles: {
                    path: `groups/${GroupId}/roles/${number}`;
                    createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                    updateTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                    id: Identifier;
                    displayName: string;
                    description: string;
                    rank: number;
                    memberCount: number;
                    permissions: {
                        viewWallPosts: boolean;
                        createWallPosts: boolean;
                        deleteWallPosts: boolean;
                        viewGroupShout: boolean;
                        createGroupShout: boolean;
                        changeRank: boolean;
                        acceptRequests: boolean;
                        exileMembers: boolean;
                        manageRelationships: boolean;
                        viewAuditLog: boolean;
                        spendGroupFunds: boolean;
                        advertiseGroup: boolean;
                        createAvatarItems: boolean;
                        manageAvatarItems: boolean;
                        manageGroupUniverses: boolean;
                        viewUniverseAnalytics: boolean;
                        createApiKeys: boolean;
                        manageApiKeys: boolean;
                    };
                }[];
                nextPageToken: string;
            };
        };
    }>;
}>;
/**
 * Gets roles for a group.
 * @endpoint GET /v2/groups/{groupId}/roles
 *
 * @param groupId The id of the group to get roles for.
 * @param limit The maximum number of group roles to return. The service might return fewer than this value. If unspecified, at most 10 group roles are returned. The maximum value is 20 and higher values are set to 20.
 * @param cursor A page token, received from a previous call, to retrieve a subsequent page.
 *
 * @example const { data:shout } = await GroupsApi.groupShout({ groupId: 5850082 })
 * @exampleData {"path":"groups/5850082/shout","createTime":"2020-03-31T18:36:51.607Z","updateTime":"2023-09-17T20:35:48.213Z","content":"Hello World!","poster":"users/45348281"}
 * @exampleRawBody {"path":"groups/5850082/shout","createTime":"2020-03-31T18:36:51.607Z","updateTime":"2023-09-17T20:35:48.213Z","content":"Hello World!","poster":"users/45348281"}
 */
export declare const groupShout: <GroupId extends Identifier>(this: any, args: {
    groupId: GroupId;
}) => Promise<{
    data: {
        path: `groups/${GroupId}/shout`;
        createTime: Date;
        updateTime: Date;
        content: string;
        poster: `users/${number}`;
    };
    response: {
        fullResponse: unknown;
        url: `https://${string}`;
        method: import("../../../utils/utils.types").RestMethod;
        success: boolean;
        statusCode: number;
        headers: Headers;
        body: {
            path: `groups/${GroupId}/shout`;
            createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
            updateTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
            content: string;
            poster: `users/${number}`;
        };
    };
} & {
    again: () => Promise<{
        data: {
            path: `groups/${GroupId}/shout`;
            createTime: Date;
            updateTime: Date;
            content: string;
            poster: `users/${number}`;
        };
        response: {
            fullResponse: unknown;
            url: `https://${string}`;
            method: import("../../../utils/utils.types").RestMethod;
            success: boolean;
            statusCode: number;
            headers: Headers;
            body: {
                path: `groups/${GroupId}/shout`;
                createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                updateTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                content: string;
                poster: `users/${number}`;
            };
        };
    }>;
}>;
/**
 * Gets join requests for a group.
 * @endpoint GET /v2/groups/{groupId}/join-requests
 *
 * @param groupId The id of the group to get join requests for.
 * @param limit The maximum number of group join requests to return. The service might return fewer than this value. If unspecified, at most 10 group join requests are returned. The maximum value is 20 and higher values are set to 20.
 * @param filter This field may be set in order to filter the resources returned.
 * @param cursor A page token, received from a previous call, to retrieve a subsequent page.
 *
 * @example const { data:joinRequests } = await GroupsApi.groupJoinRequests({ groupId: 5850082 })
 * @exampleData [{"path":"groups/5850082/join-requests/2655994471","createTime":"2024-05-12T16:32:46.841Z","user":"users/2655994471"}]
 * @exampleRawBody {"groupJoinRequests":[{"path":"groups/5850082/join-requests/2655994471","createTime":"2024-05-12T16:32:46.841Z","user":"users/2655994471"}],"nextPageToken":""}
 */
export declare const groupJoinRequests: <GroupId extends Identifier>(this: any, args: {
    groupId: GroupId;
    limit?: number | undefined;
    filter?: {
        userId: Identifier;
    } | undefined;
    cursor?: string | undefined;
}) => Promise<{
    data: {
        path: `groups/${GroupId}/join-requests/${number}`;
        createTime: Date;
        user: `users/${number}`;
    }[];
    response: {
        fullResponse: unknown;
        url: `https://${string}`;
        method: import("../../../utils/utils.types").RestMethod;
        success: boolean;
        statusCode: number;
        headers: Headers;
        body: {
            groupJoinRequests: {
                path: `groups/${GroupId}/join-requests/${number}` extends Date ? Date & `groups/${GroupId}/join-requests/${number}` : `groups/${GroupId}/join-requests/${number}` extends Record<any, any> ? {
                    [x: string]: any;
                    readonly [x: number]: string;
                    toString: {};
                    charAt: {};
                    charCodeAt: {};
                    concat: {};
                    indexOf: {};
                    lastIndexOf: {};
                    localeCompare: {};
                    match: {};
                    replace: {};
                    search: {};
                    slice: {};
                    split: {};
                    substring: {};
                    toLowerCase: {};
                    toLocaleLowerCase: {};
                    toUpperCase: {};
                    toLocaleUpperCase: {};
                    trim: {};
                    readonly length: number;
                    substr: {};
                    valueOf: {};
                    codePointAt: {};
                    includes: {};
                    endsWith: {};
                    normalize: {};
                    repeat: {};
                    startsWith: {};
                    anchor: {};
                    big: {};
                    blink: {};
                    bold: {};
                    fixed: {};
                    fontcolor: {};
                    fontsize: {};
                    italics: {};
                    link: {};
                    small: {};
                    strike: {};
                    sub: {};
                    sup: {};
                    padStart: {};
                    padEnd: {};
                    trimEnd: {};
                    trimStart: {};
                    trimLeft: {};
                    trimRight: {};
                    matchAll: {};
                    replaceAll: {};
                    at: {};
                    [Symbol.iterator]: {};
                } : `groups/${GroupId}/join-requests/${number}`;
                createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                user: `users/${number}`;
            }[];
            nextPageToken: string;
        };
    };
    cursors: {
        previous: import("../../apiGroup/apiGroup.types").Cursor;
        next: import("../../apiGroup/apiGroup.types").Cursor;
    };
    [Symbol.asyncIterator]: () => AsyncGenerator<{
        data: {
            path: `groups/${GroupId}/join-requests/${number}`;
            createTime: Date;
            user: `users/${number}`;
        }[];
        response: {
            fullResponse: unknown;
            url: `https://${string}`;
            method: import("../../../utils/utils.types").RestMethod;
            success: boolean;
            statusCode: number;
            headers: Headers;
            body: {
                groupJoinRequests: {
                    path: `groups/${GroupId}/join-requests/${number}` extends Date ? Date & `groups/${GroupId}/join-requests/${number}` : `groups/${GroupId}/join-requests/${number}` extends Record<any, any> ? {
                        [x: string]: any;
                        readonly [x: number]: string;
                        toString: {};
                        charAt: {};
                        charCodeAt: {};
                        concat: {};
                        indexOf: {};
                        lastIndexOf: {};
                        localeCompare: {};
                        match: {};
                        replace: {};
                        search: {};
                        slice: {};
                        split: {};
                        substring: {};
                        toLowerCase: {};
                        toLocaleLowerCase: {};
                        toUpperCase: {};
                        toLocaleUpperCase: {};
                        trim: {};
                        readonly length: number;
                        substr: {};
                        valueOf: {};
                        codePointAt: {};
                        includes: {};
                        endsWith: {};
                        normalize: {};
                        repeat: {};
                        startsWith: {};
                        anchor: {};
                        big: {};
                        blink: {};
                        bold: {};
                        fixed: {};
                        fontcolor: {};
                        fontsize: {};
                        italics: {};
                        link: {};
                        small: {};
                        strike: {};
                        sub: {};
                        sup: {};
                        padStart: {};
                        padEnd: {};
                        trimEnd: {};
                        trimStart: {};
                        trimLeft: {};
                        trimRight: {};
                        matchAll: {};
                        replaceAll: {};
                        at: {};
                        [Symbol.iterator]: {};
                    } : `groups/${GroupId}/join-requests/${number}`;
                    createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                    user: `users/${number}`;
                }[];
                nextPageToken: string;
            };
        };
        cursors: {
            previous: import("../../apiGroup/apiGroup.types").Cursor;
            next: import("../../apiGroup/apiGroup.types").Cursor;
        };
        [Symbol.asyncIterator]: null;
    } & {
        again: () => Promise<{
            data: {
                path: `groups/${GroupId}/join-requests/${number}`;
                createTime: Date;
                user: `users/${number}`;
            }[];
            response: {
                fullResponse: unknown;
                url: `https://${string}`;
                method: import("../../../utils/utils.types").RestMethod;
                success: boolean;
                statusCode: number;
                headers: Headers;
                body: {
                    groupJoinRequests: {
                        path: `groups/${GroupId}/join-requests/${number}` extends Date ? Date & `groups/${GroupId}/join-requests/${number}` : `groups/${GroupId}/join-requests/${number}` extends Record<any, any> ? {
                            [x: string]: any;
                            readonly [x: number]: string;
                            toString: {};
                            charAt: {};
                            charCodeAt: {};
                            concat: {};
                            indexOf: {};
                            lastIndexOf: {};
                            localeCompare: {};
                            match: {};
                            replace: {};
                            search: {};
                            slice: {};
                            split: {};
                            substring: {};
                            toLowerCase: {};
                            toLocaleLowerCase: {};
                            toUpperCase: {};
                            toLocaleUpperCase: {};
                            trim: {};
                            readonly length: number;
                            substr: {};
                            valueOf: {};
                            codePointAt: {};
                            includes: {};
                            endsWith: {};
                            normalize: {};
                            repeat: {};
                            startsWith: {};
                            anchor: {};
                            big: {};
                            blink: {};
                            bold: {};
                            fixed: {};
                            fontcolor: {};
                            fontsize: {};
                            italics: {};
                            link: {};
                            small: {};
                            strike: {};
                            sub: {};
                            sup: {};
                            padStart: {};
                            padEnd: {};
                            trimEnd: {};
                            trimStart: {};
                            trimLeft: {};
                            trimRight: {};
                            matchAll: {};
                            replaceAll: {};
                            at: {};
                            [Symbol.iterator]: {};
                        } : `groups/${GroupId}/join-requests/${number}`;
                        createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                        user: `users/${number}`;
                    }[];
                    nextPageToken: string;
                };
            };
        }>;
    }, any, unknown>;
} & {
    again: () => Promise<{
        data: {
            path: `groups/${GroupId}/join-requests/${number}`;
            createTime: Date;
            user: `users/${number}`;
        }[];
        response: {
            fullResponse: unknown;
            url: `https://${string}`;
            method: import("../../../utils/utils.types").RestMethod;
            success: boolean;
            statusCode: number;
            headers: Headers;
            body: {
                groupJoinRequests: {
                    path: `groups/${GroupId}/join-requests/${number}` extends Date ? Date & `groups/${GroupId}/join-requests/${number}` : `groups/${GroupId}/join-requests/${number}` extends Record<any, any> ? {
                        [x: string]: any;
                        readonly [x: number]: string;
                        toString: {};
                        charAt: {};
                        charCodeAt: {};
                        concat: {};
                        indexOf: {};
                        lastIndexOf: {};
                        localeCompare: {};
                        match: {};
                        replace: {};
                        search: {};
                        slice: {};
                        split: {};
                        substring: {};
                        toLowerCase: {};
                        toLocaleLowerCase: {};
                        toUpperCase: {};
                        toLocaleUpperCase: {};
                        trim: {};
                        readonly length: number;
                        substr: {};
                        valueOf: {};
                        codePointAt: {};
                        includes: {};
                        endsWith: {};
                        normalize: {};
                        repeat: {};
                        startsWith: {};
                        anchor: {};
                        big: {};
                        blink: {};
                        bold: {};
                        fixed: {};
                        fontcolor: {};
                        fontsize: {};
                        italics: {};
                        link: {};
                        small: {};
                        strike: {};
                        sub: {};
                        sup: {};
                        padStart: {};
                        padEnd: {};
                        trimEnd: {};
                        trimStart: {};
                        trimLeft: {};
                        trimRight: {};
                        matchAll: {};
                        replaceAll: {};
                        at: {};
                        [Symbol.iterator]: {};
                    } : `groups/${GroupId}/join-requests/${number}`;
                    createTime: `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}Z+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}+${number}${number}${number}${number}` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z` | `${number}${number}${number}${number}-${number}${number}-${number}${number}T${number}${number}:${number}${number}:${number}${number}${number}${number}${number}Z+${number}${number}${number}${number}`;
                    user: `users/${number}`;
                }[];
                nextPageToken: string;
            };
        };
    }>;
}>;
/**
 * Accepts a group join request.
 * @endpoint POST /v2/groups/{groupId}/join-requests/{userId}:accept
 *
 * @param groupId The id of the group to accept a join request for.
 * @param userId The id of the user to accept into the group.
 *
 * @example const { data:success } = await GroupsApi.acceptGroupJoinRequest({ groupId: 5850082, userId: 2655994471 });
 * @exampleData true
 * @exampleRawBody {}
 */
export declare const acceptGroupJoinRequest: import("../../apiGroup/apiGroup.types").CallApiMethod<{
    groupId: Identifier;
    userId: Identifier;
}, {
    method: import("../../../utils/utils.types").RestMethod;
    path: `/${string}`;
    name: string;
    searchParams?: string | Record<string, any> | undefined;
    headers?: Record<string, any> | undefined;
    body?: string | number | Record<string, any> | undefined;
    formData?: FormData | undefined;
    applyFieldMask?: boolean | undefined;
    pathToPoll?: ((rawData: {}) => string) | undefined;
    getCursorsFn?: ((rawData: {}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
    "\uD83D\uDD12__PRIVATE_RAW_DATA"?: {} | undefined;
    "\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: boolean | undefined;
} & import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<{}, boolean>, false>;
/**
 * Declines a group join request.
 * @endpoint POST /v2/groups/{groupId}/join-requests/{userId}:decline
 *
 * @param groupId The id of the group to decline a join request for.
 * @param userId The id of the user to decline from the group.
 *
 * @example const { data:success } = await GroupsApi.declineGroupJoinRequest({ groupId: 5850082, userId: 2655994471 });
 * @exampleData true
 * @exampleRawBody {}
 */
export declare const declineGroupJoinRequest: import("../../apiGroup/apiGroup.types").CallApiMethod<{
    groupId: Identifier;
    userId: Identifier;
}, {
    method: import("../../../utils/utils.types").RestMethod;
    path: `/${string}`;
    name: string;
    searchParams?: string | Record<string, any> | undefined;
    headers?: Record<string, any> | undefined;
    body?: string | number | Record<string, any> | undefined;
    formData?: FormData | undefined;
    applyFieldMask?: boolean | undefined;
    pathToPoll?: ((rawData: {}) => string) | undefined;
    getCursorsFn?: ((rawData: {}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
    "\uD83D\uDD12__PRIVATE_RAW_DATA"?: {} | undefined;
    "\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: boolean | undefined;
} & import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<{}, boolean>, false>;
