openblox
Version:
Roblox API Wrapper For Both Classic And OpenCloud APIs.
278 lines (277 loc) • 20.9 kB
TypeScript
import type { PrettifiedGamePassesForUniverseData, RawGamePassesForUniverseData } from "./gamePasses.types";
import type { Identifier } from "typeforge";
/**
* Gets information about a game pass.
* @endpoint GET /v1/game-passes/{gamePassId}/product-info
*
* @param gamePassId The ID of the game pass to get information about.
*
* @example const { data:gamePassInfo } = await ClassicGamePassesApi.gamePassInfo({ gamePassId: 9260480 })
* @exampleData "targetId":9260480,"productType":"Game Pass","assetId":0,"productId":979386303,"name":"Donate","description":"null","assetTypeId":0,"creator":{"id":1536374574,"name":"MightyPart Games","creatorType":"Group","creatorTargetId":5850082},"iconImageAssetId":5316458121,"created":"2020-05-01T15:05:21.543Z","updated":"2020-07-09T13:08:21.133Z","priceInRobux":15,"priceInTickets":null,"sales":6,"isNew":false,"isForSale":true,"isPublicDomain":false,"isLimited":false,"isLimitedUnique":false,"remaining":null,"minimumMembershipLevel":0}
* @exampleRawBody {"TargetId":9260480,"ProductType":"Game Pass","AssetId":0,"ProductId":979386303,"Name":"Donate","Description":"null","AssetTypeId":0,"Creator":{"Id":1536374574,"Name":"MightyPart Games","CreatorType":"Group","CreatorTargetId":5850082},"IconImageAssetId":5316458121,"Created":"2020-05-01T15:05:21.543Z","Updated":"2020-07-09T13:08:21.133Z","PriceInRobux":15,"PriceInTickets":null,"Sales":6,"IsNew":false,"IsForSale":true,"IsPublicDomain":false,"IsLimited":false,"IsLimitedUnique":false,"Remaining":null,"MinimumMembershipLevel":0}
*/
export declare const gamePassInfo: <GamePassId extends Identifier>(this: any, args: {
gamePassId: GamePassId;
}) => Promise<{
data: {
targetId: GamePassId extends any[] ? GamePassId : GamePassId extends Date ? Date : GamePassId extends Record<any, any> ? import("typeforge").ObjectKeysToCamelCase<GamePassId> extends infer T extends Record<any, any> ? { [Key in keyof T]: import("typeforge").ObjectKeysToCamelCase<GamePassId>[Key]; } : never : GamePassId;
productType: "Game Pass";
assetId: Identifier;
productId: Identifier;
name: string;
description: string;
assetTypeId: Identifier;
creator: {
id: Identifier;
name: string;
creatorType: "User" | "Group";
creatorTargetId: Identifier;
};
iconImageAssetId: Identifier;
created: Date;
updated: Date;
priceInRobux: number;
priceInTickets: number | null;
sales: number;
isNew: boolean;
isForSale: boolean;
isPublicDomain: boolean;
isLimited: boolean;
isLimitedUnique: boolean;
remaining: number | null;
minimumMembershipLevel: number;
};
response: {
fullResponse: unknown;
url: `https://${string}`;
method: import("../../../utils/utils.types").RestMethod;
success: boolean;
statusCode: number;
headers: Headers;
body: {
TargetId: GamePassId;
ProductType: "Game Pass";
AssetId: Identifier;
ProductId: Identifier;
Name: string;
Description: string;
AssetTypeId: Identifier;
Creator: {
Id: Identifier;
Name: string;
CreatorType: "User" | "Group";
CreatorTargetId: Identifier;
};
IconImageAssetId: Identifier;
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}`;
Updated: `${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}`;
PriceInRobux: number;
PriceInTickets: number | null;
Sales: number;
IsNew: boolean;
IsForSale: boolean;
IsPublicDomain: boolean;
IsLimited: boolean;
IsLimitedUnique: boolean;
Remaining: number | null;
MinimumMembershipLevel: number;
};
};
} & {
again: () => Promise<{
data: {
targetId: GamePassId extends any[] ? GamePassId : GamePassId extends Date ? Date : GamePassId extends Record<any, any> ? import("typeforge").ObjectKeysToCamelCase<GamePassId> extends infer T_1 extends Record<any, any> ? { [Key in keyof T_1]: import("typeforge").ObjectKeysToCamelCase<GamePassId>[Key]; } : never : GamePassId;
productType: "Game Pass";
assetId: Identifier;
productId: Identifier;
name: string;
description: string;
assetTypeId: Identifier;
creator: {
id: Identifier;
name: string;
creatorType: "User" | "Group";
creatorTargetId: Identifier;
};
iconImageAssetId: Identifier;
created: Date;
updated: Date;
priceInRobux: number;
priceInTickets: number | null;
sales: number;
isNew: boolean;
isForSale: boolean;
isPublicDomain: boolean;
isLimited: boolean;
isLimitedUnique: boolean;
remaining: number | null;
minimumMembershipLevel: number;
};
response: {
fullResponse: unknown;
url: `https://${string}`;
method: import("../../../utils/utils.types").RestMethod;
success: boolean;
statusCode: number;
headers: Headers;
body: {
TargetId: GamePassId;
ProductType: "Game Pass";
AssetId: Identifier;
ProductId: Identifier;
Name: string;
Description: string;
AssetTypeId: Identifier;
Creator: {
Id: Identifier;
Name: string;
CreatorType: "User" | "Group";
CreatorTargetId: Identifier;
};
IconImageAssetId: Identifier;
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}`;
Updated: `${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}`;
PriceInRobux: number;
PriceInTickets: number | null;
Sales: number;
IsNew: boolean;
IsForSale: boolean;
IsPublicDomain: boolean;
IsLimited: boolean;
IsLimitedUnique: boolean;
Remaining: number | null;
MinimumMembershipLevel: number;
};
};
}>;
}>;
/**
* Gets game passes for a particular universe.
* @endpoint GET /v1/game-passes/universes/{universeId}/creator
*
* @param universeId The ID of the universe to get game passes for.
* @param limit The number of results per request.
* @param cursor The paging cursor for the previous or next page.
*
* @example const { data:gamePasses } = await ClassicGamePassesApi.gamePassesForUniverse({ universeId: 1685831367, limit: 1 })
* @exampleData [{"gamePassId":11546631,"name":"Donate Pluss","description":"nulll","isForSale":true,"iconAssetId":18759297002,"placeId":4922741943,"createdTimestamp":"2020-09-01T00:15:17.79Z","updatedTimestamp":"2024-08-02T00:43:10.541Z","priceInformation":{"defaultPriceInRobux":250,"isInActivePriceOptimizationExperiment":false,"isInActiveDiscountCampaign":false,"discountPercentage":0},"productId":1084063256}]
* @exampleRawBody {"gamePasses":[{"gamePassId":11546631,"name":"Donate Pluss","description":"nulll","isForSale":true,"iconAssetId":18759297002,"placeId":4922741943,"createdTimestamp":"2020-09-01T00:15:17.79Z","updatedTimestamp":"2024-08-02T00:43:10.541Z","priceInformation":{"defaultPriceInRobux":250,"isInActivePriceOptimizationExperiment":false,"isInActiveDiscountCampaign":false,"discountPercentage":0},"productId":1084063256}],"cursor":"id_2zwAAAXRHBJkezgCwMAc"}
*/
export declare const gamePassesForUniverse: import("../../apiGroup/apiGroup.types").CallApiMethod<{
universeId: Identifier;
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: RawGamePassesForUniverseData) => string) | undefined;
getCursorsFn?: ((rawData: {
gamePasses: PrettifiedGamePassesForUniverseData;
cursor: string | null;
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
gamePasses: PrettifiedGamePassesForUniverseData;
cursor: string | null;
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: {
gamePassId: Identifier;
name: string;
description: string;
isForSale: boolean;
iconAssetId: Identifier;
placeId: Identifier;
createdTimestamp: `${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}`;
updatedTimestamp: `${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}`;
priceInformation: {
defaultPriceInRobux: number;
isInActivePriceOptimizationExperiment: boolean;
isInActiveDiscountCampaign: boolean;
discountPercentage: number;
};
productId: Identifier;
}[] | undefined;
} & import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<RawGamePassesForUniverseData, PrettifiedGamePassesForUniverseData>, true>;
/**
* Updates a game pass.
* @endpoint POST /v1/game-passes/{gamePassId}/details
*
* @param gamePassId The ID of the game pass to update.
* @param name The new name for the game pass.
* @param description The new description for the game pass.
* @param icon The new icon for the game pass.
* @param price The new price for the game pass.
* @param isForSale If the game pass should be for sale.
*
* @example const { data:success } = await ClassicGamePassesApi.updateGamePass({ gamePassId: 9260480, name: "Donate", icon: "./gamePassIcon.png" })
* @exampleData true
* @exampleRawBody ""
*/
export declare const updateGamePass: import("../../apiGroup/apiGroup.types").CallApiMethod<{
gamePassId: Identifier;
name?: string | undefined;
description?: string | undefined;
icon?: string | File | undefined;
price?: number | undefined;
isForSale?: boolean | 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: "") => 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>;
/**
* Creates a game pass.
* @endpoint POST /v1/game-passes
*
* @param universeId The ID of the universe to get a game pass in.
* @param name The name for the game pass.
* @param description The description for the game pass.
* @param icon The icon for the game pass.
*
* @example const { data:gamePassId } = await ClassicGamePassesApi.createGamePass({
* universeId: 1685831367, name: "My Pass", description: "Lorem Ipsum..."
* })
* @exampleData 810182288
* @exampleRawBody {"gamePassId":810182288}
*/
export declare const createGamePass: import("../../apiGroup/apiGroup.types").CallApiMethod<{
universeId: Identifier;
name: string;
description: string;
icon?: string | File | 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: {
gamePassId: Identifier;
}) => string) | undefined;
getCursorsFn?: ((rawData: {
gamePassId: Identifier;
}) => [previous: import("../../apiGroup/apiGroup.types").Cursor, next: import("../../apiGroup/apiGroup.types").Cursor]) | undefined;
"\uD83D\uDD12__PRIVATE_RAW_DATA"?: {
gamePassId: Identifier;
} | undefined;
"\uD83D\uDD12__PRIVATE_FORMATTED_DATA"?: Identifier | undefined;
} & import("../../apiGroup/apiGroup.types").ApiMethodDataFormatRawData<{
gamePassId: Identifier;
}, Identifier>, false>;