iracing-api
Version:
Javascript client for iracing API
1,517 lines (1,516 loc) • 104 kB
TypeScript
import * as z from 'zod';
export declare const LeagueTrackSchema: z.ZodObject<{
trackId: z.ZodNumber;
trackName: z.ZodString;
configName: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
}, "strip", z.ZodTypeAny, {
trackId: number;
trackName: string;
configName?: string | null | undefined;
}, {
trackId: number;
trackName: string;
configName?: string | null | undefined;
}>;
export type LeagueTrack = z.infer<typeof LeagueTrackSchema>;
export declare const ImageSchema: z.ZodObject<{
largeLogo: z.ZodUnion<[z.ZodNull, z.ZodString]>;
smallLogo: z.ZodString;
}, "strip", z.ZodTypeAny, {
largeLogo: string | null;
smallLogo: string;
}, {
largeLogo: string | null;
smallLogo: string;
}>;
export type Image = z.infer<typeof ImageSchema>;
export declare const LeagueCarSchema: z.ZodObject<{
carClassId: z.ZodNumber;
carClassName: z.ZodString;
carId: z.ZodNumber;
carName: z.ZodString;
maxDryTireSets: z.ZodNumber;
maxPctFuelFill: z.ZodNumber;
packageId: z.ZodNumber;
powerAdjustPct: z.ZodNumber;
qualSetupFilename: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
qualSetupId: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
raceSetupFilename: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
raceSetupId: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
weightPenaltyKg: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
carId: number;
carName: string;
packageId: number;
carClassId: number;
carClassName: string;
maxDryTireSets: number;
maxPctFuelFill: number;
powerAdjustPct: number;
weightPenaltyKg: number;
qualSetupFilename?: string | null | undefined;
qualSetupId?: number | null | undefined;
raceSetupFilename?: string | null | undefined;
raceSetupId?: number | null | undefined;
}, {
carId: number;
carName: string;
packageId: number;
carClassId: number;
carClassName: string;
maxDryTireSets: number;
maxPctFuelFill: number;
powerAdjustPct: number;
weightPenaltyKg: number;
qualSetupFilename?: string | null | undefined;
qualSetupId?: number | null | undefined;
raceSetupFilename?: string | null | undefined;
raceSetupId?: number | null | undefined;
}>;
export type LeagueCar = z.infer<typeof LeagueCarSchema>;
export declare const SessionSchema: z.ZodObject<{
admin: z.ZodBoolean;
admins: z.ZodArray<z.ZodObject<{
custId: z.ZodNumber;
displayName: z.ZodString;
helmet: z.ZodObject<{
pattern: z.ZodNumber;
color1: z.ZodString;
color2: z.ZodString;
color3: z.ZodString;
faceType: z.ZodNumber;
helmetType: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
}, {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
}>;
}, "strip", z.ZodTypeAny, {
displayName: string;
custId: number;
helmet: {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
};
}, {
displayName: string;
custId: number;
helmet: {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
};
}>, "many">;
aiAvoidPlayers: z.ZodBoolean;
aiMaxSkill: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
aiMinSkill: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
aiRosterName: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
allowedClubs: z.ZodArray<z.ZodAny, "many">;
allowedLeagues: z.ZodArray<z.ZodNumber, "many">;
allowedTeams: z.ZodArray<z.ZodAny, "many">;
availableReservedBroadcasterSlots: z.ZodNumber;
availableSpectatorSlots: z.ZodNumber;
broadcaster: z.ZodBoolean;
canBroadcast: z.ZodBoolean;
canJoin: z.ZodBoolean;
canSpot: z.ZodBoolean;
canWatch: z.ZodBoolean;
carTypes: z.ZodArray<z.ZodObject<{
carType: z.ZodString;
}, "strip", z.ZodTypeAny, {
carType: string;
}, {
carType: string;
}>, "many">;
cars: z.ZodArray<z.ZodObject<{
carClassId: z.ZodNumber;
carClassName: z.ZodString;
carId: z.ZodNumber;
carName: z.ZodString;
maxDryTireSets: z.ZodNumber;
maxPctFuelFill: z.ZodNumber;
packageId: z.ZodNumber;
powerAdjustPct: z.ZodNumber;
qualSetupFilename: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
qualSetupId: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
raceSetupFilename: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
raceSetupId: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
weightPenaltyKg: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
carId: number;
carName: string;
packageId: number;
carClassId: number;
carClassName: string;
maxDryTireSets: number;
maxPctFuelFill: number;
powerAdjustPct: number;
weightPenaltyKg: number;
qualSetupFilename?: string | null | undefined;
qualSetupId?: number | null | undefined;
raceSetupFilename?: string | null | undefined;
raceSetupId?: number | null | undefined;
}, {
carId: number;
carName: string;
packageId: number;
carClassId: number;
carClassName: string;
maxDryTireSets: number;
maxPctFuelFill: number;
powerAdjustPct: number;
weightPenaltyKg: number;
qualSetupFilename?: string | null | undefined;
qualSetupId?: number | null | undefined;
raceSetupFilename?: string | null | undefined;
raceSetupId?: number | null | undefined;
}>, "many">;
carsLeft: z.ZodNumber;
consecCautionsSingleFile: z.ZodBoolean;
countByCarClassId: z.ZodRecord<z.ZodString, z.ZodNumber>;
countByCarId: z.ZodRecord<z.ZodString, z.ZodNumber>;
damageModel: z.ZodNumber;
disallowVirtualMirror: z.ZodBoolean;
doNotCountCautionLaps: z.ZodBoolean;
doNotPaintCars: z.ZodBoolean;
driverChangeRule: z.ZodNumber;
driverChanges: z.ZodBoolean;
elig: z.ZodObject<{
sessionFull: z.ZodBoolean;
canSpot: z.ZodBoolean;
canWatch: z.ZodBoolean;
canDrive: z.ZodBoolean;
hasSessPassword: z.ZodBoolean;
needsPurchase: z.ZodBoolean;
ownCar: z.ZodBoolean;
ownTrack: z.ZodBoolean;
purchaseSkus: z.ZodArray<z.ZodNumber, "many">;
registered: z.ZodBoolean;
}, "strip", z.ZodTypeAny, {
sessionFull: boolean;
canSpot: boolean;
canWatch: boolean;
canDrive: boolean;
hasSessPassword: boolean;
needsPurchase: boolean;
ownCar: boolean;
ownTrack: boolean;
purchaseSkus: number[];
registered: boolean;
}, {
sessionFull: boolean;
canSpot: boolean;
canWatch: boolean;
canDrive: boolean;
hasSessPassword: boolean;
needsPurchase: boolean;
ownCar: boolean;
ownTrack: boolean;
purchaseSkus: number[];
registered: boolean;
}>;
enablePitlaneCollisions: z.ZodBoolean;
endTime: z.ZodString;
entryCount: z.ZodNumber;
eventTypes: z.ZodArray<z.ZodObject<{
eventType: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
eventType: number;
}, {
eventType: number;
}>, "many">;
farm: z.ZodObject<{
farmId: z.ZodNumber;
displayName: z.ZodString;
imagePath: z.ZodString;
displayed: z.ZodBoolean;
}, "strip", z.ZodTypeAny, {
farmId: number;
displayName: string;
imagePath: string;
displayed: boolean;
}, {
farmId: number;
displayName: string;
imagePath: string;
displayed: boolean;
}>;
fixedSetup: z.ZodBoolean;
friends: z.ZodArray<z.ZodAny, "many">;
fullCourseCautions: z.ZodBoolean;
greenWhiteCheckeredLimit: z.ZodNumber;
hardcoreLevel: z.ZodNumber;
host: z.ZodObject<{
custId: z.ZodNumber;
displayName: z.ZodString;
helmet: z.ZodObject<{
pattern: z.ZodNumber;
color1: z.ZodString;
color2: z.ZodString;
color3: z.ZodString;
faceType: z.ZodNumber;
helmetType: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
}, {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
}>;
}, "strip", z.ZodTypeAny, {
displayName: string;
custId: number;
helmet: {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
};
}, {
displayName: string;
custId: number;
helmet: {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
};
}>;
image: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
largeLogo: z.ZodUnion<[z.ZodNull, z.ZodString]>;
smallLogo: z.ZodString;
}, "strip", z.ZodTypeAny, {
largeLogo: string | null;
smallLogo: string;
}, {
largeLogo: string | null;
smallLogo: string;
}>, z.ZodNull]>>;
incidentLimit: z.ZodNumber;
incidentWarnMode: z.ZodNumber;
incidentWarnParam1: z.ZodNumber;
incidentWarnParam2: z.ZodNumber;
isHeatRacing: z.ZodBoolean;
launchAt: z.ZodString;
leagueId: z.ZodNumber;
leagueName: z.ZodString;
leagueSeasonId: z.ZodNumber;
leagueSeasonName: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
licenseGroupTypes: z.ZodArray<z.ZodObject<{
licenseGroupType: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
licenseGroupType: number;
}, {
licenseGroupType: number;
}>, "many">;
loneQualify: z.ZodBoolean;
luckyDog: z.ZodBoolean;
maxAiDrivers: z.ZodNumber;
maxDrivers: z.ZodNumber;
maxIr: z.ZodNumber;
maxLicenseLevel: z.ZodNumber;
maxTeamDrivers: z.ZodNumber;
maxUsers: z.ZodNumber;
minIr: z.ZodNumber;
minLicenseLevel: z.ZodNumber;
minTeamDrivers: z.ZodNumber;
multiclassType: z.ZodNumber;
mustUseDiffTireTypesInRace: z.ZodBoolean;
noLapperWaveArounds: z.ZodBoolean;
numBroadcasters: z.ZodNumber;
numDrivers: z.ZodNumber;
numFastTows: z.ZodNumber;
numOptLaps: z.ZodNumber;
numSpectatorSlots: z.ZodNumber;
numSpectators: z.ZodNumber;
numSpotters: z.ZodNumber;
openRegExpires: z.ZodString;
orderId: z.ZodNumber;
owner: z.ZodBoolean;
paceCarClassId: z.ZodNull;
paceCarId: z.ZodNull;
passwordProtected: z.ZodBoolean;
pitsInUse: z.ZodNumber;
populated: z.ZodBoolean;
practiceLength: z.ZodNumber;
privateSessionId: z.ZodNumber;
qualifierMustStartRace: z.ZodBoolean;
qualifyLaps: z.ZodNumber;
qualifyLength: z.ZodNumber;
raceLaps: z.ZodNumber;
raceLength: z.ZodNumber;
restarts: z.ZodNumber;
restrictResults: z.ZodBoolean;
restrictViewing: z.ZodBoolean;
rollingStarts: z.ZodBoolean;
sessionDesc: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
sessionFull: z.ZodBoolean;
sessionId: z.ZodNumber;
sessionName: z.ZodString;
sessionType: z.ZodNumber;
sessionTypes: z.ZodArray<z.ZodObject<{
sessionType: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
sessionType: number;
}, {
sessionType: number;
}>, "many">;
shortParadeLap: z.ZodBoolean;
startOnQualTire: z.ZodBoolean;
startZone: z.ZodBoolean;
status: z.ZodNumber;
subsessionId: z.ZodNumber;
teamEntryCount: z.ZodNumber;
telemetryForceToDisk: z.ZodNumber;
telemetryRestriction: z.ZodNumber;
timeLimit: z.ZodNumber;
track: z.ZodObject<{
trackId: z.ZodNumber;
trackName: z.ZodString;
configName: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
}, "strip", z.ZodTypeAny, {
trackId: number;
trackName: string;
configName?: string | null | undefined;
}, {
trackId: number;
trackName: string;
configName?: string | null | undefined;
}>;
trackState: z.ZodObject<{
leaveMarbles: z.ZodBoolean;
practiceGripCompound: z.ZodNumber;
practiceRubber: z.ZodNumber;
qualifyGripCompound: z.ZodNumber;
qualifyRubber: z.ZodNumber;
raceGripCompound: z.ZodNumber;
raceRubber: z.ZodNumber;
warmupGripCompound: z.ZodNumber;
warmupRubber: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
leaveMarbles: boolean;
practiceGripCompound: number;
practiceRubber: number;
qualifyGripCompound: number;
qualifyRubber: number;
raceGripCompound: number;
raceRubber: number;
warmupGripCompound: number;
warmupRubber: number;
}, {
leaveMarbles: boolean;
practiceGripCompound: number;
practiceRubber: number;
qualifyGripCompound: number;
qualifyRubber: number;
raceGripCompound: number;
raceRubber: number;
warmupGripCompound: number;
warmupRubber: number;
}>;
trackTypes: z.ZodArray<z.ZodObject<{
trackType: z.ZodEnum<["dirt_road", "dirt_oval", "oval", "road"]>;
}, "strip", z.ZodTypeAny, {
trackType: "dirt_oval" | "dirt_road" | "oval" | "road";
}, {
trackType: "dirt_oval" | "dirt_road" | "oval" | "road";
}>, "many">;
unsportConductRuleMode: z.ZodNumber;
warmupLength: z.ZodNumber;
watched: z.ZodArray<z.ZodAny, "many">;
weather: z.ZodObject<{
allowFog: z.ZodBoolean;
fog: z.ZodNumber;
forecastOptions: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
forecastType: z.ZodNumber;
precipitation: z.ZodNumber;
skies: z.ZodNumber;
stopPrecip: z.ZodNumber;
temperature: z.ZodNumber;
windDir: z.ZodNumber;
windSpeed: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
forecastType: number;
precipitation: number;
skies: number;
stopPrecip: number;
temperature: number;
windDir: number;
windSpeed: number;
}, {
forecastType: number;
precipitation: number;
skies: number;
stopPrecip: number;
temperature: number;
windDir: number;
windSpeed: number;
}>, z.ZodNull]>>;
humidityUnits: z.ZodNumber;
precipOption: z.ZodNumber;
relHumidity: z.ZodNumber;
simulatedStartTime: z.ZodString;
simulatedStartUtcTime: z.ZodString;
simulatedTimeMultiplier: z.ZodNumber;
simulatedTimeOffsets: z.ZodArray<z.ZodNumber, "many">;
skies: z.ZodNumber;
tempUnits: z.ZodNumber;
tempValue: z.ZodNumber;
timeOfDay: z.ZodNumber;
trackWater: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
type: z.ZodNumber;
version: z.ZodNumber;
weatherSummary: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
maxPrecipRate: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
maxPrecipRateDesc: z.ZodEnum<["Heavy", "Light", "Moderate", "None"]>;
precipChance: z.ZodNumber;
skiesHigh: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
skiesLow: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
tempHigh: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
tempLow: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
tempUnits: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
windHigh: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
windLow: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
windUnits: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
}, "strip", z.ZodTypeAny, {
maxPrecipRateDesc: "Heavy" | "Light" | "Moderate" | "None";
precipChance: number;
maxPrecipRate?: number | null | undefined;
skiesHigh?: number | null | undefined;
skiesLow?: number | null | undefined;
tempHigh?: number | null | undefined;
tempLow?: number | null | undefined;
tempUnits?: number | null | undefined;
windHigh?: number | null | undefined;
windLow?: number | null | undefined;
windUnits?: number | null | undefined;
}, {
maxPrecipRateDesc: "Heavy" | "Light" | "Moderate" | "None";
precipChance: number;
maxPrecipRate?: number | null | undefined;
skiesHigh?: number | null | undefined;
skiesLow?: number | null | undefined;
tempHigh?: number | null | undefined;
tempLow?: number | null | undefined;
tempUnits?: number | null | undefined;
windHigh?: number | null | undefined;
windLow?: number | null | undefined;
windUnits?: number | null | undefined;
}>, z.ZodNull]>>;
weatherUrl: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
weatherVarInitial: z.ZodNumber;
weatherVarOngoing: z.ZodNumber;
windDir: z.ZodNumber;
windUnits: z.ZodNumber;
windValue: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
type: number;
skies: number;
windDir: number;
tempUnits: number;
windUnits: number;
allowFog: boolean;
fog: number;
humidityUnits: number;
precipOption: number;
relHumidity: number;
simulatedStartTime: string;
simulatedStartUtcTime: string;
simulatedTimeMultiplier: number;
simulatedTimeOffsets: number[];
tempValue: number;
timeOfDay: number;
version: number;
weatherVarInitial: number;
weatherVarOngoing: number;
windValue: number;
forecastOptions?: {
forecastType: number;
precipitation: number;
skies: number;
stopPrecip: number;
temperature: number;
windDir: number;
windSpeed: number;
} | null | undefined;
trackWater?: number | null | undefined;
weatherSummary?: {
maxPrecipRateDesc: "Heavy" | "Light" | "Moderate" | "None";
precipChance: number;
maxPrecipRate?: number | null | undefined;
skiesHigh?: number | null | undefined;
skiesLow?: number | null | undefined;
tempHigh?: number | null | undefined;
tempLow?: number | null | undefined;
tempUnits?: number | null | undefined;
windHigh?: number | null | undefined;
windLow?: number | null | undefined;
windUnits?: number | null | undefined;
} | null | undefined;
weatherUrl?: string | null | undefined;
}, {
type: number;
skies: number;
windDir: number;
tempUnits: number;
windUnits: number;
allowFog: boolean;
fog: number;
humidityUnits: number;
precipOption: number;
relHumidity: number;
simulatedStartTime: string;
simulatedStartUtcTime: string;
simulatedTimeMultiplier: number;
simulatedTimeOffsets: number[];
tempValue: number;
timeOfDay: number;
version: number;
weatherVarInitial: number;
weatherVarOngoing: number;
windValue: number;
forecastOptions?: {
forecastType: number;
precipitation: number;
skies: number;
stopPrecip: number;
temperature: number;
windDir: number;
windSpeed: number;
} | null | undefined;
trackWater?: number | null | undefined;
weatherSummary?: {
maxPrecipRateDesc: "Heavy" | "Light" | "Moderate" | "None";
precipChance: number;
maxPrecipRate?: number | null | undefined;
skiesHigh?: number | null | undefined;
skiesLow?: number | null | undefined;
tempHigh?: number | null | undefined;
tempLow?: number | null | undefined;
tempUnits?: number | null | undefined;
windHigh?: number | null | undefined;
windLow?: number | null | undefined;
windUnits?: number | null | undefined;
} | null | undefined;
weatherUrl?: string | null | undefined;
}>;
}, "strip", z.ZodTypeAny, {
endTime: string;
track: {
trackId: number;
trackName: string;
configName?: string | null | undefined;
};
host: {
displayName: string;
custId: number;
helmet: {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
};
};
status: number;
sessionFull: boolean;
canSpot: boolean;
canWatch: boolean;
sessionType: number;
carTypes: {
carType: string;
}[];
admins: {
displayName: string;
custId: number;
helmet: {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
};
}[];
aiAvoidPlayers: boolean;
allowedClubs: any[];
allowedLeagues: number[];
allowedTeams: any[];
cars: {
carId: number;
carName: string;
packageId: number;
carClassId: number;
carClassName: string;
maxDryTireSets: number;
maxPctFuelFill: number;
powerAdjustPct: number;
weightPenaltyKg: number;
qualSetupFilename?: string | null | undefined;
qualSetupId?: number | null | undefined;
raceSetupFilename?: string | null | undefined;
raceSetupId?: number | null | undefined;
}[];
carsLeft: number;
consecCautionsSingleFile: boolean;
countByCarClassId: Record<string, number>;
countByCarId: Record<string, number>;
damageModel: number;
disallowVirtualMirror: boolean;
doNotCountCautionLaps: boolean;
doNotPaintCars: boolean;
driverChangeRule: number;
driverChanges: boolean;
elig: {
sessionFull: boolean;
canSpot: boolean;
canWatch: boolean;
canDrive: boolean;
hasSessPassword: boolean;
needsPurchase: boolean;
ownCar: boolean;
ownTrack: boolean;
purchaseSkus: number[];
registered: boolean;
};
enablePitlaneCollisions: boolean;
entryCount: number;
eventTypes: {
eventType: number;
}[];
farm: {
farmId: number;
displayName: string;
imagePath: string;
displayed: boolean;
};
fixedSetup: boolean;
fullCourseCautions: boolean;
greenWhiteCheckeredLimit: number;
hardcoreLevel: number;
incidentLimit: number;
incidentWarnMode: number;
incidentWarnParam1: number;
incidentWarnParam2: number;
launchAt: string;
leagueId: number;
leagueSeasonId: number;
licenseGroupTypes: {
licenseGroupType: number;
}[];
loneQualify: boolean;
luckyDog: boolean;
maxAiDrivers: number;
maxDrivers: number;
maxIr: number;
maxLicenseLevel: number;
maxTeamDrivers: number;
minIr: number;
minLicenseLevel: number;
minTeamDrivers: number;
multiclassType: number;
mustUseDiffTireTypesInRace: boolean;
noLapperWaveArounds: boolean;
numFastTows: number;
numOptLaps: number;
openRegExpires: string;
orderId: number;
paceCarClassId: null;
paceCarId: null;
passwordProtected: boolean;
pitsInUse: number;
practiceLength: number;
privateSessionId: number;
qualifierMustStartRace: boolean;
qualifyLaps: number;
qualifyLength: number;
raceLaps: number;
raceLength: number;
restarts: number;
restrictResults: boolean;
restrictViewing: boolean;
rollingStarts: boolean;
sessionId: number;
sessionName: string;
sessionTypes: {
sessionType: number;
}[];
shortParadeLap: boolean;
startOnQualTire: boolean;
startZone: boolean;
subsessionId: number;
teamEntryCount: number;
telemetryForceToDisk: number;
telemetryRestriction: number;
timeLimit: number;
trackState: {
leaveMarbles: boolean;
practiceGripCompound: number;
practiceRubber: number;
qualifyGripCompound: number;
qualifyRubber: number;
raceGripCompound: number;
raceRubber: number;
warmupGripCompound: number;
warmupRubber: number;
};
trackTypes: {
trackType: "dirt_oval" | "dirt_road" | "oval" | "road";
}[];
unsportConductRuleMode: number;
warmupLength: number;
weather: {
type: number;
skies: number;
windDir: number;
tempUnits: number;
windUnits: number;
allowFog: boolean;
fog: number;
humidityUnits: number;
precipOption: number;
relHumidity: number;
simulatedStartTime: string;
simulatedStartUtcTime: string;
simulatedTimeMultiplier: number;
simulatedTimeOffsets: number[];
tempValue: number;
timeOfDay: number;
version: number;
weatherVarInitial: number;
weatherVarOngoing: number;
windValue: number;
forecastOptions?: {
forecastType: number;
precipitation: number;
skies: number;
stopPrecip: number;
temperature: number;
windDir: number;
windSpeed: number;
} | null | undefined;
trackWater?: number | null | undefined;
weatherSummary?: {
maxPrecipRateDesc: "Heavy" | "Light" | "Moderate" | "None";
precipChance: number;
maxPrecipRate?: number | null | undefined;
skiesHigh?: number | null | undefined;
skiesLow?: number | null | undefined;
tempHigh?: number | null | undefined;
tempLow?: number | null | undefined;
tempUnits?: number | null | undefined;
windHigh?: number | null | undefined;
windLow?: number | null | undefined;
windUnits?: number | null | undefined;
} | null | undefined;
weatherUrl?: string | null | undefined;
};
admin: boolean;
availableReservedBroadcasterSlots: number;
availableSpectatorSlots: number;
broadcaster: boolean;
canBroadcast: boolean;
canJoin: boolean;
friends: any[];
isHeatRacing: boolean;
leagueName: string;
maxUsers: number;
numBroadcasters: number;
numDrivers: number;
numSpectatorSlots: number;
numSpectators: number;
numSpotters: number;
owner: boolean;
populated: boolean;
watched: any[];
aiMaxSkill?: number | null | undefined;
aiMinSkill?: number | null | undefined;
aiRosterName?: string | null | undefined;
image?: {
largeLogo: string | null;
smallLogo: string;
} | null | undefined;
leagueSeasonName?: string | null | undefined;
sessionDesc?: string | null | undefined;
}, {
endTime: string;
track: {
trackId: number;
trackName: string;
configName?: string | null | undefined;
};
host: {
displayName: string;
custId: number;
helmet: {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
};
};
status: number;
sessionFull: boolean;
canSpot: boolean;
canWatch: boolean;
sessionType: number;
carTypes: {
carType: string;
}[];
admins: {
displayName: string;
custId: number;
helmet: {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
};
}[];
aiAvoidPlayers: boolean;
allowedClubs: any[];
allowedLeagues: number[];
allowedTeams: any[];
cars: {
carId: number;
carName: string;
packageId: number;
carClassId: number;
carClassName: string;
maxDryTireSets: number;
maxPctFuelFill: number;
powerAdjustPct: number;
weightPenaltyKg: number;
qualSetupFilename?: string | null | undefined;
qualSetupId?: number | null | undefined;
raceSetupFilename?: string | null | undefined;
raceSetupId?: number | null | undefined;
}[];
carsLeft: number;
consecCautionsSingleFile: boolean;
countByCarClassId: Record<string, number>;
countByCarId: Record<string, number>;
damageModel: number;
disallowVirtualMirror: boolean;
doNotCountCautionLaps: boolean;
doNotPaintCars: boolean;
driverChangeRule: number;
driverChanges: boolean;
elig: {
sessionFull: boolean;
canSpot: boolean;
canWatch: boolean;
canDrive: boolean;
hasSessPassword: boolean;
needsPurchase: boolean;
ownCar: boolean;
ownTrack: boolean;
purchaseSkus: number[];
registered: boolean;
};
enablePitlaneCollisions: boolean;
entryCount: number;
eventTypes: {
eventType: number;
}[];
farm: {
farmId: number;
displayName: string;
imagePath: string;
displayed: boolean;
};
fixedSetup: boolean;
fullCourseCautions: boolean;
greenWhiteCheckeredLimit: number;
hardcoreLevel: number;
incidentLimit: number;
incidentWarnMode: number;
incidentWarnParam1: number;
incidentWarnParam2: number;
launchAt: string;
leagueId: number;
leagueSeasonId: number;
licenseGroupTypes: {
licenseGroupType: number;
}[];
loneQualify: boolean;
luckyDog: boolean;
maxAiDrivers: number;
maxDrivers: number;
maxIr: number;
maxLicenseLevel: number;
maxTeamDrivers: number;
minIr: number;
minLicenseLevel: number;
minTeamDrivers: number;
multiclassType: number;
mustUseDiffTireTypesInRace: boolean;
noLapperWaveArounds: boolean;
numFastTows: number;
numOptLaps: number;
openRegExpires: string;
orderId: number;
paceCarClassId: null;
paceCarId: null;
passwordProtected: boolean;
pitsInUse: number;
practiceLength: number;
privateSessionId: number;
qualifierMustStartRace: boolean;
qualifyLaps: number;
qualifyLength: number;
raceLaps: number;
raceLength: number;
restarts: number;
restrictResults: boolean;
restrictViewing: boolean;
rollingStarts: boolean;
sessionId: number;
sessionName: string;
sessionTypes: {
sessionType: number;
}[];
shortParadeLap: boolean;
startOnQualTire: boolean;
startZone: boolean;
subsessionId: number;
teamEntryCount: number;
telemetryForceToDisk: number;
telemetryRestriction: number;
timeLimit: number;
trackState: {
leaveMarbles: boolean;
practiceGripCompound: number;
practiceRubber: number;
qualifyGripCompound: number;
qualifyRubber: number;
raceGripCompound: number;
raceRubber: number;
warmupGripCompound: number;
warmupRubber: number;
};
trackTypes: {
trackType: "dirt_oval" | "dirt_road" | "oval" | "road";
}[];
unsportConductRuleMode: number;
warmupLength: number;
weather: {
type: number;
skies: number;
windDir: number;
tempUnits: number;
windUnits: number;
allowFog: boolean;
fog: number;
humidityUnits: number;
precipOption: number;
relHumidity: number;
simulatedStartTime: string;
simulatedStartUtcTime: string;
simulatedTimeMultiplier: number;
simulatedTimeOffsets: number[];
tempValue: number;
timeOfDay: number;
version: number;
weatherVarInitial: number;
weatherVarOngoing: number;
windValue: number;
forecastOptions?: {
forecastType: number;
precipitation: number;
skies: number;
stopPrecip: number;
temperature: number;
windDir: number;
windSpeed: number;
} | null | undefined;
trackWater?: number | null | undefined;
weatherSummary?: {
maxPrecipRateDesc: "Heavy" | "Light" | "Moderate" | "None";
precipChance: number;
maxPrecipRate?: number | null | undefined;
skiesHigh?: number | null | undefined;
skiesLow?: number | null | undefined;
tempHigh?: number | null | undefined;
tempLow?: number | null | undefined;
tempUnits?: number | null | undefined;
windHigh?: number | null | undefined;
windLow?: number | null | undefined;
windUnits?: number | null | undefined;
} | null | undefined;
weatherUrl?: string | null | undefined;
};
admin: boolean;
availableReservedBroadcasterSlots: number;
availableSpectatorSlots: number;
broadcaster: boolean;
canBroadcast: boolean;
canJoin: boolean;
friends: any[];
isHeatRacing: boolean;
leagueName: string;
maxUsers: number;
numBroadcasters: number;
numDrivers: number;
numSpectatorSlots: number;
numSpectators: number;
numSpotters: number;
owner: boolean;
populated: boolean;
watched: any[];
aiMaxSkill?: number | null | undefined;
aiMinSkill?: number | null | undefined;
aiRosterName?: string | null | undefined;
image?: {
largeLogo: string | null;
smallLogo: string;
} | null | undefined;
leagueSeasonName?: string | null | undefined;
sessionDesc?: string | null | undefined;
}>;
export type Session = z.infer<typeof SessionSchema>;
export declare const CustLeagueSessionsSchema: z.ZodObject<{
mine: z.ZodBoolean;
sequence: z.ZodNumber;
sessions: z.ZodArray<z.ZodObject<{
admin: z.ZodBoolean;
admins: z.ZodArray<z.ZodObject<{
custId: z.ZodNumber;
displayName: z.ZodString;
helmet: z.ZodObject<{
pattern: z.ZodNumber;
color1: z.ZodString;
color2: z.ZodString;
color3: z.ZodString;
faceType: z.ZodNumber;
helmetType: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
}, {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
}>;
}, "strip", z.ZodTypeAny, {
displayName: string;
custId: number;
helmet: {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
};
}, {
displayName: string;
custId: number;
helmet: {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
};
}>, "many">;
aiAvoidPlayers: z.ZodBoolean;
aiMaxSkill: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
aiMinSkill: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
aiRosterName: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
allowedClubs: z.ZodArray<z.ZodAny, "many">;
allowedLeagues: z.ZodArray<z.ZodNumber, "many">;
allowedTeams: z.ZodArray<z.ZodAny, "many">;
availableReservedBroadcasterSlots: z.ZodNumber;
availableSpectatorSlots: z.ZodNumber;
broadcaster: z.ZodBoolean;
canBroadcast: z.ZodBoolean;
canJoin: z.ZodBoolean;
canSpot: z.ZodBoolean;
canWatch: z.ZodBoolean;
carTypes: z.ZodArray<z.ZodObject<{
carType: z.ZodString;
}, "strip", z.ZodTypeAny, {
carType: string;
}, {
carType: string;
}>, "many">;
cars: z.ZodArray<z.ZodObject<{
carClassId: z.ZodNumber;
carClassName: z.ZodString;
carId: z.ZodNumber;
carName: z.ZodString;
maxDryTireSets: z.ZodNumber;
maxPctFuelFill: z.ZodNumber;
packageId: z.ZodNumber;
powerAdjustPct: z.ZodNumber;
qualSetupFilename: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
qualSetupId: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
raceSetupFilename: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
raceSetupId: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodNull]>>;
weightPenaltyKg: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
carId: number;
carName: string;
packageId: number;
carClassId: number;
carClassName: string;
maxDryTireSets: number;
maxPctFuelFill: number;
powerAdjustPct: number;
weightPenaltyKg: number;
qualSetupFilename?: string | null | undefined;
qualSetupId?: number | null | undefined;
raceSetupFilename?: string | null | undefined;
raceSetupId?: number | null | undefined;
}, {
carId: number;
carName: string;
packageId: number;
carClassId: number;
carClassName: string;
maxDryTireSets: number;
maxPctFuelFill: number;
powerAdjustPct: number;
weightPenaltyKg: number;
qualSetupFilename?: string | null | undefined;
qualSetupId?: number | null | undefined;
raceSetupFilename?: string | null | undefined;
raceSetupId?: number | null | undefined;
}>, "many">;
carsLeft: z.ZodNumber;
consecCautionsSingleFile: z.ZodBoolean;
countByCarClassId: z.ZodRecord<z.ZodString, z.ZodNumber>;
countByCarId: z.ZodRecord<z.ZodString, z.ZodNumber>;
damageModel: z.ZodNumber;
disallowVirtualMirror: z.ZodBoolean;
doNotCountCautionLaps: z.ZodBoolean;
doNotPaintCars: z.ZodBoolean;
driverChangeRule: z.ZodNumber;
driverChanges: z.ZodBoolean;
elig: z.ZodObject<{
sessionFull: z.ZodBoolean;
canSpot: z.ZodBoolean;
canWatch: z.ZodBoolean;
canDrive: z.ZodBoolean;
hasSessPassword: z.ZodBoolean;
needsPurchase: z.ZodBoolean;
ownCar: z.ZodBoolean;
ownTrack: z.ZodBoolean;
purchaseSkus: z.ZodArray<z.ZodNumber, "many">;
registered: z.ZodBoolean;
}, "strip", z.ZodTypeAny, {
sessionFull: boolean;
canSpot: boolean;
canWatch: boolean;
canDrive: boolean;
hasSessPassword: boolean;
needsPurchase: boolean;
ownCar: boolean;
ownTrack: boolean;
purchaseSkus: number[];
registered: boolean;
}, {
sessionFull: boolean;
canSpot: boolean;
canWatch: boolean;
canDrive: boolean;
hasSessPassword: boolean;
needsPurchase: boolean;
ownCar: boolean;
ownTrack: boolean;
purchaseSkus: number[];
registered: boolean;
}>;
enablePitlaneCollisions: z.ZodBoolean;
endTime: z.ZodString;
entryCount: z.ZodNumber;
eventTypes: z.ZodArray<z.ZodObject<{
eventType: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
eventType: number;
}, {
eventType: number;
}>, "many">;
farm: z.ZodObject<{
farmId: z.ZodNumber;
displayName: z.ZodString;
imagePath: z.ZodString;
displayed: z.ZodBoolean;
}, "strip", z.ZodTypeAny, {
farmId: number;
displayName: string;
imagePath: string;
displayed: boolean;
}, {
farmId: number;
displayName: string;
imagePath: string;
displayed: boolean;
}>;
fixedSetup: z.ZodBoolean;
friends: z.ZodArray<z.ZodAny, "many">;
fullCourseCautions: z.ZodBoolean;
greenWhiteCheckeredLimit: z.ZodNumber;
hardcoreLevel: z.ZodNumber;
host: z.ZodObject<{
custId: z.ZodNumber;
displayName: z.ZodString;
helmet: z.ZodObject<{
pattern: z.ZodNumber;
color1: z.ZodString;
color2: z.ZodString;
color3: z.ZodString;
faceType: z.ZodNumber;
helmetType: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
}, {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
}>;
}, "strip", z.ZodTypeAny, {
displayName: string;
custId: number;
helmet: {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
};
}, {
displayName: string;
custId: number;
helmet: {
pattern: number;
color1: string;
color2: string;
color3: string;
faceType: number;
helmetType: number;
};
}>;
image: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
largeLogo: z.ZodUnion<[z.ZodNull, z.ZodString]>;
smallLogo: z.ZodString;
}, "strip", z.ZodTypeAny, {
largeLogo: string | null;
smallLogo: string;
}, {
largeLogo: string | null;
smallLogo: string;
}>, z.ZodNull]>>;
incidentLimit: z.ZodNumber;
incidentWarnMode: z.ZodNumber;
incidentWarnParam1: z.ZodNumber;
incidentWarnParam2: z.ZodNumber;
isHeatRacing: z.ZodBoolean;
launchAt: z.ZodString;
leagueId: z.ZodNumber;
leagueName: z.ZodString;
leagueSeasonId: z.ZodNumber;
leagueSeasonName: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
licenseGroupTypes: z.ZodArray<z.ZodObject<{
licenseGroupType: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
licenseGroupType: number;
}, {
licenseGroupType: number;
}>, "many">;
loneQualify: z.ZodBoolean;
luckyDog: z.ZodBoolean;
maxAiDrivers: z.ZodNumber;
maxDrivers: z.ZodNumber;
maxIr: z.ZodNumber;
maxLicenseLevel: z.ZodNumber;
maxTeamDrivers: z.ZodNumber;
maxUsers: z.ZodNumber;
minIr: z.ZodNumber;
minLicenseLevel: z.ZodNumber;
minTeamDrivers: z.ZodNumber;
multiclassType: z.ZodNumber;
mustUseDiffTireTypesInRace: z.ZodBoolean;
noLapperWaveArounds: z.ZodBoolean;
numBroadcasters: z.ZodNumber;
numDrivers: z.ZodNumber;
numFastTows: z.ZodNumber;
numOptLaps: z.ZodNumber;
numSpectatorSlots: z.ZodNumber;
numSpectators: z.ZodNumber;
numSpotters: z.ZodNumber;
openRegExpires: z.ZodString;
orderId: z.ZodNumber;
owner: z.ZodBoolean;
paceCarClassId: z.ZodNull;
paceCarId: z.ZodNull;
passwordProtected: z.ZodBoolean;
pitsInUse: z.ZodNumber;
populated: z.ZodBoolean;
practiceLength: z.ZodNumber;
privateSessionId: z.ZodNumber;
qualifierMustStartRace: z.ZodBoolean;
qualifyLaps: z.ZodNumber;
qualifyLength: z.ZodNumber;
raceLaps: z.ZodNumber;
raceLength: z.ZodNumber;
restarts: z.ZodNumber;
restrictResults: z.ZodBoolean;
restrictViewing: z.ZodBoolean;
rollingStarts: z.ZodBoolean;
sessionDesc: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
sessionFull: z.ZodBoolean;
sessionId: z.ZodNumber;
sessionName: z.ZodString;
sessionType: z.ZodNumber;
sessionTypes: z.ZodArray<z.ZodObject<{
sessionType: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
sessionType: number;
}, {
sessionType: number;
}>, "many">;
shortParadeLap: z.ZodBoolean;
startOnQualTire: z.ZodBoolean;
startZone: z.ZodBoolean;
status: z.ZodNumber;
subsessionId: z.ZodNumber;
teamEntryCount: z.ZodNumber;
telemetryForceToDisk: z.ZodNumber;
telemetryRestriction: z.ZodNumber;
timeLimit: z.ZodNumber;
track: z.ZodObject<{
trackId: z.ZodNumber;
trackName: z.ZodString;
configName: z.ZodOptional<z.ZodUnion<[z.ZodNull, z.ZodString]>>;
}, "strip", z.ZodTypeAny, {
trackId: number;
trackName: string;
configName?: string | null | undefined;
}, {
trackId: number;
trackName: string;
configName?: string | null | undefined;
}>;
trackState: z.ZodObject<{
leaveMarbles: z.ZodBoolean;
practiceGripCompound: z.ZodNumber;
practiceRubber: z.ZodNumber;
qualifyGripCompound: z.ZodNumber;
qualifyRubber: z.ZodNumber;
raceGripCompound: z.ZodNumber;
raceRubber: z.ZodNumber;
warmupGripCompound: z.ZodNumber;
warmupRubber: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
leaveMarbles: boolean;
practiceGripCompound: number;
practiceRubber: number;
qualifyGripCompound: number;
qualifyRubber: number;
raceGripCompound: number;
raceRubber: number;
warmupGripCompound: number;
warmupRubber: number;
}, {
leaveMarbles: boolean;
practiceGripCompound: number;
practiceRubber: number;
qualifyGripCompound: number;
qualifyRubber: number;
raceGripCompound: number;
raceRubber: number;
warmupGripCompound: number;
warmupRubber: number;
}>;
trackTypes: z.ZodArray<z.ZodObject<{
trackType: z.ZodEnum<["dirt_road", "dirt_oval", "oval", "road"]>;
}, "strip", z.ZodTypeAny, {
trackType: "dirt_oval" | "dirt_road" | "oval" | "road";
}, {
trackType: "dirt_oval" | "dirt_road" | "oval" | "road";
}>, "many">;
unsportConductRuleMode: z.ZodNumber;
warmupLength: z.ZodNumber;
watched: z.ZodArray<z.ZodAny, "many">;
weather: z.ZodObject<{
allowFog: z.ZodBoolean;
fog: z.ZodNumber;
forecastOptions: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
forecastType: z.ZodNumber;
precipitation: z.ZodNumber;
skies: z.ZodNumber;
stopPrecip: z.ZodNumber;
temperature: z.ZodNumber;
windDir: z.ZodNumber;
windSpeed: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
forecastType: number;
precipitation: number;
skies: number;
stopPrecip: number;
temperature: number;
windDir: number;
windSpeed: number;
}, {
forecastType: number;
precipitation: number;
skies: number;
stopPrecip: number;
temperature: number;
windDir: number;
windSpeed: number;
}>, z.ZodNull]>>;
humidityUnits: z.ZodNumber;