UNPKG

maplestorysea-mcp-server

Version:

NEXON MapleStory SEA API MCP Server for Claude Desktop - Complete character info, union details, guild data, rankings optimized for SEA servers

109 lines 3.1 kB
/** * Ranking system utilities */ /** * Ranking types supported by the API */ export declare enum RankingType { OVERALL = "overall", UNION = "union", GUILD = "guild", DOJANG = "dojang", THESEED = "theseed", ACHIEVEMENT = "achievement" } /** * Guild ranking types */ export declare enum GuildRankingType { FLAG_RACE = 0, GUILD_POWER = 1 } /** * Validate page number for ranking queries */ export declare function validatePage(page: number): void; /** * Validate ranking type */ export declare function validateRankingType(type: string): void; /** * Validate guild ranking type */ export declare function validateGuildRankingType(type: number): void; /** * Calculate ranking position from page and index */ export declare function calculateRankingPosition(page: number, index: number, pageSize?: number): number; /** * Calculate page from ranking position */ export declare function calculatePageFromPosition(position: number, pageSize?: number): number; /** * Format ranking data for display */ export declare function formatRankingEntry(entry: any, position?: number): any; /** * Format large numbers with commas */ export declare function formatNumber(num: number | string): string; /** * Find character position in ranking data */ export declare function findCharacterPosition(rankings: any[], characterName: string, currentPage?: number, pageSize?: number): { found: boolean; position?: number; entry?: any; }; /** * Find guild position in ranking data */ export declare function findGuildPosition(rankings: any[], guildName: string, currentPage?: number, pageSize?: number): { found: boolean; position?: number; entry?: any; }; /** * Generate ranking cache keys */ export declare const RankingCacheKeys: { overall: (worldName?: string, worldType?: string, className?: string, page?: number, date?: string) => string; union: (worldName?: string, page?: number, date?: string) => string; guild: (worldName: string, rankingType: number, page?: number, date?: string) => string; characterPosition: (characterName: string, worldName?: string, className?: string) => string; guildPosition: (guildName: string, worldName: string, rankingType: number) => string; }; /** * Parse ranking response and add metadata */ export declare function parseRankingResponse(response: any, page?: number): { rankings: any[]; pagination: { currentPage: number; hasNextPage: boolean; hasPreviousPage: boolean; totalEntries?: number; }; metadata: { lastUpdate: string; rankingType: string; worldName?: string; }; }; /** * Merge ranking data from multiple pages for position search */ export declare function mergeRankingPages(pages: any[]): any[]; /** * Calculate ranking statistics */ export declare function calculateRankingStats(rankings: any[]): { totalEntries: number; levelRange: { min: number; max: number; }; averageLevel: number; topGuilds?: string[]; }; //# sourceMappingURL=ranking-utils.d.ts.map