openblox
Version:
Roblox API Wrapper For Both Classic And OpenCloud APIs.
704 lines • 94.4 kB
TypeScript
import type { Identifier, ArrayNonEmptyIfConst } from "typeforge";
import type { FriendshipOriginSourceType, FriendsMetadataData, FriendsUserSort, PrettifiedAuthenticatedUserFollowingsExistData, PrettifiedAuthenticatedUserFriendRequestsData, PrettifiedFindFriendsData, PrettifiedFriendsListData, PrettifiedFriendsSearchData, PrettifiedFriendsStatusesData, PrettifiedInactiveFriendsData, PrettifiedUserFollowersData, RawAuthenticatedUserFollowingsExistData, RawAuthenticatedUserFriendRequestsData, RawFindFriendsData, RawFriendsListData, RawFriendsSearchData, RawFriendsStatusesData, RawInactiveFriendsData, RawUserFollowersData } from "./friends.types";
import type { SortOrder } from "../../../utils/utils.types";
/**
* Gets friends metadata.
* @endpoint GET /v1/metadata
*
* @example const { data:metadata } = await ClassicFriendsApi.friendsMetadata()
* @exampleData {"isFriendsFilterBarEnabled":true,"isFriendsPageSortExperimentEnabled":false,"isFriendsUserDataStoreCacheEnabled":true,"frequentFriendSortRollout":0,"userName":null,"displayName":null}
* @exampleRawBody {"isFriendsFilterBarEnabled":true,"isFriendsPageSortExperimentEnabled":false,"isFriendsUserDataStoreCacheEnabled":true,"frequentFriendSortRollout":0,"userName":null,"displayName":null}
*/
export declare const friendsMetadata: import("../../apiGroup/apiGroup.types").CallApiMethod<Record<any, any>, {
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: FriendsMetadataData) => string) | undefined;
getCursorsFn?: ((rawData: {
isFriendsFilterBarEnabled: boolean;
isFriendsPageSortExperimentEnabled: boolean;
isFriendsUserDataStoreCacheEnabled: boolean;
frequentFriendSortRollout: number;
userName: string;
displayName: string;
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
isFriendsFilterBarEnabled: boolean;
isFriendsPageSortExperimentEnabled: boolean;
isFriendsUserDataStoreCacheEnabled: boolean;
frequentFriendSortRollout: number;
userName: string;
displayName: string;
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: {
isFriendsFilterBarEnabled: boolean;
isFriendsPageSortExperimentEnabled: boolean;
isFriendsUserDataStoreCacheEnabled: boolean;
frequentFriendSortRollout: number;
userName: string;
displayName: string;
} | undefined;
}, false>;
/**
* Gets the amount of friends the authenticated user has.
* @endpoint GET /v1/my/friends/count
*
* @example const { data:metadata } = await ClassicFriendsApi.friendsMetadata()
* @exampleData 47
* @exampleRawBody {"count":47}
*/
export declare const authenticatedUserFriendsCount: import("../../apiGroup/apiGroup.types").CallApiMethod<Record<any, any>, {
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: {
count: number;
}) => string) | undefined;
getCursorsFn?: ((rawData: {
count: number;
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
count: number;
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: number | undefined;
} & import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<{
count: number;
}, number>, false>;
/**
* Gets friends requests sent to the authenticated user.
* @endpoint GET /v1/my/friends/requests
*
* @param limit The number of results to be returned per request.
* @param sortOrder The order that the results are sorted in.
* @param cursor The paging cursor for the previous or next page.
*
* @example const { data:requests } = await ClassicFriendsApi.authenticatedUserFriendRequests({ limit: 10 })
* @exampleData [ { "friendRequest": { "sentAt": "2024-03-24T02:25:33.095Z", "senderId": 5635371081, "sourceUniverseId": 2549415383, "originSourceType": "InGame", "contactName": null }, "mutualFriendsList": [], "hasVerifiedBadge": false, "description": "", "created": "2024-03-04T15:20:32.033Z", "isBanned": false, "externalAppDisplayName": null, "id": 5635371081, "name": "loremIpsum", "displayName": "loremIpsum"} ]
* @exampleRawBody { "previousPageCursor": null, "nextPageCursor": "638366615689560000-0_1_bcccef3d2c3547470ca9dc3072eedfec", "data": [ { "friendRequest": { "sentAt": "2024-03-24T02:25:33.095Z", "senderId": 5635371081, "sourceUniverseId": 2549415383, "originSourceType": "InGame", "contactName": null }, "mutualFriendsList": [], "hasVerifiedBadge": false, "description": "", "created": "2024-03-04T15:20:32.033Z", "isBanned": false, "externalAppDisplayName": null, "id": 5635371081, "name": "loremIpsum", "displayName": "loremIpsum"} ] }
*/
export declare const authenticatedUserFriendRequests: import("../../apiGroup/apiGroup.types").CallApiMethod<{
limit?: 10 | 18 | 25 | 50 | 100 | undefined;
sortOrder?: SortOrder | undefined;
cursor?: string | undefined;
}, {
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: RawAuthenticatedUserFriendRequestsData) => string) | undefined;
getCursorsFn?: ((rawData: {
previousPageCursor: string | null;
nextPageCursor: string;
data: import("./friends.types").AuthenticatedUserFriendRequest<`${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}`>[];
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
previousPageCursor: string | null;
nextPageCursor: string;
data: import("./friends.types").AuthenticatedUserFriendRequest<`${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}`>[];
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: import("./friends.types").AuthenticatedUserFriendRequest<Date>[] | undefined;
} & import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<RawAuthenticatedUserFriendRequestsData, PrettifiedAuthenticatedUserFriendRequestsData>, true>;
/**
* Gets the amount of friend requests the authenticated user has.
* @endpoint GET /v1/user/friend-requests/count
*
* @example const { data:requestsCount } = await ClassicFriendsApi.authenticatedUserFriendRequestsCount()
* @exampleData 82
* @exampleRawBody {"count":82}
*/
export declare const authenticatedUserFriendRequestsCount: import("../../apiGroup/apiGroup.types").CallApiMethod<Record<any, any>, {
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: {
count: number;
}) => string) | undefined;
getCursorsFn?: ((rawData: {
count: number;
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
count: number;
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: number | undefined;
} & import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<{
count: number;
}, number>, false>;
/**
* Gets friends for a specified user.
* @endpoint GET /v1/users/{userId}/friends
*
* @param userId The id of the user to get friends for.
* @param userSort Specifies how to sort the returned friends.
*
* @example const { data:friends } = await ClassicFriendsApi.friendsList({ userId: 45348281 })
* @exampleData [{"isOnline":true,"presenceType":1,"isDeleted":false,"friendFrequentScore":0,"friendFrequentRank":1,"hasVerifiedBadge":false,"description":null,"created":"0001-01-01T05:52:00Z","isBanned":false,"externalAppDisplayName":null,"id":1999518862,"name":"Ipsum","displayName":"Lorem"}]
* @exampleRawBody {"data":[{"isOnline":true,"presenceType":1,"isDeleted":false,"friendFrequentScore":0,"friendFrequentRank":1,"hasVerifiedBadge":false,"description":null,"created":"0001-01-01T05:52:00Z","isBanned":false,"externalAppDisplayName":null,"id":1999518862,"name":"Ipsum","displayName":"Lorem"}]}
*/
export declare const friendsList: import("../../apiGroup/apiGroup.types").CallApiMethod<{
userId: Identifier;
userSort?: FriendsUserSort | undefined;
}, {
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: RawFriendsListData) => string) | undefined;
getCursorsFn?: ((rawData: {
data: {
isOnline: boolean;
presenceType: number;
isDeleted: boolean;
friendFrequentScore: number;
friendFrequentRank: number;
hasVerifiedBadge: boolean;
description: string;
created: `${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}`;
isBanned: boolean;
externalAppDisplayName: string;
id: number;
name: string;
displayName: string;
}[];
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
data: {
isOnline: boolean;
presenceType: number;
isDeleted: boolean;
friendFrequentScore: number;
friendFrequentRank: number;
hasVerifiedBadge: boolean;
description: string;
created: `${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}`;
isBanned: boolean;
externalAppDisplayName: string;
id: number;
name: string;
displayName: string;
}[];
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: {
isOnline: boolean;
presenceType: number;
isDeleted: boolean;
friendFrequentScore: number;
friendFrequentRank: number;
hasVerifiedBadge: boolean;
description: string;
created: Date;
isBanned: boolean;
externalAppDisplayName: string;
id: number;
name: string;
displayName: string;
}[] | undefined;
} & import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<RawFriendsListData, PrettifiedFriendsListData>, false>;
/**
* Gets friends count for a specified user.
* @endpoint GET /v1/users/{userId}/friends/count
*
* @param userId The id of the user to get friends for.
*
* @example const { data:count } = await ClassicFriendsApi.friendsCount({ userId: 45348281 })
* @exampleData 47
* @exampleRawBody {"count":47}
*/
export declare const friendsCount: import("../../apiGroup/apiGroup.types").CallApiMethod<{
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: {
count: number;
}) => string) | undefined;
getCursorsFn?: ((rawData: {
count: number;
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
count: number;
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: number | undefined;
} & import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<{
count: number;
}, number>, false>;
/**
* Gets a paginated list of all friends for the specified user.
* @endpoint GET /v1/users/{userId}/friends/find
*
* @param userId The id of the user to get friends for.
* @param userSort Specifies how to sort the returned friends.
* @param limit The number of results to be returned
* @param cursor The paging cursor for the previous or next page.
*
* @example const { data:friends } = await ClassicFriendsApi.userfollowersCount({ userId: 45348281 })
* @exampleData [{"id":2820974191,"hasVerifiedBadge":false},{"id":29992184,"hasVerifiedBadge":true}]
* @exampleRawBody {"PreviousCursor":null,"PageItems":[{"id":2820974191,"hasVerifiedBadge":false},{"id":29992184,"hasVerifiedBadge":true}],"NextCursor":"MTk5OTIxODE2MiYxNzYxMjQwMTYmMg==","HasMore":null}
*/
export declare const findFriends: import("../../apiGroup/apiGroup.types").CallApiMethod<{
userId: Identifier;
userSort?: FriendsUserSort | undefined;
limit?: number | undefined;
cursor?: string | undefined;
}, {
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: RawFindFriendsData) => string) | undefined;
getCursorsFn?: ((rawData: {
PreviousCursor: string | null;
PageItems: {
id: Identifier;
hasVerifiedBadge: boolean;
}[];
NextCursor: string | null;
HasMore: string | null;
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
PreviousCursor: string | null;
PageItems: {
id: Identifier;
hasVerifiedBadge: boolean;
}[];
NextCursor: string | null;
HasMore: string | null;
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: {
id: Identifier;
hasVerifiedBadge: boolean;
}[] | undefined;
} & import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<RawFindFriendsData, PrettifiedFindFriendsData>, true>;
/**
* Gets a list of all inactive friends for a specified user.
* @endpoint GET /v1/users/{userId}/friends/inactive
*
* @param userId The id of the user to get inactive friends for.
*
* @example const { data:inactive } = await ClassicFriendsApi.inactiveFriends({ userId: 45348281 })
* @exampleData [{"isDeleted":false,"friendFrequentScore":0,"friendFrequentRank":201,"hasVerifiedBadge":false,"description":null,"created":"0001-01-01T05:51:00.000Z","isBanned":false,"externalAppDisplayName":null,"id":5275218436,"name":"loremIpsum","displayName":"LoremIpsum"}]
* @exampleRawBody {"data":[{"isDeleted":false,"friendFrequentScore":0,"friendFrequentRank":201,"hasVerifiedBadge":false,"description":null,"created":"0001-01-01T05:51:00.000Z","isBanned":false,"externalAppDisplayName":null,"id":5275218436,"name":"loremIpsum","displayName":"LoremIpsum"}]}
*/
export declare const inactiveFriends: import("../../apiGroup/apiGroup.types").CallApiMethod<{
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: RawInactiveFriendsData) => string) | undefined;
getCursorsFn?: ((rawData: {
data: {
isDeleted: boolean;
friendFrequentScore: number;
friendFrequentRank: number;
hasVerifiedBadge: boolean;
description: string | null;
created: `${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}`;
isBanned: boolean;
externalAppDisplayName: string | null;
id: number;
name: string;
displayName: string;
}[];
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
data: {
isDeleted: boolean;
friendFrequentScore: number;
friendFrequentRank: number;
hasVerifiedBadge: boolean;
description: string | null;
created: `${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}`;
isBanned: boolean;
externalAppDisplayName: string | null;
id: number;
name: string;
displayName: string;
}[];
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: {
isDeleted: boolean;
friendFrequentScore: number;
friendFrequentRank: number;
hasVerifiedBadge: boolean;
description: string | null;
created: Date;
isBanned: boolean;
externalAppDisplayName: string | null;
id: number;
name: string;
displayName: string;
}[] | undefined;
} & import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<RawInactiveFriendsData, PrettifiedInactiveFriendsData>, false>;
/**
* Gets a list of all online friends for a specified user.
* @endpoint GET /v1/users/{userId}/friends/online
*
* @param userId The id of the user to get online friends for.
* @param userSort Specifies how to sort the returned friends.
*
* @example const { data:online } = await ClassicFriendsApi.onlineFriends({ userId: 45348281 })
* @exampleData [{"userPresence":{"lastLocation":"Simulator Simulator X 99 360","placeId":223715525,"rootPlaceId":221718525,"gameInstanceId":"acd149a6-d1ed-49d7-aa08-643d62cb3068","universeId":93141687,"lastOnline":"2024-05-20T14:34:40.820Z","userPresenceType":"InGame","userLocationType":"Game"},"id":2966800574,"name":"loremIpsum","displayName":"LoremIpsum"}]
* @exampleRawBody {"data":[{"userPresence":{"lastLocation":"Simulator Simulator X 99 360","placeId":223715525,"rootPlaceId":221718525,"gameInstanceId":"acd149a6-d1ed-49d7-aa08-643d62cb3068","universeId":93141687,"lastOnline":"2024-05-20T14:34:40.820Z","userPresenceType":"InGame","userLocationType":"Game"},"id":2966800574,"name":"loremIpsum","displayName":"LoremIpsum"}]}
*/
export declare const onlineFriends: import("../../apiGroup/apiGroup.types").CallApiMethod<{
userId: Identifier;
userSort?: "StatusAlphabetical" | "StatusFrequents" | undefined;
}, {
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: {
data: {
userPresence: {
UserPresenceType: string;
UserLocationType: string;
lastLocation: string;
placeId: Identifier;
rootPlaceId: Identifier;
gameInstanceId: string;
universeId: Identifier;
lastOnline: `${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;
name: string;
displayName: string;
}[];
}) => string) | undefined;
getCursorsFn?: ((rawData: {
data: {
userPresence: {
UserPresenceType: string;
UserLocationType: string;
lastLocation: string;
placeId: Identifier;
rootPlaceId: Identifier;
gameInstanceId: string;
universeId: Identifier;
lastOnline: `${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;
name: string;
displayName: string;
}[];
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
data: {
userPresence: {
UserPresenceType: string;
UserLocationType: string;
lastLocation: string;
placeId: Identifier;
rootPlaceId: Identifier;
gameInstanceId: string;
universeId: Identifier;
lastOnline: `${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;
name: string;
displayName: string;
}[];
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: {
userPresence: import("typeforge").ObjectKeysToCamelCase<{
UserPresenceType: string;
UserLocationType: string;
lastLocation: string;
placeId: Identifier;
rootPlaceId: Identifier;
gameInstanceId: string;
universeId: Identifier;
lastOnline: Date;
}>;
id: Identifier;
name: string;
displayName: string;
}[] | undefined;
} & import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<{
data: {
userPresence: {
UserPresenceType: string;
UserLocationType: string;
lastLocation: string;
placeId: Identifier;
rootPlaceId: Identifier;
gameInstanceId: string;
universeId: Identifier;
lastOnline: `${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;
name: string;
displayName: string;
}[];
}, {
userPresence: import("typeforge").ObjectKeysToCamelCase<{
UserPresenceType: string;
UserLocationType: string;
lastLocation: string;
placeId: Identifier;
rootPlaceId: Identifier;
gameInstanceId: string;
universeId: Identifier;
lastOnline: Date;
}>;
id: Identifier;
name: string;
displayName: string;
}[]>, false>;
/**
* Search through a users friends list.
* @endpoint GET /v1/users/{userId}/friends/search
*
* @param userId The id of the user to get online friends for.
* @param query The query to search for.
* @param userSort Specifies how to sort the returned friends.
* @param limit The number of results to be returned per request.
* @param cursor The paging cursor for the previous or next page.
*
* @example const { data:searchedFriend } = await ClassicFriendsApi.friendsSearch({ userId: 45348281, query: "b" })
* @exampleData [{"id":2027974391,"hasVerifiedBadge":false},{"id":176144016,"hasVerifiedBadge":false},{"id":3116019601,"hasVerifiedBadge":false}]
* @exampleRawBody {"PreviousCursor":null,"PageItems":[{"id":2027974391,"hasVerifiedBadge":false},{"id":176144016,"hasVerifiedBadge":false},{"id":3116019601,"hasVerifiedBadge":false}],"NextCursor":null,"HasMore":null}
*/
export declare const friendsSearch: import("../../apiGroup/apiGroup.types").CallApiMethod<{
userId: Identifier;
query: string;
userSort?: "StatusAlphabetical" | "StatusFrequents" | undefined;
limit?: number | undefined;
cursor?: string | undefined;
}, {
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: RawFriendsSearchData) => string) | undefined;
getCursorsFn?: ((rawData: {
PreviousCursor: string | null;
PageItems: PrettifiedFriendsSearchData;
NextCursor: string | null;
HasMore: string | null;
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
PreviousCursor: string | null;
PageItems: PrettifiedFriendsSearchData;
NextCursor: string | null;
HasMore: string | null;
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: {
id: Identifier;
hasVerifiedBadge: false;
}[] | undefined;
} & import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<RawFriendsSearchData, PrettifiedFriendsSearchData>, true>;
/**
* Gets the friend statuses between a user and multiple related user ids.
* @endpoint GET /v1/users/{userId}/friends/search
*
* @param userId The id of the user to get friends statuses for.
* @param relatedUserIds An array of the related userIds to get friends statuses for.
*
* @example const { data:statuses } = await ClassicFriendsApi.friendsStatuses({ userId: 45348281, relatedUserIds: [ 2655994471 ] })
* @exampleData {"2655994471":"Friends"}
* @exampleRawBody {"data":[{"id":2655994471,"status":"Friends"}]}
*/
export declare const friendsStatuses: <RelatedUserId extends Identifier>(this: any, args: {
userId: Identifier;
relatedUserIds: ArrayNonEmptyIfConst<RelatedUserId>;
}) => Promise<{
data: Exclude<({
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: RawFriendsStatusesData<RelatedUserId>) => string) | undefined;
getCursorsFn?: ((rawData: {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: (PrettifiedFriendsStatusesData<RelatedUserId> extends infer T ? T extends PrettifiedFriendsStatusesData<RelatedUserId> ? T extends undefined ? {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
} : import("typeforge").Prettify<T, T extends Date ? true : false> : never : never) | undefined;
} & (PrettifiedFriendsStatusesData<RelatedUserId> extends infer T_1 ? T_1 extends PrettifiedFriendsStatusesData<RelatedUserId> ? T_1 extends undefined ? {} : import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<RawFriendsStatusesData<RelatedUserId>, PrettifiedFriendsStatusesData<RelatedUserId> extends infer T_2 ? T_2 extends PrettifiedFriendsStatusesData<RelatedUserId> ? T_2 extends undefined ? RawFriendsStatusesData<RelatedUserId> : T_2 : never : never> : never : never))["🔒__PRIVATE_FORMATTED_DATA"], undefined>;
response: {
fullResponse: unknown;
url: `https://${string}`;
method: import("../../../utils/utils.types").RestMethod;
success: boolean;
statusCode: number;
headers: Headers;
body: import("typeforge").Prettify<Exclude<({
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: RawFriendsStatusesData<RelatedUserId>) => string) | undefined;
getCursorsFn?: ((rawData: {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: (PrettifiedFriendsStatusesData<RelatedUserId> extends infer T_3 ? T_3 extends PrettifiedFriendsStatusesData<RelatedUserId> ? T_3 extends undefined ? {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
} : import("typeforge").Prettify<T_3, T_3 extends Date ? true : false> : never : never) | undefined;
} & (PrettifiedFriendsStatusesData<RelatedUserId> extends infer T_4 ? T_4 extends PrettifiedFriendsStatusesData<RelatedUserId> ? T_4 extends undefined ? {} : import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<RawFriendsStatusesData<RelatedUserId>, PrettifiedFriendsStatusesData<RelatedUserId> extends infer T_5 ? T_5 extends PrettifiedFriendsStatusesData<RelatedUserId> ? T_5 extends undefined ? RawFriendsStatusesData<RelatedUserId> : T_5 : never : never> : never : never))["🔒__PRIVATE_RAW_DATA"], undefined>, Exclude<({
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: RawFriendsStatusesData<RelatedUserId>) => string) | undefined;
getCursorsFn?: ((rawData: {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: (PrettifiedFriendsStatusesData<RelatedUserId> extends infer T_6 ? T_6 extends PrettifiedFriendsStatusesData<RelatedUserId> ? T_6 extends undefined ? {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
} : import("typeforge").Prettify<T_6, T_6 extends Date ? true : false> : never : never) | undefined;
} & (PrettifiedFriendsStatusesData<RelatedUserId> extends infer T_7 ? T_7 extends PrettifiedFriendsStatusesData<RelatedUserId> ? T_7 extends undefined ? {} : import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<RawFriendsStatusesData<RelatedUserId>, PrettifiedFriendsStatusesData<RelatedUserId> extends infer T_8 ? T_8 extends PrettifiedFriendsStatusesData<RelatedUserId> ? T_8 extends undefined ? RawFriendsStatusesData<RelatedUserId> : T_8 : never : never> : never : never))["🔒__PRIVATE_RAW_DATA"], undefined> extends infer T_9 ? T_9 extends Exclude<({
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: RawFriendsStatusesData<RelatedUserId>) => string) | undefined;
getCursorsFn?: ((rawData: {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: (PrettifiedFriendsStatusesData<RelatedUserId> extends infer T_10 ? T_10 extends PrettifiedFriendsStatusesData<RelatedUserId> ? T_10 extends undefined ? {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
} : import("typeforge").Prettify<T_10, T_10 extends Date ? true : false> : never : never) | undefined;
} & (PrettifiedFriendsStatusesData<RelatedUserId> extends infer T_11 ? T_11 extends PrettifiedFriendsStatusesData<RelatedUserId> ? T_11 extends undefined ? {} : import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<RawFriendsStatusesData<RelatedUserId>, PrettifiedFriendsStatusesData<RelatedUserId> extends infer T_12 ? T_12 extends PrettifiedFriendsStatusesData<RelatedUserId> ? T_12 extends undefined ? RawFriendsStatusesData<RelatedUserId> : T_12 : never : never> : never : never))["🔒__PRIVATE_RAW_DATA"], undefined> ? T_9 extends Date ? true : false : never : never>;
};
} & {
again: () => Promise<{
data: Exclude<({
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: RawFriendsStatusesData<RelatedUserId>) => string) | undefined;
getCursorsFn?: ((rawData: {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: (PrettifiedFriendsStatusesData<RelatedUserId> extends infer T_13 ? T_13 extends PrettifiedFriendsStatusesData<RelatedUserId> ? T_13 extends undefined ? {
data: {
id: RelatedUserId;
status: "NotFriends" | "Friends" | "RequestSent" | "RequestReceived";
}[];
} : import("typeforge").Prettify<T_13, T_13 extends Date ? true : false> : never : never) | undefined;
} & (