iracing-api
Version:
Javascript client for iracing API
81 lines (80 loc) • 4.03 kB
TypeScript
import { API } from './api';
import { GetMemberAwardsParams, GetMemberAwardsResponse, GetMemberChartDataParams, GetMemberChartDataResponse, GetMemberDataParams, GetMemberDataResponse, GetMemberProfileParams, GetMemberProfileResponse, MemberInfo, GetMemberAwardInstancesParams } from '../types';
/**
* Provides methods for interacting with member-related endpoints (awards, stats, profile, etc.).
*/
export declare class MemberAPI extends API {
/**
* Get the awards earned by a member.
*
* @param {GetMemberAwardsParams} [params] - Optional parameters to specify the member.
* @param {number} [params.customerId] - Customer ID. Defaults to the authenticated member.
*
* @returns A promise resolving to the member awards data, or undefined on error.
*/
getMemberAwards: (params?: GetMemberAwardsParams) => Promise<GetMemberAwardsResponse | undefined>;
/**
* Get chart data (iRating, TT Rating, License/SR) for a member in a specific category.
*
* @param {GetMemberChartDataParams} params - Parameters for the request.
* @param {number} [params.customerId] - Customer ID. Defaults to the authenticated member.
* @param {number} params.categoryId - Category ID: 1=Oval, 2=Road, 3=Dirt Oval, 4=Dirt Road.
* @param {number} params.chartType - Chart type: 1=iRating, 2=TT Rating, 3=License/SR.
*
* @returns A promise resolving to the member chart data, or undefined on error.
*/
getMemberChartData: (params: GetMemberChartDataParams) => Promise<GetMemberChartDataResponse | undefined>;
/**
* Get basic data for one or more members.
*
* @param {GetMemberDataParams} params - Parameters for the request.
* @param {string[]} params.customerIds - An array of customer IDs (as strings) to retrieve data for.
* @param {boolean} [params.includeLicenses=false] - Include license information in the response.
*
* @returns A promise resolving to the member data, or undefined on error.
*/
getMemberData: (params: GetMemberDataParams) => Promise<GetMemberDataResponse | undefined>;
/**
* Get detailed information about the **authenticated** member.
*
* @returns A promise resolving to the authenticated member's info, or undefined on error.
*/
getMemberInfo: () => Promise<MemberInfo | undefined>;
/**
* Get the participation credits earned by the **authenticated** member.
*
* @returns A promise resolving to an array of participation credit objects, or undefined on error.
*/
getMemberParticipationCredits: () => Promise<{
weeks: number;
custId: number;
seasonId: number;
licenseGroup: number;
participationCredits: number;
seriesId: number;
seriesName: string;
licenseGroupName: string;
minWeeks: number;
earnedCredits: number;
totalCredits: number;
}[] | undefined>;
/**
* Get profile data for a member, including recent awards, activity, licenses, etc.
*
* @param {GetMemberProfileParams} [params] - Optional parameters to specify the member.
* @param {number} [params.customerId] - Customer ID. Defaults to the authenticated member.
*
* @returns A promise resolving to the member profile data, or undefined on error.
*/
getMemberProfile: (params?: GetMemberProfileParams) => Promise<GetMemberProfileResponse | undefined>;
/**
* Get specific award instances for a member.
*
* @param {GetMemberAwardInstancesParams} params - Parameters for the request.
* @param {number} params.awardId - The ID of the award to get instances for.
* @param {number} [params.customerId] - The customer ID to get award instances for. Defaults to the authenticated member.
*
* @returns A promise resolving to the member's award instances, or undefined on error.
*/
getMemberAwardInstances: (params: GetMemberAwardInstancesParams) => Promise<Record<string, unknown> | undefined>;
}