@peacockproject/core
Version:
Type definitions for Peacock's core.
58 lines (57 loc) • 2.16 kB
TypeScript
import type { GameVersion, PlayNextCampaignDetails, UserCentricContract } from "../types/types";
/**
* Main story campaign ordered mission IDs.
*/
export declare const orderedMainCampaignMissions: string[];
/**
* Ordered Patient Zero campaign mission IDs.
*/
export declare const orderedPZMissions: string[];
/**
* Ordered sniper campaign mission IDs.
*/
export declare const sniperMissionIds: string[];
/**
* Generates a "Continue Story" tile for play next given a contract ID and other details.
*
* @param userId The user's ID.
* @param contractId The next contract ID.
* @param gameVersion The game version.
* @param campaignInfo The campaign information.
* @returns The tile object.
*/
export declare function createPlayNextMission(userId: string, contractId: string, gameVersion: GameVersion, campaignInfo: PlayNextCampaignDetails): PlayNextCategory;
export type PlayNextCategory = {
CategoryType: "NextMission" | "MainOpportunity" | "MenuPage";
CategoryName: string;
Items: {
ItemType: null | unknown;
ContentType: "Contract" | "Opportunity" | "MenuPage";
Content: {
ContractId?: string;
RepositoryId?: string;
Name?: string;
UserCentricContract?: UserCentricContract;
CampaignInfo?: PlayNextCampaignDetails;
};
CategoryType: "NextMission" | "MainOpportunity" | "MenuPage";
}[];
};
/**
* Generates tiles for recommended mission stories given a contract ID.
* @param contractId The contract ID.
* @param gameVersion The game's version.
* @returns The tile object.
*/
export declare function createMainOpportunityTile(contractId: string, gameVersion: GameVersion): PlayNextCategory;
/**
* Generates tiles for menu pages
* @param menuPages An array of menu page IDs.
* @returns The tile object
*/
export declare function createMenuPageTile(...menuPages: string[]): PlayNextCategory;
export type GameFacingPlayNextData = {
Categories: PlayNextCategory[];
ProfileId: string;
};
export declare function getGamePlayNextData(contractId: string, userId: string, gameVersion: GameVersion): GameFacingPlayNextData;