export declare interface ApiResponse<T> {
    raw: Response;
    value(): Promise<T>;
}

/**
 * Attendance data for teams, leagues, or sports.
 *
 * @export
 * @interface Attendance
 */
export declare interface Attendance {
    /**
     *
     * @type {Array<AttendanceRecord>}
     * @memberof Attendance
     */
    records: Array<AttendanceRecord>;
    /**
     *
     * @type {AttendanceTotals}
     * @memberof Attendance
     */
    aggregateTotals: AttendanceTotals;
}

export declare function AttendanceFromJSON(json: any): Attendance;

export declare function AttendanceFromJSONTyped(json: any, ignoreDiscriminator: boolean): Attendance;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface AttendanceGameType
 */
export declare interface AttendanceGameType {
    /**
     *
     * @type {string}
     * @memberof AttendanceGameType
     */
    id?: string;
    /**
     *
     * @type {string}
     * @memberof AttendanceGameType
     */
    description?: string;
}

export declare function AttendanceGameTypeFromJSON(json: any): AttendanceGameType;

export declare function AttendanceGameTypeFromJSONTyped(json: any, ignoreDiscriminator: boolean): AttendanceGameType;

export declare function AttendanceGameTypeToJSON(json: any): AttendanceGameType;

export declare function AttendanceGameTypeToJSONTyped(value?: AttendanceGameType | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface AttendanceRecord
 */
export declare interface AttendanceRecord {
    /**
     *
     * @type {Team}
     * @memberof AttendanceRecord
     */
    team?: Team;
    /**
     *
     * @type {string}
     * @memberof AttendanceRecord
     */
    year?: string;
    /**
     *
     * @type {AttendanceGameType}
     * @memberof AttendanceRecord
     */
    gameType?: AttendanceGameType;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    gamesTotal?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    gamesAwayTotal?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    gamesHomeTotal?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    openingsTotal?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    openingsTotalAway?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    openingsTotalHome?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    openingsTotalLost?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    attendanceTotal?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    attendanceTotalAway?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    attendanceTotalHome?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    attendanceAverageAway?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    attendanceAverageHome?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    attendanceAverageYtd?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    attendanceOpeningAverage?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    attendanceHigh?: number;
    /**
     *
     * @type {string}
     * @memberof AttendanceRecord
     */
    attendanceHighDate?: string;
    /**
     *
     * @type {AttendanceRecordAttendanceHighGame}
     * @memberof AttendanceRecord
     */
    attendanceHighGame?: AttendanceRecordAttendanceHighGame;
    /**
     *
     * @type {number}
     * @memberof AttendanceRecord
     */
    attendanceLow?: number;
    /**
     *
     * @type {string}
     * @memberof AttendanceRecord
     */
    attendanceLowDate?: string;
    /**
     *
     * @type {AttendanceRecordAttendanceHighGame}
     * @memberof AttendanceRecord
     */
    attendanceLowGame?: AttendanceRecordAttendanceHighGame;
}

/**
 *
 * @export
 * @interface AttendanceRecordAttendanceHighGame
 */
export declare interface AttendanceRecordAttendanceHighGame {
    /**
     *
     * @type {number}
     * @memberof AttendanceRecordAttendanceHighGame
     */
    gamePk?: number;
    /**
     *
     * @type {string}
     * @memberof AttendanceRecordAttendanceHighGame
     */
    link?: string;
    /**
     *
     * @type {Content}
     * @memberof AttendanceRecordAttendanceHighGame
     */
    content?: Content;
    /**
     *
     * @type {string}
     * @memberof AttendanceRecordAttendanceHighGame
     */
    dayNight?: string;
}

export declare function AttendanceRecordAttendanceHighGameFromJSON(json: any): AttendanceRecordAttendanceHighGame;

export declare function AttendanceRecordAttendanceHighGameFromJSONTyped(json: any, ignoreDiscriminator: boolean): AttendanceRecordAttendanceHighGame;

export declare function AttendanceRecordAttendanceHighGameToJSON(json: any): AttendanceRecordAttendanceHighGame;

export declare function AttendanceRecordAttendanceHighGameToJSONTyped(value?: AttendanceRecordAttendanceHighGame | null, ignoreDiscriminator?: boolean): any;

export declare function AttendanceRecordFromJSON(json: any): AttendanceRecord;

export declare function AttendanceRecordFromJSONTyped(json: any, ignoreDiscriminator: boolean): AttendanceRecord;

export declare function AttendanceRecordToJSON(json: any): AttendanceRecord;

export declare function AttendanceRecordToJSONTyped(value?: AttendanceRecord | null, ignoreDiscriminator?: boolean): any;

export declare function AttendanceToJSON(json: any): Attendance;

export declare function AttendanceToJSONTyped(value?: Attendance | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface AttendanceTotals
 */
export declare interface AttendanceTotals {
    /**
     *
     * @type {number}
     * @memberof AttendanceTotals
     */
    openingsTotalAway?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceTotals
     */
    openingsTotalHome?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceTotals
     */
    openingsTotalLost?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceTotals
     */
    openingsTotalYtd?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceTotals
     */
    attendanceTotal?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceTotals
     */
    attendanceTotalAway?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceTotals
     */
    attendanceTotalHome?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceTotals
     */
    attendanceAverageAway?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceTotals
     */
    attendanceAverageHome?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceTotals
     */
    attendanceAverageYtd?: number;
    /**
     *
     * @type {number}
     * @memberof AttendanceTotals
     */
    attendanceHigh?: number;
    /**
     *
     * @type {string}
     * @memberof AttendanceTotals
     */
    attendanceHighDate?: string;
}

export declare function AttendanceTotalsFromJSON(json: any): AttendanceTotals;

export declare function AttendanceTotalsFromJSONTyped(json: any, ignoreDiscriminator: boolean): AttendanceTotals;

export declare function AttendanceTotalsToJSON(json: any): AttendanceTotals;

export declare function AttendanceTotalsToJSONTyped(value?: AttendanceTotals | null, ignoreDiscriminator?: boolean): any;

/**
 * An award recipient record.
 *
 * @export
 * @interface Award
 */
export declare interface Award {
    /**
     *
     * @type {string}
     * @memberof Award
     */
    id?: string;
    /**
     *
     * @type {string}
     * @memberof Award
     */
    name?: string;
    /**
     *
     * @type {string}
     * @memberof Award
     */
    date?: string;
    /**
     *
     * @type {string}
     * @memberof Award
     */
    season?: string;
    /**
     *
     * @type {Team}
     * @memberof Award
     */
    team?: Team;
    /**
     *
     * @type {Person}
     * @memberof Award
     */
    player?: Person;
    /**
     *
     * @type {string}
     * @memberof Award
     */
    notes?: string;
    /**
     *
     * @type {string}
     * @memberof Award
     */
    awardType?: string;
}

export declare function AwardFromJSON(json: any): Award;

export declare function AwardFromJSONTyped(json: any, ignoreDiscriminator: boolean): Award;

/**
 *
 * @export
 * @interface AwardsResponse
 */
export declare interface AwardsResponse {
    /**
     *
     * @type {Array<Award>}
     * @memberof AwardsResponse
     */
    awards?: Array<Award>;
}

export declare function AwardsResponseFromJSON(json: any): AwardsResponse;

export declare function AwardsResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): AwardsResponse;

export declare function AwardsResponseToJSON(json: any): AwardsResponse;

export declare function AwardsResponseToJSONTyped(value?: AwardsResponse | null, ignoreDiscriminator?: boolean): any;

export declare function AwardToJSON(json: any): Award;

export declare function AwardToJSONTyped(value?: Award | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
export declare const BASE_PATH: string;

/**
 * This is the base class for all generated API classes.
 */
export declare class BaseAPI {
    protected configuration: Configuration;
    private static readonly jsonRegex;
    private middleware;
    constructor(configuration?: Configuration);
    withMiddleware<T extends BaseAPI>(this: T, ...middlewares: Middleware[]): T;
    withPreMiddleware<T extends BaseAPI>(this: T, ...preMiddlewares: Array<Middleware['pre']>): T;
    withPostMiddleware<T extends BaseAPI>(this: T, ...postMiddlewares: Array<Middleware['post']>): T;
    /**
     * Check if the given MIME is a JSON MIME.
     * JSON MIME examples:
     *   application/json
     *   application/json; charset=UTF8
     *   APPLICATION/JSON
     *   application/vnd.company+json
     * @param mime - MIME (Multipurpose Internet Mail Extensions)
     * @return True if the given MIME is JSON, false otherwise.
     */
    protected isJsonMime(mime: string | null | undefined): boolean;
    protected request(context: RequestOpts, initOverrides?: RequestInit | InitOverrideFunction): Promise<Response>;
    private createFetchParams;
    private fetchApi;
    /**
     * Create a shallow clone of `this` by constructing a new instance
     * and then shallow cloning data members.
     */
    private clone;
}

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 * Batting Stats
 *
 * @export
 * @interface BattingStats
 */
export declare interface BattingStats {
    /**
     *
     * @type {string}
     * @memberof BattingStats
     */
    summary?: string;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    gamesPlayed?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    flyOuts?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    groundOuts?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    airOuts?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    runs?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    doubles?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    triples?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    homeRuns?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    strikeOuts?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    baseOnBalls?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    intentionalWalks?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    hits?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    hitByPitch?: number;
    /**
     *
     * @type {string}
     * @memberof BattingStats
     */
    avg?: string;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    atBats?: number;
    /**
     *
     * @type {string}
     * @memberof BattingStats
     */
    obp?: string;
    /**
     *
     * @type {string}
     * @memberof BattingStats
     */
    slg?: string;
    /**
     *
     * @type {string}
     * @memberof BattingStats
     */
    ops?: string;
    /**
     *
     * @type {string}
     * @memberof BattingStats
     */
    babip?: string;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    caughtStealing?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    stolenBases?: number;
    /**
     *
     * @type {string}
     * @memberof BattingStats
     */
    stolenBasePercentage?: string;
    /**
     *
     * @type {string}
     * @memberof BattingStats
     */
    caughtStealingPercentage?: string;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    groundIntoDoublePlay?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    groundIntoTriplePlay?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    plateAppearances?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    totalBases?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    rbi?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    leftOnBase?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    sacBunts?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    sacFlies?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    catchersInterference?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    pickoffs?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    numberOfPitches?: number;
    /**
     *
     * @type {string}
     * @memberof BattingStats
     */
    groundOutsToAirouts?: string;
    /**
     *
     * @type {string}
     * @memberof BattingStats
     */
    atBatsPerHomeRun?: string;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    popOuts?: number;
    /**
     *
     * @type {number}
     * @memberof BattingStats
     */
    lineOuts?: number;
}

export declare function BattingStatsFromJSON(json: any): BattingStats;

export declare function BattingStatsFromJSONTyped(json: any, ignoreDiscriminator: boolean): BattingStats;

export declare function BattingStatsToJSON(json: any): BattingStats;

export declare function BattingStatsToJSONTyped(value?: BattingStats | null, ignoreDiscriminator?: boolean): any;

export declare class BlobApiResponse {
    raw: Response;
    constructor(raw: Response);
    value(): Promise<Blob>;
}

/**
 * Boxscore
 *
 * @export
 * @interface Boxscore
 */
export declare interface Boxscore {
    /**
     *
     * @type {BoxscoreTeams}
     * @memberof Boxscore
     */
    teams: BoxscoreTeams;
    /**
     *
     * @type {Array<GameOfficial>}
     * @memberof Boxscore
     */
    officials: Array<GameOfficial>;
    /**
     *
     * @type {Array<BoxscoreInfoItem>}
     * @memberof Boxscore
     */
    info?: Array<BoxscoreInfoItem>;
    /**
     *
     * @type {Array<string>}
     * @memberof Boxscore
     */
    pitchingNotes?: Array<string>;
    /**
     *
     * @type {Array<object>}
     * @memberof Boxscore
     */
    topPerformers?: Array<object>;
}

export declare function BoxscoreFromJSON(json: any): Boxscore;

export declare function BoxscoreFromJSONTyped(json: any, ignoreDiscriminator: boolean): Boxscore;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface BoxscoreInfoItem
 */
export declare interface BoxscoreInfoItem {
    /**
     *
     * @type {string}
     * @memberof BoxscoreInfoItem
     */
    label?: string;
    /**
     *
     * @type {string}
     * @memberof BoxscoreInfoItem
     */
    value?: string;
}

export declare function BoxscoreInfoItemFromJSON(json: any): BoxscoreInfoItem;

export declare function BoxscoreInfoItemFromJSONTyped(json: any, ignoreDiscriminator: boolean): BoxscoreInfoItem;

export declare function BoxscoreInfoItemToJSON(json: any): BoxscoreInfoItem;

export declare function BoxscoreInfoItemToJSONTyped(value?: BoxscoreInfoItem | null, ignoreDiscriminator?: boolean): any;

/**
 * Boxscore Team
 *
 * @export
 * @interface BoxscoreTeam
 */
export declare interface BoxscoreTeam {
    /**
     *
     * @type {Team}
     * @memberof BoxscoreTeam
     */
    team: Team;
    /**
     *
     * @type {TeamStats}
     * @memberof BoxscoreTeam
     */
    teamStats: TeamStats;
    /**
     *
     * @type {Array<number>}
     * @memberof BoxscoreTeam
     */
    batters: Array<number>;
    /**
     *
     * @type {Array<number>}
     * @memberof BoxscoreTeam
     */
    pitchers: Array<number>;
    /**
     *
     * @type {Array<number>}
     * @memberof BoxscoreTeam
     */
    bullpen: Array<number>;
    /**
     *
     * @type {Array<number>}
     * @memberof BoxscoreTeam
     */
    bench: Array<number>;
    /**
     *
     * @type {Array<number>}
     * @memberof BoxscoreTeam
     */
    battingOrder?: Array<number>;
    /**
     *
     * @type {{ [key: string]: Player; }}
     * @memberof BoxscoreTeam
     */
    players: {
        [key: string]: Player;
    };
    /**
     *
     * @type {Array<BoxscoreTeamInfoSection>}
     * @memberof BoxscoreTeam
     */
    info?: Array<BoxscoreTeamInfoSection>;
    /**
     *
     * @type {Array<BoxscoreTeamInfoSectionFieldListInner>}
     * @memberof BoxscoreTeam
     */
    note?: Array<BoxscoreTeamInfoSectionFieldListInner>;
}

export declare function BoxscoreTeamFromJSON(json: any): BoxscoreTeam;

export declare function BoxscoreTeamFromJSONTyped(json: any, ignoreDiscriminator: boolean): BoxscoreTeam;

/**
 *
 * @export
 * @interface BoxscoreTeamInfoSection
 */
export declare interface BoxscoreTeamInfoSection {
    /**
     *
     * @type {string}
     * @memberof BoxscoreTeamInfoSection
     */
    title?: string;
    /**
     *
     * @type {Array<BoxscoreTeamInfoSectionFieldListInner>}
     * @memberof BoxscoreTeamInfoSection
     */
    fieldList?: Array<BoxscoreTeamInfoSectionFieldListInner>;
}

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface BoxscoreTeamInfoSectionFieldListInner
 */
export declare interface BoxscoreTeamInfoSectionFieldListInner {
    /**
     *
     * @type {string}
     * @memberof BoxscoreTeamInfoSectionFieldListInner
     */
    label?: string;
    /**
     *
     * @type {string}
     * @memberof BoxscoreTeamInfoSectionFieldListInner
     */
    value?: string;
}

export declare function BoxscoreTeamInfoSectionFieldListInnerFromJSON(json: any): BoxscoreTeamInfoSectionFieldListInner;

export declare function BoxscoreTeamInfoSectionFieldListInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): BoxscoreTeamInfoSectionFieldListInner;

export declare function BoxscoreTeamInfoSectionFieldListInnerToJSON(json: any): BoxscoreTeamInfoSectionFieldListInner;

export declare function BoxscoreTeamInfoSectionFieldListInnerToJSONTyped(value?: BoxscoreTeamInfoSectionFieldListInner | null, ignoreDiscriminator?: boolean): any;

export declare function BoxscoreTeamInfoSectionFromJSON(json: any): BoxscoreTeamInfoSection;

export declare function BoxscoreTeamInfoSectionFromJSONTyped(json: any, ignoreDiscriminator: boolean): BoxscoreTeamInfoSection;

export declare function BoxscoreTeamInfoSectionToJSON(json: any): BoxscoreTeamInfoSection;

export declare function BoxscoreTeamInfoSectionToJSONTyped(value?: BoxscoreTeamInfoSection | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface BoxscoreTeams
 */
export declare interface BoxscoreTeams {
    /**
     *
     * @type {BoxscoreTeam}
     * @memberof BoxscoreTeams
     */
    away: BoxscoreTeam;
    /**
     *
     * @type {BoxscoreTeam}
     * @memberof BoxscoreTeams
     */
    home: BoxscoreTeam;
}

export declare function BoxscoreTeamsFromJSON(json: any): BoxscoreTeams;

export declare function BoxscoreTeamsFromJSONTyped(json: any, ignoreDiscriminator: boolean): BoxscoreTeams;

export declare function BoxscoreTeamsToJSON(json: any): BoxscoreTeams;

export declare function BoxscoreTeamsToJSONTyped(value?: BoxscoreTeams | null, ignoreDiscriminator?: boolean): any;

export declare function BoxscoreTeamToJSON(json: any): BoxscoreTeam;

export declare function BoxscoreTeamToJSONTyped(value?: BoxscoreTeam | null, ignoreDiscriminator?: boolean): any;

export declare function BoxscoreToJSON(json: any): Boxscore;

export declare function BoxscoreToJSONTyped(value?: Boxscore | null, ignoreDiscriminator?: boolean): any;

export declare function canConsumeForm(consumes: Consume[]): boolean;

/**
 * A coach on a team's coaching staff.
 *
 * @export
 * @interface Coach
 */
export declare interface Coach {
    /**
     *
     * @type {Person}
     * @memberof Coach
     */
    person?: Person;
    /**
     *
     * @type {string}
     * @memberof Coach
     */
    jerseyNumber?: string;
    /**
     *
     * @type {string}
     * @memberof Coach
     */
    job?: string;
    /**
     *
     * @type {string}
     * @memberof Coach
     */
    jobId?: string;
    /**
     *
     * @type {string}
     * @memberof Coach
     */
    title?: string;
}

/**
 *
 * @export
 * @interface CoachesResponse
 */
export declare interface CoachesResponse {
    /**
     *
     * @type {Array<Coach>}
     * @memberof CoachesResponse
     */
    roster: Array<Coach>;
    /**
     *
     * @type {string}
     * @memberof CoachesResponse
     */
    link?: string;
    /**
     *
     * @type {number}
     * @memberof CoachesResponse
     */
    teamId?: number;
    /**
     *
     * @type {string}
     * @memberof CoachesResponse
     */
    rosterType?: string;
}

export declare function CoachesResponseFromJSON(json: any): CoachesResponse;

export declare function CoachesResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): CoachesResponse;

export declare function CoachesResponseToJSON(json: any): CoachesResponse;

export declare function CoachesResponseToJSONTyped(value?: CoachesResponse | null, ignoreDiscriminator?: boolean): any;

export declare function CoachFromJSON(json: any): Coach;

export declare function CoachFromJSONTyped(json: any, ignoreDiscriminator: boolean): Coach;

export declare function CoachToJSON(json: any): Coach;

export declare function CoachToJSONTyped(value?: Coach | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 * Code and description pair (e.g. batSide, pitchHand).
 *
 * @export
 * @interface CodeDescription
 */
export declare interface CodeDescription {
    /**
     *
     * @type {string}
     * @memberof CodeDescription
     */
    code?: string;
    /**
     *
     * @type {string}
     * @memberof CodeDescription
     */
    description?: string;
}

export declare function CodeDescriptionFromJSON(json: any): CodeDescription;

export declare function CodeDescriptionFromJSONTyped(json: any, ignoreDiscriminator: boolean): CodeDescription;

export declare function CodeDescriptionToJSON(json: any): CodeDescription;

export declare function CodeDescriptionToJSONTyped(value?: CodeDescription | null, ignoreDiscriminator?: boolean): any;

export declare const COLLECTION_FORMATS: {
    csv: string;
    ssv: string;
    tsv: string;
    pipes: string;
};

export declare class Configuration {
    private configuration;
    constructor(configuration?: ConfigurationParameters);
    set config(configuration: Configuration);
    get basePath(): string;
    get fetchApi(): FetchAPI | undefined;
    get middleware(): Middleware[];
    get queryParamsStringify(): (params: HTTPQuery) => string;
    get username(): string | undefined;
    get password(): string | undefined;
    get apiKey(): ((name: string) => string | Promise<string>) | undefined;
    get accessToken(): ((name?: string, scopes?: string[]) => string | Promise<string>) | undefined;
    get headers(): HTTPHeaders | undefined;
    get credentials(): RequestCredentials | undefined;
}

export declare interface ConfigurationParameters {
    basePath?: string;
    fetchApi?: FetchAPI;
    middleware?: Middleware[];
    queryParamsStringify?: (params: HTTPQuery) => string;
    username?: string;
    password?: string;
    apiKey?: string | Promise<string> | ((name: string) => string | Promise<string>);
    accessToken?: string | Promise<string> | ((name?: string, scopes?: string[]) => string | Promise<string>);
    headers?: HTTPHeaders;
    credentials?: RequestCredentials;
}

export declare interface Consume {
    contentType: string;
}

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 * Links to game-related content (highlights, editorials, etc.). Present on schedule games.
 *
 * @export
 * @interface Content
 */
export declare interface Content {
    /**
     * API path for this game's content
     * @type {string}
     * @memberof Content
     */
    link?: string;
}

export declare function ContentFromJSON(json: any): Content;

export declare function ContentFromJSONTyped(json: any, ignoreDiscriminator: boolean): Content;

export declare function ContentToJSON(json: any): Content;

export declare function ContentToJSONTyped(value?: Content | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface Coordinates
 */
export declare interface Coordinates {
    /**
     *
     * @type {number}
     * @memberof Coordinates
     */
    latitude?: number;
    /**
     *
     * @type {number}
     * @memberof Coordinates
     */
    longitude?: number;
}

export declare function CoordinatesFromJSON(json: any): Coordinates;

export declare function CoordinatesFromJSONTyped(json: any, ignoreDiscriminator: boolean): Coordinates;

export declare function CoordinatesToJSON(json: any): Coordinates;

export declare function CoordinatesToJSONTyped(value?: Coordinates | null, ignoreDiscriminator?: boolean): any;

export declare const DefaultConfig: Configuration;

/**
 * Division
 *
 * @export
 * @interface Division
 */
export declare interface Division {
    /**
     *
     * @type {number}
     * @memberof Division
     */
    id: number;
    /**
     *
     * @type {string}
     * @memberof Division
     */
    name: string;
    /**
     *
     * @type {string}
     * @memberof Division
     */
    season?: string;
    /**
     *
     * @type {string}
     * @memberof Division
     */
    nameShort?: string;
    /**
     *
     * @type {string}
     * @memberof Division
     */
    link?: string;
    /**
     *
     * @type {string}
     * @memberof Division
     */
    abbreviation?: string;
    /**
     *
     * @type {League}
     * @memberof Division
     */
    league?: League;
    /**
     *
     * @type {Sport}
     * @memberof Division
     */
    sport?: Sport;
    /**
     *
     * @type {boolean}
     * @memberof Division
     */
    hasWildcard?: boolean;
    /**
     *
     * @type {number}
     * @memberof Division
     */
    sortOrder?: number;
    /**
     *
     * @type {number}
     * @memberof Division
     */
    numPlayoffTeams?: number;
    /**
     *
     * @type {boolean}
     * @memberof Division
     */
    active?: boolean;
}

export declare function DivisionFromJSON(json: any): Division;

export declare function DivisionFromJSONTyped(json: any, ignoreDiscriminator: boolean): Division;

/**
 *
 * @export
 * @interface Divisions
 */
export declare interface Divisions {
    /**
     *
     * @type {Array<Division>}
     * @memberof Divisions
     */
    divisions: Array<Division>;
}

export declare function DivisionsFromJSON(json: any): Divisions;

export declare function DivisionsFromJSONTyped(json: any, ignoreDiscriminator: boolean): Divisions;

/**
 * Standings
 *
 * @export
 * @interface DivisionStandings
 */
export declare interface DivisionStandings {
    /**
     *
     * @type {string}
     * @memberof DivisionStandings
     */
    standingsType?: string;
    /**
     *
     * @type {League}
     * @memberof DivisionStandings
     */
    league: League;
    /**
     *
     * @type {Division}
     * @memberof DivisionStandings
     */
    division: Division;
    /**
     *
     * @type {Sport}
     * @memberof DivisionStandings
     */
    sport: Sport;
    /**
     *
     * @type {RoundRobin}
     * @memberof DivisionStandings
     */
    roundRobin?: RoundRobin;
    /**
     *
     * @type {string}
     * @memberof DivisionStandings
     */
    lastUpdated?: string;
    /**
     *
     * @type {Array<ModelRecord>}
     * @memberof DivisionStandings
     */
    teamRecords: Array<ModelRecord>;
}

export declare function DivisionStandingsFromJSON(json: any): DivisionStandings;

export declare function DivisionStandingsFromJSONTyped(json: any, ignoreDiscriminator: boolean): DivisionStandings;

/**
 *
 * @export
 * @interface DivisionStandingsList
 */
export declare interface DivisionStandingsList {
    /**
     *
     * @type {Array<DivisionStandings>}
     * @memberof DivisionStandingsList
     */
    records: Array<DivisionStandings>;
}

export declare function DivisionStandingsListFromJSON(json: any): DivisionStandingsList;

export declare function DivisionStandingsListFromJSONTyped(json: any, ignoreDiscriminator: boolean): DivisionStandingsList;

export declare function DivisionStandingsListToJSON(json: any): DivisionStandingsList;

export declare function DivisionStandingsListToJSONTyped(value?: DivisionStandingsList | null, ignoreDiscriminator?: boolean): any;

export declare function DivisionStandingsToJSON(json: any): DivisionStandings;

export declare function DivisionStandingsToJSONTyped(value?: DivisionStandings | null, ignoreDiscriminator?: boolean): any;

export declare function DivisionsToJSON(json: any): Divisions;

export declare function DivisionsToJSONTyped(value?: Divisions | null, ignoreDiscriminator?: boolean): any;

export declare function DivisionToJSON(json: any): Division;

export declare function DivisionToJSONTyped(value?: Division | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface DraftData
 */
export declare interface DraftData {
    /**
     *
     * @type {number}
     * @memberof DraftData
     */
    draftYear?: number;
    /**
     *
     * @type {Array<DraftRound>}
     * @memberof DraftData
     */
    rounds?: Array<DraftRound>;
}

export declare function DraftDataFromJSON(json: any): DraftData;

export declare function DraftDataFromJSONTyped(json: any, ignoreDiscriminator: boolean): DraftData;

export declare function DraftDataToJSON(json: any): DraftData;

export declare function DraftDataToJSONTyped(value?: DraftData | null, ignoreDiscriminator?: boolean): any;

/**
 * A pick made in the MLB draft.
 *
 * @export
 * @interface DraftPick
 */
export declare interface DraftPick {
    /**
     *
     * @type {number}
     * @memberof DraftPick
     */
    bisPlayerId?: number;
    /**
     *
     * @type {string}
     * @memberof DraftPick
     */
    pickRound: string;
    /**
     *
     * @type {number}
     * @memberof DraftPick
     */
    pickNumber: number;
    /**
     *
     * @type {number}
     * @memberof DraftPick
     */
    roundPickNumber: number;
    /**
     *
     * @type {number}
     * @memberof DraftPick
     */
    displayPickNumber?: number;
    /**
     *
     * @type {number}
     * @memberof DraftPick
     */
    rank?: number;
    /**
     *
     * @type {string}
     * @memberof DraftPick
     */
    pickValue?: string;
    /**
     *
     * @type {string}
     * @memberof DraftPick
     */
    signingBonus?: string;
    /**
     *
     * @type {DraftPickHome}
     * @memberof DraftPick
     */
    home?: DraftPickHome;
    /**
     *
     * @type {string}
     * @memberof DraftPick
     */
    scoutingReport?: string;
    /**
     *
     * @type {DraftPickSchool}
     * @memberof DraftPick
     */
    school?: DraftPickSchool;
    /**
     *
     * @type {string}
     * @memberof DraftPick
     */
    blurb?: string;
    /**
     *
     * @type {string}
     * @memberof DraftPick
     */
    headshotLink?: string;
    /**
     *
     * @type {Person}
     * @memberof DraftPick
     */
    person?: Person;
    /**
     *
     * @type {Team}
     * @memberof DraftPick
     */
    team?: Team;
    /**
     *
     * @type {CodeDescription}
     * @memberof DraftPick
     */
    draftType?: CodeDescription;
    /**
     *
     * @type {boolean}
     * @memberof DraftPick
     */
    isDrafted?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof DraftPick
     */
    isPass?: boolean;
    /**
     *
     * @type {string}
     * @memberof DraftPick
     */
    year?: string;
}

export declare function DraftPickFromJSON(json: any): DraftPick;

export declare function DraftPickFromJSONTyped(json: any, ignoreDiscriminator: boolean): DraftPick;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface DraftPickHome
 */
export declare interface DraftPickHome {
    /**
     *
     * @type {string}
     * @memberof DraftPickHome
     */
    city?: string;
    /**
     *
     * @type {string}
     * @memberof DraftPickHome
     */
    state?: string;
    /**
     *
     * @type {string}
     * @memberof DraftPickHome
     */
    country?: string;
}

export declare function DraftPickHomeFromJSON(json: any): DraftPickHome;

export declare function DraftPickHomeFromJSONTyped(json: any, ignoreDiscriminator: boolean): DraftPickHome;

export declare function DraftPickHomeToJSON(json: any): DraftPickHome;

export declare function DraftPickHomeToJSONTyped(value?: DraftPickHome | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface DraftPickSchool
 */
export declare interface DraftPickSchool {
    /**
     *
     * @type {string}
     * @memberof DraftPickSchool
     */
    name?: string;
    /**
     *
     * @type {string}
     * @memberof DraftPickSchool
     */
    schoolClass?: string;
    /**
     *
     * @type {string}
     * @memberof DraftPickSchool
     */
    city?: string;
    /**
     *
     * @type {string}
     * @memberof DraftPickSchool
     */
    state?: string;
    /**
     *
     * @type {string}
     * @memberof DraftPickSchool
     */
    country?: string;
}

export declare function DraftPickSchoolFromJSON(json: any): DraftPickSchool;

export declare function DraftPickSchoolFromJSONTyped(json: any, ignoreDiscriminator: boolean): DraftPickSchool;

export declare function DraftPickSchoolToJSON(json: any): DraftPickSchool;

export declare function DraftPickSchoolToJSONTyped(value?: DraftPickSchool | null, ignoreDiscriminator?: boolean): any;

export declare function DraftPickToJSON(json: any): DraftPick;

export declare function DraftPickToJSONTyped(value?: DraftPick | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface DraftResponse
 */
export declare interface DraftResponse {
    /**
     *
     * @type {DraftData}
     * @memberof DraftResponse
     */
    drafts?: DraftData;
}

export declare function DraftResponseFromJSON(json: any): DraftResponse;

export declare function DraftResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): DraftResponse;

export declare function DraftResponseToJSON(json: any): DraftResponse;

export declare function DraftResponseToJSONTyped(value?: DraftResponse | null, ignoreDiscriminator?: boolean): any;

/**
 * A round in the MLB draft containing picks.
 *
 * @export
 * @interface DraftRound
 */
export declare interface DraftRound {
    /**
     *
     * @type {string}
     * @memberof DraftRound
     */
    round?: string;
    /**
     *
     * @type {Array<DraftPick>}
     * @memberof DraftRound
     */
    picks?: Array<DraftPick>;
}

export declare function DraftRoundFromJSON(json: any): DraftRound;

export declare function DraftRoundFromJSONTyped(json: any, ignoreDiscriminator: boolean): DraftRound;

export declare function DraftRoundToJSON(json: any): DraftRound;

export declare function DraftRoundToJSONTyped(value?: DraftRound | null, ignoreDiscriminator?: boolean): any;

export declare interface ErrorContext {
    fetch: FetchAPI;
    url: string;
    init: RequestInit;
    error: unknown;
    response?: Response;
}

export declare function exists(json: any, key: string): boolean;

export declare type FetchAPI = WindowOrWorkerGlobalScope['fetch'];

export declare class FetchError extends Error {
    cause: Error;
    name: "FetchError";
    constructor(cause: Error, msg?: string);
}

export declare interface FetchParams {
    url: string;
    init: RequestInit;
}

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 * Fielding Stats
 *
 * @export
 * @interface FieldingStats
 */
export declare interface FieldingStats {
    /**
     *
     * @type {number}
     * @memberof FieldingStats
     */
    caughtStealing?: number;
    /**
     *
     * @type {number}
     * @memberof FieldingStats
     */
    stolenBases?: number;
    /**
     *
     * @type {string}
     * @memberof FieldingStats
     */
    stolenBasePercentage?: string;
    /**
     *
     * @type {string}
     * @memberof FieldingStats
     */
    caughtStealingPercentage?: string;
    /**
     *
     * @type {number}
     * @memberof FieldingStats
     */
    assists?: number;
    /**
     *
     * @type {number}
     * @memberof FieldingStats
     */
    putOuts?: number;
    /**
     *
     * @type {number}
     * @memberof FieldingStats
     */
    errors?: number;
    /**
     *
     * @type {number}
     * @memberof FieldingStats
     */
    chances?: number;
    /**
     *
     * @type {string}
     * @memberof FieldingStats
     */
    fielding?: string;
    /**
     *
     * @type {number}
     * @memberof FieldingStats
     */
    passedBall?: number;
    /**
     *
     * @type {number}
     * @memberof FieldingStats
     */
    pickoffs?: number;
}

export declare function FieldingStatsFromJSON(json: any): FieldingStats;

export declare function FieldingStatsFromJSONTyped(json: any, ignoreDiscriminator: boolean): FieldingStats;

export declare function FieldingStatsToJSON(json: any): FieldingStats;

export declare function FieldingStatsToJSONTyped(value?: FieldingStats | null, ignoreDiscriminator?: boolean): any;

/**
 * Game Thing
 *
 * @export
 * @interface Game
 */
export declare interface Game {
    /**
     *
     * @type {number}
     * @memberof Game
     */
    gamePk: number;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    gameGuid: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    link?: string;
    /**
     *
     * @type {GameType}
     * @memberof Game
     */
    gameType: GameType;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    season: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    gameDate: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    officialDate: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    rescheduledTo?: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    rescheduledToDate?: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    rescheduledFrom?: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    rescheduledFromDate?: string;
    /**
     *
     * @type {GameStatus}
     * @memberof Game
     */
    status: GameStatus;
    /**
     *
     * @type {GameTeams}
     * @memberof Game
     */
    teams: GameTeams;
    /**
     *
     * @type {Venue}
     * @memberof Game
     */
    venue?: Venue;
    /**
     *
     * @type {Content}
     * @memberof Game
     */
    content?: Content;
    /**
     *
     * @type {boolean}
     * @memberof Game
     */
    isTie?: boolean;
    /**
     *
     * @type {number}
     * @memberof Game
     */
    gameNumber?: number;
    /**
     *
     * @type {boolean}
     * @memberof Game
     */
    publicFacing?: boolean;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    doubleHeader?: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    gamedayType?: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    tiebreaker?: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    calendarEventID?: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    seasonDisplay?: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    dayNight?: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    description?: string;
    /**
     *
     * @type {number}
     * @memberof Game
     */
    scheduledInnings?: number;
    /**
     *
     * @type {boolean}
     * @memberof Game
     */
    reverseHomeAwayStatus?: boolean;
    /**
     *
     * @type {number}
     * @memberof Game
     */
    inningBreakLength?: number;
    /**
     *
     * @type {number}
     * @memberof Game
     */
    gamesInSeries?: number;
    /**
     *
     * @type {number}
     * @memberof Game
     */
    seriesGameNumber?: number;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    seriesDescription?: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    recordSource?: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    ifNecessary?: string;
    /**
     *
     * @type {string}
     * @memberof Game
     */
    ifNecessaryDescription?: string;
}

/**
 *
 * @export
 * @interface GameData
 */
export declare interface GameData {
    /**
     *
     * @type {GameDataGame}
     * @memberof GameData
     */
    game?: GameDataGame;
    /**
     *
     * @type {GameDatetime}
     * @memberof GameData
     */
    datetime?: GameDatetime;
    /**
     *
     * @type {GameLiveFeedStatus}
     * @memberof GameData
     */
    status?: GameLiveFeedStatus;
    /**
     *
     * @type {GameDataTeams}
     * @memberof GameData
     */
    teams?: GameDataTeams;
    /**
     *
     * @type {{ [key: string]: Person; }}
     * @memberof GameData
     */
    players?: {
        [key: string]: Person;
    };
    /**
     *
     * @type {Venue}
     * @memberof GameData
     */
    venue?: Venue;
    /**
     *
     * @type {GameWeather}
     * @memberof GameData
     */
    weather?: GameWeather;
    /**
     *
     * @type {Person}
     * @memberof GameData
     */
    officialScorer?: Person;
    /**
     *
     * @type {Person}
     * @memberof GameData
     */
    primaryDatacaster?: Person;
    /**
     *
     * @type {GameDataMoundVisits}
     * @memberof GameData
     */
    moundVisits?: GameDataMoundVisits;
    /**
     *
     * @type {GameDataFlags}
     * @memberof GameData
     */
    flags?: GameDataFlags;
    /**
     *
     * @type {Array<object>}
     * @memberof GameData
     */
    alerts?: Array<object>;
    /**
     *
     * @type {GameDataReview}
     * @memberof GameData
     */
    review?: GameDataReview;
    /**
     *
     * @type {{ [key: string]: any; }}
     * @memberof GameData
     */
    gameInfo?: {
        [key: string]: any;
    };
    /**
     *
     * @type {Venue}
     * @memberof GameData
     */
    officialVenue?: Venue;
    /**
     *
     * @type {ProbablePitchers}
     * @memberof GameData
     */
    probablePitchers?: ProbablePitchers;
}

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GameDataFlags
 */
export declare interface GameDataFlags {
    /**
     *
     * @type {boolean}
     * @memberof GameDataFlags
     */
    noHitter?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof GameDataFlags
     */
    perfectGame?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof GameDataFlags
     */
    awayTeamNoHitter?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof GameDataFlags
     */
    awayTeamPerfectGame?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof GameDataFlags
     */
    homeTeamNoHitter?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof GameDataFlags
     */
    homeTeamPerfectGame?: boolean;
}

export declare function GameDataFlagsFromJSON(json: any): GameDataFlags;

export declare function GameDataFlagsFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameDataFlags;

export declare function GameDataFlagsToJSON(json: any): GameDataFlags;

export declare function GameDataFlagsToJSONTyped(value?: GameDataFlags | null, ignoreDiscriminator?: boolean): any;

export declare function GameDataFromJSON(json: any): GameData;

export declare function GameDataFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameData;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GameDataGame
 */
export declare interface GameDataGame {
    /**
     *
     * @type {number}
     * @memberof GameDataGame
     */
    pk?: number;
    /**
     *
     * @type {string}
     * @memberof GameDataGame
     */
    type?: string;
    /**
     *
     * @type {string}
     * @memberof GameDataGame
     */
    doubleHeader?: string;
    /**
     *
     * @type {string}
     * @memberof GameDataGame
     */
    id?: string;
    /**
     *
     * @type {string}
     * @memberof GameDataGame
     */
    gamedayType?: string;
    /**
     *
     * @type {string}
     * @memberof GameDataGame
     */
    tiebreaker?: string;
    /**
     *
     * @type {string}
     * @memberof GameDataGame
     */
    calendarEventID?: string;
    /**
     *
     * @type {number}
     * @memberof GameDataGame
     */
    gameNumber?: number;
    /**
     *
     * @type {string}
     * @memberof GameDataGame
     */
    season?: string;
    /**
     *
     * @type {string}
     * @memberof GameDataGame
     */
    seasonDisplay?: string;
}

export declare function GameDataGameFromJSON(json: any): GameDataGame;

export declare function GameDataGameFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameDataGame;

export declare function GameDataGameToJSON(json: any): GameDataGame;

export declare function GameDataGameToJSONTyped(value?: GameDataGame | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface GameDataMoundVisits
 */
export declare interface GameDataMoundVisits {
    /**
     *
     * @type {GameDataMoundVisitsAway}
     * @memberof GameDataMoundVisits
     */
    away?: GameDataMoundVisitsAway;
    /**
     *
     * @type {GameDataMoundVisitsAway}
     * @memberof GameDataMoundVisits
     */
    home?: GameDataMoundVisitsAway;
}

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GameDataMoundVisitsAway
 */
export declare interface GameDataMoundVisitsAway {
    /**
     *
     * @type {number}
     * @memberof GameDataMoundVisitsAway
     */
    used?: number;
    /**
     *
     * @type {number}
     * @memberof GameDataMoundVisitsAway
     */
    remaining?: number;
}

export declare function GameDataMoundVisitsAwayFromJSON(json: any): GameDataMoundVisitsAway;

export declare function GameDataMoundVisitsAwayFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameDataMoundVisitsAway;

export declare function GameDataMoundVisitsAwayToJSON(json: any): GameDataMoundVisitsAway;

export declare function GameDataMoundVisitsAwayToJSONTyped(value?: GameDataMoundVisitsAway | null, ignoreDiscriminator?: boolean): any;

export declare function GameDataMoundVisitsFromJSON(json: any): GameDataMoundVisits;

export declare function GameDataMoundVisitsFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameDataMoundVisits;

export declare function GameDataMoundVisitsToJSON(json: any): GameDataMoundVisits;

export declare function GameDataMoundVisitsToJSONTyped(value?: GameDataMoundVisits | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface GameDataReview
 */
export declare interface GameDataReview {
    /**
     *
     * @type {boolean}
     * @memberof GameDataReview
     */
    hasChallenges?: boolean;
    /**
     *
     * @type {GameDataMoundVisitsAway}
     * @memberof GameDataReview
     */
    away?: GameDataMoundVisitsAway;
    /**
     *
     * @type {GameDataMoundVisitsAway}
     * @memberof GameDataReview
     */
    home?: GameDataMoundVisitsAway;
}

export declare function GameDataReviewFromJSON(json: any): GameDataReview;

export declare function GameDataReviewFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameDataReview;

export declare function GameDataReviewToJSON(json: any): GameDataReview;

export declare function GameDataReviewToJSONTyped(value?: GameDataReview | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface GameDataTeams
 */
export declare interface GameDataTeams {
    /**
     *
     * @type {Team}
     * @memberof GameDataTeams
     */
    away?: Team;
    /**
     *
     * @type {Team}
     * @memberof GameDataTeams
     */
    home?: Team;
}

export declare function GameDataTeamsFromJSON(json: any): GameDataTeams;

export declare function GameDataTeamsFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameDataTeams;

export declare function GameDataTeamsToJSON(json: any): GameDataTeams;

export declare function GameDataTeamsToJSONTyped(value?: GameDataTeams | null, ignoreDiscriminator?: boolean): any;

export declare function GameDataToJSON(json: any): GameData;

export declare function GameDataToJSONTyped(value?: GameData | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GameDatetime
 */
export declare interface GameDatetime {
    /**
     *
     * @type {string}
     * @memberof GameDatetime
     */
    dateTime?: string;
    /**
     *
     * @type {string}
     * @memberof GameDatetime
     */
    originalDate?: string;
    /**
     *
     * @type {string}
     * @memberof GameDatetime
     */
    officialDate?: string;
    /**
     *
     * @type {string}
     * @memberof GameDatetime
     */
    dayNight?: string;
    /**
     *
     * @type {string}
     * @memberof GameDatetime
     */
    time?: string;
    /**
     *
     * @type {string}
     * @memberof GameDatetime
     */
    ampm?: string;
}

export declare function GameDatetimeFromJSON(json: any): GameDatetime;

export declare function GameDatetimeFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameDatetime;

export declare function GameDatetimeToJSON(json: any): GameDatetime;

export declare function GameDatetimeToJSONTyped(value?: GameDatetime | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface GameDecisions
 */
export declare interface GameDecisions {
    /**
     *
     * @type {Person}
     * @memberof GameDecisions
     */
    winner?: Person;
    /**
     *
     * @type {Person}
     * @memberof GameDecisions
     */
    loser?: Person;
    /**
     *
     * @type {Person}
     * @memberof GameDecisions
     */
    save?: Person;
}

export declare function GameDecisionsFromJSON(json: any): GameDecisions;

export declare function GameDecisionsFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameDecisions;

export declare function GameDecisionsToJSON(json: any): GameDecisions;

export declare function GameDecisionsToJSONTyped(value?: GameDecisions | null, ignoreDiscriminator?: boolean): any;

export declare function GameFromJSON(json: any): Game;

export declare function GameFromJSONTyped(json: any, ignoreDiscriminator: boolean): Game;

/**
 * The GUMBO live feed for a game, containing gameData, liveData (plays, linescore, boxscore).
 *
 * @export
 * @interface GameLiveFeed
 */
export declare interface GameLiveFeed {
    /**
     *
     * @type {number}
     * @memberof GameLiveFeed
     */
    gamePk: number;
    /**
     *
     * @type {string}
     * @memberof GameLiveFeed
     */
    link: string;
    /**
     *
     * @type {GameMetaData}
     * @memberof GameLiveFeed
     */
    metaData?: GameMetaData;
    /**
     *
     * @type {GameData}
     * @memberof GameLiveFeed
     */
    gameData: GameData;
    /**
     *
     * @type {LiveData}
     * @memberof GameLiveFeed
     */
    liveData: LiveData;
}

export declare function GameLiveFeedFromJSON(json: any): GameLiveFeed;

export declare function GameLiveFeedFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameLiveFeed;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GameLiveFeedStatus
 */
export declare interface GameLiveFeedStatus {
    /**
     *
     * @type {string}
     * @memberof GameLiveFeedStatus
     */
    abstractGameState?: string;
    /**
     *
     * @type {string}
     * @memberof GameLiveFeedStatus
     */
    codedGameState?: string;
    /**
     *
     * @type {string}
     * @memberof GameLiveFeedStatus
     */
    detailedState?: string;
    /**
     *
     * @type {string}
     * @memberof GameLiveFeedStatus
     */
    statusCode?: string;
    /**
     *
     * @type {boolean}
     * @memberof GameLiveFeedStatus
     */
    startTimeTBD?: boolean;
    /**
     *
     * @type {string}
     * @memberof GameLiveFeedStatus
     */
    abstractGameCode?: string;
}

export declare function GameLiveFeedStatusFromJSON(json: any): GameLiveFeedStatus;

export declare function GameLiveFeedStatusFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameLiveFeedStatus;

export declare function GameLiveFeedStatusToJSON(json: any): GameLiveFeedStatus;

export declare function GameLiveFeedStatusToJSONTyped(value?: GameLiveFeedStatus | null, ignoreDiscriminator?: boolean): any;

export declare function GameLiveFeedToJSON(json: any): GameLiveFeed;

export declare function GameLiveFeedToJSONTyped(value?: GameLiveFeed | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GameMetaData
 */
export declare interface GameMetaData {
    /**
     *
     * @type {number}
     * @memberof GameMetaData
     */
    wait?: number;
    /**
     *
     * @type {string}
     * @memberof GameMetaData
     */
    timeStamp?: string;
    /**
     *
     * @type {Array<string>}
     * @memberof GameMetaData
     */
    gameEvents?: Array<string>;
    /**
     *
     * @type {Array<string>}
     * @memberof GameMetaData
     */
    logicalEvents?: Array<string>;
}

export declare function GameMetaDataFromJSON(json: any): GameMetaData;

export declare function GameMetaDataFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameMetaData;

export declare function GameMetaDataToJSON(json: any): GameMetaData;

export declare function GameMetaDataToJSONTyped(value?: GameMetaData | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface GameOfficial
 */
export declare interface GameOfficial {
    /**
     *
     * @type {Official}
     * @memberof GameOfficial
     */
    official?: Official;
    /**
     *
     * @type {string}
     * @memberof GameOfficial
     */
    officialType?: string;
}

export declare function GameOfficialFromJSON(json: any): GameOfficial;

export declare function GameOfficialFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameOfficial;

export declare function GameOfficialToJSON(json: any): GameOfficial;

export declare function GameOfficialToJSONTyped(value?: GameOfficial | null, ignoreDiscriminator?: boolean): any;

/**
 * Pace of game metrics for sports, leagues, or teams.
 *
 * @export
 * @interface GamePace
 */
export declare interface GamePace {
    /**
     *
     * @type {Array<GamePaceTeamData>}
     * @memberof GamePace
     */
    teams?: Array<GamePaceTeamData>;
    /**
     *
     * @type {Array<GamePaceLeagueData>}
     * @memberof GamePace
     */
    leagues?: Array<GamePaceLeagueData>;
    /**
     *
     * @type {Array<GamePaceSportData>}
     * @memberof GamePace
     */
    sports?: Array<GamePaceSportData>;
}

export declare function GamePaceFromJSON(json: any): GamePace;

export declare function GamePaceFromJSONTyped(json: any, ignoreDiscriminator: boolean): GamePace;

/**
 *
 * @export
 * @interface GamePaceLeagueData
 */
export declare interface GamePaceLeagueData {
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    hitsPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    runsPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    pitchesPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    plateAppearancesPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    hitsPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    runsPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    pitchesPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    plateAppearancesPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    hitsPerRun?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    pitchesPerPitcher?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    pitchersPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    inningsPlayedPerGame?: number;
    /**
     *
     * @type {string}
     * @memberof GamePaceLeagueData
     */
    timePer9Inn?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceLeagueData
     */
    timePerGame?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceLeagueData
     */
    timePerPitch?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceLeagueData
     */
    timePerHit?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceLeagueData
     */
    timePerRun?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceLeagueData
     */
    timePerPlateAppearance?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceLeagueData
     */
    timePer77PlateAppearances?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceLeagueData
     */
    timePer7InnGameWithoutExtraInn?: string;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    totalExtraInnGames?: number;
    /**
     *
     * @type {string}
     * @memberof GamePaceLeagueData
     */
    totalExtraInnTime?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceLeagueData
     */
    totalGameTime?: string;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    totalGames?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    totalInningsPlayed?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    totalHits?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    totalRuns?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    totalPitches?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    totalPlateAppearances?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    totalPitchers?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    total7InnGames?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    total9InnGames?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    total9InnGamesScheduled?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    total9InnGamesCompletedEarly?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceLeagueData
     */
    total9InnGamesWithoutExtraInn?: number;
    /**
     *
     * @type {{ [key: string]: any; }}
     * @memberof GamePaceLeagueData
     */
    prPortalCalculatedFields?: {
        [key: string]: any;
    };
    /**
     *
     * @type {string}
     * @memberof GamePaceLeagueData
     */
    season?: string;
    /**
     *
     * @type {League}
     * @memberof GamePaceLeagueData
     */
    league?: League;
}

export declare function GamePaceLeagueDataFromJSON(json: any): GamePaceLeagueData;

export declare function GamePaceLeagueDataFromJSONTyped(json: any, ignoreDiscriminator: boolean): GamePaceLeagueData;

export declare function GamePaceLeagueDataToJSON(json: any): GamePaceLeagueData;

export declare function GamePaceLeagueDataToJSONTyped(value?: GamePaceLeagueData | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GamePaceMetrics
 */
export declare interface GamePaceMetrics {
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    hitsPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    runsPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    pitchesPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    plateAppearancesPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    hitsPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    runsPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    pitchesPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    plateAppearancesPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    hitsPerRun?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    pitchesPerPitcher?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    pitchersPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    inningsPlayedPerGame?: number;
    /**
     *
     * @type {string}
     * @memberof GamePaceMetrics
     */
    timePer9Inn?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceMetrics
     */
    timePerGame?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceMetrics
     */
    timePerPitch?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceMetrics
     */
    timePerHit?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceMetrics
     */
    timePerRun?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceMetrics
     */
    timePerPlateAppearance?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceMetrics
     */
    timePer77PlateAppearances?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceMetrics
     */
    timePer7InnGameWithoutExtraInn?: string;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    totalExtraInnGames?: number;
    /**
     *
     * @type {string}
     * @memberof GamePaceMetrics
     */
    totalExtraInnTime?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceMetrics
     */
    totalGameTime?: string;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    totalGames?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    totalInningsPlayed?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    totalHits?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    totalRuns?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    totalPitches?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    totalPlateAppearances?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    totalPitchers?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    total7InnGames?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    total9InnGames?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    total9InnGamesScheduled?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    total9InnGamesCompletedEarly?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceMetrics
     */
    total9InnGamesWithoutExtraInn?: number;
    /**
     *
     * @type {{ [key: string]: any; }}
     * @memberof GamePaceMetrics
     */
    prPortalCalculatedFields?: {
        [key: string]: any;
    };
}

export declare function GamePaceMetricsFromJSON(json: any): GamePaceMetrics;

export declare function GamePaceMetricsFromJSONTyped(json: any, ignoreDiscriminator: boolean): GamePaceMetrics;

export declare function GamePaceMetricsToJSON(json: any): GamePaceMetrics;

export declare function GamePaceMetricsToJSONTyped(value?: GamePaceMetrics | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface GamePaceSportData
 */
export declare interface GamePaceSportData {
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    hitsPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    runsPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    pitchesPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    plateAppearancesPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    hitsPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    runsPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    pitchesPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    plateAppearancesPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    hitsPerRun?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    pitchesPerPitcher?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    pitchersPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    inningsPlayedPerGame?: number;
    /**
     *
     * @type {string}
     * @memberof GamePaceSportData
     */
    timePer9Inn?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceSportData
     */
    timePerGame?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceSportData
     */
    timePerPitch?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceSportData
     */
    timePerHit?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceSportData
     */
    timePerRun?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceSportData
     */
    timePerPlateAppearance?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceSportData
     */
    timePer77PlateAppearances?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceSportData
     */
    timePer7InnGameWithoutExtraInn?: string;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    totalExtraInnGames?: number;
    /**
     *
     * @type {string}
     * @memberof GamePaceSportData
     */
    totalExtraInnTime?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceSportData
     */
    totalGameTime?: string;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    totalGames?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    totalInningsPlayed?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    totalHits?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    totalRuns?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    totalPitches?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    totalPlateAppearances?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    totalPitchers?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    total7InnGames?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    total9InnGames?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    total9InnGamesScheduled?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    total9InnGamesCompletedEarly?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceSportData
     */
    total9InnGamesWithoutExtraInn?: number;
    /**
     *
     * @type {{ [key: string]: any; }}
     * @memberof GamePaceSportData
     */
    prPortalCalculatedFields?: {
        [key: string]: any;
    };
    /**
     *
     * @type {string}
     * @memberof GamePaceSportData
     */
    season?: string;
    /**
     *
     * @type {Sport}
     * @memberof GamePaceSportData
     */
    sport?: Sport;
}

export declare function GamePaceSportDataFromJSON(json: any): GamePaceSportData;

export declare function GamePaceSportDataFromJSONTyped(json: any, ignoreDiscriminator: boolean): GamePaceSportData;

export declare function GamePaceSportDataToJSON(json: any): GamePaceSportData;

export declare function GamePaceSportDataToJSONTyped(value?: GamePaceSportData | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface GamePaceTeamData
 */
export declare interface GamePaceTeamData {
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    hitsPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    runsPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    pitchesPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    plateAppearancesPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    hitsPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    runsPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    pitchesPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    plateAppearancesPer9Inn?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    hitsPerRun?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    pitchesPerPitcher?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    pitchersPerGame?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    inningsPlayedPerGame?: number;
    /**
     *
     * @type {string}
     * @memberof GamePaceTeamData
     */
    timePer9Inn?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceTeamData
     */
    timePerGame?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceTeamData
     */
    timePerPitch?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceTeamData
     */
    timePerHit?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceTeamData
     */
    timePerRun?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceTeamData
     */
    timePerPlateAppearance?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceTeamData
     */
    timePer77PlateAppearances?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceTeamData
     */
    timePer7InnGameWithoutExtraInn?: string;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    totalExtraInnGames?: number;
    /**
     *
     * @type {string}
     * @memberof GamePaceTeamData
     */
    totalExtraInnTime?: string;
    /**
     *
     * @type {string}
     * @memberof GamePaceTeamData
     */
    totalGameTime?: string;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    totalGames?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    totalInningsPlayed?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    totalHits?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    totalRuns?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    totalPitches?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    totalPlateAppearances?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    totalPitchers?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    total7InnGames?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    total9InnGames?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    total9InnGamesScheduled?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    total9InnGamesCompletedEarly?: number;
    /**
     *
     * @type {number}
     * @memberof GamePaceTeamData
     */
    total9InnGamesWithoutExtraInn?: number;
    /**
     *
     * @type {{ [key: string]: any; }}
     * @memberof GamePaceTeamData
     */
    prPortalCalculatedFields?: {
        [key: string]: any;
    };
    /**
     *
     * @type {string}
     * @memberof GamePaceTeamData
     */
    season?: string;
    /**
     *
     * @type {Team}
     * @memberof GamePaceTeamData
     */
    team?: Team;
}

export declare function GamePaceTeamDataFromJSON(json: any): GamePaceTeamData;

export declare function GamePaceTeamDataFromJSONTyped(json: any, ignoreDiscriminator: boolean): GamePaceTeamData;

export declare function GamePaceTeamDataToJSON(json: any): GamePaceTeamData;

export declare function GamePaceTeamDataToJSONTyped(value?: GamePaceTeamData | null, ignoreDiscriminator?: boolean): any;

export declare function GamePaceToJSON(json: any): GamePace;

export declare function GamePaceToJSONTyped(value?: GamePace | null, ignoreDiscriminator?: boolean): any;

/**
 *
 */
export declare class GamesApi extends runtime.BaseAPI {
    /**
     * Creates request options for getBoxscore without sending the request
     */
    getBoxscoreRequestOpts(requestParameters: GetBoxscoreRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns Boxscore
     * Retrieves boxscore
     */
    getBoxscoreRaw(requestParameters: GetBoxscoreRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Boxscore>>;
    /**
     * Returns Boxscore
     * Retrieves boxscore
     */
    getBoxscore(requestParameters: GetBoxscoreRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Boxscore>;
    /**
     * Creates request options for getGameLiveFeed without sending the request
     */
    getGameLiveFeedRequestOpts(requestParameters: GetGameLiveFeedRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns the full GUMBO live feed for a game including gameData, liveData (plays, linescore, boxscore, decisions).
     * Retrieves GUMBO live feed for a game
     */
    getGameLiveFeedRaw(requestParameters: GetGameLiveFeedRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GameLiveFeed>>;
    /**
     * Returns the full GUMBO live feed for a game including gameData, liveData (plays, linescore, boxscore, decisions).
     * Retrieves GUMBO live feed for a game
     */
    getGameLiveFeed(requestParameters: GetGameLiveFeedRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GameLiveFeed>;
    /**
     * Creates request options for getGamePlayByPlay without sending the request
     */
    getGamePlayByPlayRequestOpts(requestParameters: GetGamePlayByPlayRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns play-by-play data for a specific game.
     * Retrieves play-by-play data for a game
     */
    getGamePlayByPlayRaw(requestParameters: GetGamePlayByPlayRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Plays>>;
    /**
     * Returns play-by-play data for a specific game.
     * Retrieves play-by-play data for a game
     */
    getGamePlayByPlay(requestParameters: GetGamePlayByPlayRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Plays>;
    /**
     * Creates request options for getHomeRunDerby without sending the request
     */
    getHomeRunDerbyRequestOpts(requestParameters: GetHomeRunDerbyRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns Home Run Derby data including Statcast trajectory, launch speed, launch angle, and hit coordinates.
     * Retrieves Home Run Derby data
     */
    getHomeRunDerbyRaw(requestParameters: GetHomeRunDerbyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<HomeRunDerby>>;
    /**
     * Returns Home Run Derby data including Statcast trajectory, launch speed, launch angle, and hit coordinates.
     * Retrieves Home Run Derby data
     */
    getHomeRunDerby(requestParameters: GetHomeRunDerbyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<HomeRunDerby>;
    /**
     * Creates request options for getLinescore without sending the request
     */
    getLinescoreRequestOpts(requestParameters: GetLinescoreRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns Linescore
     * Retrieves linescore
     */
    getLinescoreRaw(requestParameters: GetLinescoreRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Linescore>>;
    /**
     * Returns Linescore
     * Retrieves linescore
     */
    getLinescore(requestParameters: GetLinescoreRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Linescore>;
}

/**
 *
 * @export
 * @interface GameStatus
 */
export declare interface GameStatus {
    /**
     *
     * @type {string}
     * @memberof GameStatus
     */
    abstractGameState?: string;
    /**
     *
     * @type {GameStatusCode}
     * @memberof GameStatus
     */
    codedGameState?: GameStatusCode;
    /**
     *
     * @type {string}
     * @memberof GameStatus
     */
    detailedState?: string;
    /**
     *
     * @type {string}
     * @memberof GameStatus
     */
    statusCode?: string;
    /**
     *
     * @type {boolean}
     * @memberof GameStatus
     */
    startTimeTBD?: boolean;
    /**
     *
     * @type {string}
     * @memberof GameStatus
     */
    abstractGameCode?: string;
}

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 * Coded Game State
 *   * `F` - Final
 *   * `D` - Delayed/Postponed
 *   * `S` - Scheduled
 *   * `I` - In Progress
 *   * `M` - Challenge
 *   * `P` - Pregame
 *   * `O` - Game Over
 *   * `C` - Canceled
 *
 * @export
 * @enum {string}
 */
export declare enum GameStatusCode {
    Final = "F",
    Postponed = "D",
    Scheduled = "S",
    InProgress = "I",
    Challenge = "M",
    Pregame = "P",
    GameOver = "O",
    Canceled = "C"
}

export declare function GameStatusCodeFromJSON(json: any): GameStatusCode;

export declare function GameStatusCodeFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameStatusCode;

export declare function GameStatusCodeToJSON(value?: GameStatusCode | null): any;

export declare function GameStatusCodeToJSONTyped(value: any, ignoreDiscriminator: boolean): GameStatusCode;

export declare function GameStatusFromJSON(json: any): GameStatus;

export declare function GameStatusFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameStatus;

export declare function GameStatusToJSON(json: any): GameStatus;

export declare function GameStatusToJSONTyped(value?: GameStatus | null, ignoreDiscriminator?: boolean): any;

/**
 * Game Team
 *
 * @export
 * @interface GameTeam
 */
export declare interface GameTeam {
    /**
     *
     * @type {LeagueRecord}
     * @memberof GameTeam
     */
    leagueRecord: LeagueRecord;
    /**
     *
     * @type {number}
     * @memberof GameTeam
     */
    score: number;
    /**
     *
     * @type {Team}
     * @memberof GameTeam
     */
    team: Team;
    /**
     *
     * @type {boolean}
     * @memberof GameTeam
     */
    isWinner: boolean;
    /**
     *
     * @type {boolean}
     * @memberof GameTeam
     */
    splitSquad?: boolean;
    /**
     *
     * @type {number}
     * @memberof GameTeam
     */
    seriesNumber?: number;
}

export declare function GameTeamFromJSON(json: any): GameTeam;

export declare function GameTeamFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameTeam;

/**
 *
 * @export
 * @interface GameTeams
 */
export declare interface GameTeams {
    /**
     *
     * @type {GameTeam}
     * @memberof GameTeams
     */
    away: GameTeam;
    /**
     *
     * @type {GameTeam}
     * @memberof GameTeams
     */
    home: GameTeam;
}

export declare function GameTeamsFromJSON(json: any): GameTeams;

export declare function GameTeamsFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameTeams;

export declare function GameTeamsToJSON(json: any): GameTeams;

export declare function GameTeamsToJSONTyped(value?: GameTeams | null, ignoreDiscriminator?: boolean): any;

export declare function GameTeamToJSON(json: any): GameTeam;

export declare function GameTeamToJSONTyped(value?: GameTeam | null, ignoreDiscriminator?: boolean): any;

export declare function GameToJSON(json: any): Game;

export declare function GameToJSONTyped(value?: Game | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 * Game Type:
 *   * `E` - Exhibition
 *   * `S` - Spring Training
 *   * `R` - Regular Season
 *   * `F` - Wild Card Series
 *   * `D` - Division Series
 *   * `L` - League Championship Series
 *   * `W` - World Series
 *   * `A` - All-Star Game
 *
 * @export
 * @enum {string}
 */
export declare enum GameType {
    Exhibition = "E",
    SpringTraining = "S",
    Regular = "R",
    WildCardSeries = "F",
    DivisionSeries = "D",
    LeagueChampionshipSeries = "L",
    WorldSeries = "W",
    AllStar = "A"
}

export declare function GameTypeFromJSON(json: any): GameType;

export declare function GameTypeFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameType;

export declare function GameTypeToJSON(value?: GameType | null): any;

export declare function GameTypeToJSONTyped(value: any, ignoreDiscriminator: boolean): GameType;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface GameWeather
 */
export declare interface GameWeather {
    /**
     *
     * @type {string}
     * @memberof GameWeather
     */
    condition?: string;
    /**
     *
     * @type {string}
     * @memberof GameWeather
     */
    temp?: string;
    /**
     *
     * @type {string}
     * @memberof GameWeather
     */
    wind?: string;
}

export declare function GameWeatherFromJSON(json: any): GameWeather;

export declare function GameWeatherFromJSONTyped(json: any, ignoreDiscriminator: boolean): GameWeather;

export declare function GameWeatherToJSON(json: any): GameWeather;

export declare function GameWeatherToJSONTyped(value?: GameWeather | null, ignoreDiscriminator?: boolean): any;

export declare interface GetAllSeasonsRequest {
    sportId?: number;
}

export declare interface GetAttendanceRequest {
    leagueId: number;
    season: string;
    teamId?: number;
    leagueListId?: string;
    date?: string;
    gameTypes?: Array<GameType>;
    fields?: Array<string>;
}

export declare interface GetAwardRecipientsRequest {
    awardId: string;
    leagueId: number;
    season: string;
    sportId?: number;
    fields?: Array<string>;
}

export declare interface GetBoxscoreRequest {
    gamePk: number;
    fields?: Array<string>;
}

export declare interface GetDivisionsRequest {
    season: string;
    sportId?: number;
}

export declare interface GetDraftRequest {
    yearId: number;
    round?: string;
    name?: string;
    school?: string;
    state?: string;
    country?: string;
    position?: string;
    teamId?: number;
    fields?: Array<string>;
}

export declare interface GetGameLiveFeedRequest {
    gamePk: number;
    timecode?: string;
    fields?: Array<string>;
    hydrate?: string;
}

export declare interface GetGamePaceRequest {
    season: string;
    leagueId: number;
    sportId?: number;
    teamId?: Array<number>;
    leagueListId?: string;
    gameTypes?: Array<GameType>;
    fields?: Array<string>;
}

export declare interface GetGamePlayByPlayRequest {
    gamePk: number;
    timecode?: string;
    fields?: Array<string>;
}

export declare interface GetHomeRunDerbyRequest {
    gamePk: number;
    fields?: Array<string>;
}

export declare interface GetLeaguesRequest {
    season: string;
    sportId?: number;
}

export declare interface GetLinescoreRequest {
    gamePk: number;
    fields?: Array<string>;
}

export declare interface GetPeopleRequest {
    personIds?: string;
    fields?: Array<string>;
    hydrate?: string;
}

export declare interface GetPersonRequest {
    personId: number;
    fields?: Array<string>;
    hydrate?: string;
}

export declare interface GetPersonStatsForGameRequest {
    personId: number;
    gamePk: number;
    fields?: Array<string>;
}

export declare interface GetPersonStatsRequest {
    personId: number;
    season: string;
    stats?: StatTypes;
    group?: string;
}

export declare interface GetScheduleRequest {
    gamePk?: number;
    sportId?: number;
    gameTypes?: Array<GameType>;
    startDate?: string;
    endDate?: string;
    fields?: Array<string>;
    hydrate?: string;
    leagueIds?: Array<number>;
    teamId?: Array<number>;
}

export declare interface GetSeasonByIdRequest {
    seasonId: string;
    sportId?: number;
    fields?: Array<string>;
}

export declare interface GetSeasonRequest {
    season: string;
    sportId?: number;
}

export declare interface GetSportPlayersRequest {
    sportId: number;
    season: string;
    gameTypes?: Array<GameType>;
    fields?: Array<string>;
}

export declare interface GetSportRequest {
    sportId: number;
    fields?: Array<string>;
}

export declare interface GetSportsRequest {
    fields?: Array<string>;
}

export declare interface GetStandingsRequest {
    leagueId: number;
    season: string;
    standingsTypes?: string;
    date?: string;
    fields?: Array<string>;
    hydrate?: string;
}

export declare interface GetStatsRequest {
    season: string;
    leagueId: number;
    stats?: StatTypes;
    group?: string;
    teamId?: number;
    gameTypes?: Array<GameType>;
    sportIds?: string;
    fields?: Array<string>;
}

export declare interface GetTeamCoachesRequest {
    teamId: number;
    season: string;
    date?: string;
    fields?: Array<string>;
}

export declare interface GetTeamRequest {
    teamId: number;
    season: string;
    fields?: Array<string>;
    hydrate?: string;
}

export declare interface GetTeamRosterRequest {
    teamId: number;
    season: string;
    rosterType?: string;
    date?: string;
    fields?: Array<string>;
    hydrate?: string;
}

export declare interface GetTeamsRequest {
    season: string;
    sportId?: number;
    leagueIds?: Array<number>;
    teamId?: Array<number>;
    fields?: Array<string>;
    hydrate?: string;
}

export declare interface GetTeamStatsRequest {
    teamId: number;
    season: string;
    stats?: StatTypes;
    group?: string;
    fields?: Array<string>;
}

export declare interface GetTransactionsRequest {
    teamId?: number;
    playerId?: number;
    date?: string;
    startDate?: string;
    endDate?: string;
    fields?: Array<string>;
    hydrate?: string;
}

export declare interface GetVenueRequest {
    venueId: number;
    fields?: Array<string>;
    hydrate?: string;
}

export declare interface GetVenuesRequest {
    season: string;
    venueIds?: string;
    sportIds?: string;
    fields?: Array<string>;
    hydrate?: string;
}

/**
 * Home Run Derby data including rounds, batters, and Statcast measurements.
 *
 * @export
 * @interface HomeRunDerby
 */
export declare interface HomeRunDerby {
    /**
     *
     * @type {HomeRunDerbyInfo}
     * @memberof HomeRunDerby
     */
    info?: HomeRunDerbyInfo;
    /**
     *
     * @type {HomeRunDerbyStatus}
     * @memberof HomeRunDerby
     */
    status?: HomeRunDerbyStatus;
    /**
     *
     * @type {Array<HomeRunDerbyRound>}
     * @memberof HomeRunDerby
     */
    rounds?: Array<HomeRunDerbyRound>;
}

export declare function HomeRunDerbyFromJSON(json: any): HomeRunDerby;

export declare function HomeRunDerbyFromJSONTyped(json: any, ignoreDiscriminator: boolean): HomeRunDerby;

/**
 *
 * @export
 * @interface HomeRunDerbyInfo
 */
export declare interface HomeRunDerbyInfo {
    /**
     *
     * @type {number}
     * @memberof HomeRunDerbyInfo
     */
    id?: number;
    /**
     *
     * @type {string}
     * @memberof HomeRunDerbyInfo
     */
    name?: string;
    /**
     *
     * @type {string}
     * @memberof HomeRunDerbyInfo
     */
    season?: string;
    /**
     *
     * @type {Venue}
     * @memberof HomeRunDerbyInfo
     */
    venue?: Venue;
}

export declare function HomeRunDerbyInfoFromJSON(json: any): HomeRunDerbyInfo;

export declare function HomeRunDerbyInfoFromJSONTyped(json: any, ignoreDiscriminator: boolean): HomeRunDerbyInfo;

export declare function HomeRunDerbyInfoToJSON(json: any): HomeRunDerbyInfo;

export declare function HomeRunDerbyInfoToJSONTyped(value?: HomeRunDerbyInfo | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface HomeRunDerbyRound
 */
export declare interface HomeRunDerbyRound {
    /**
     *
     * @type {number}
     * @memberof HomeRunDerbyRound
     */
    round?: number;
    /**
     *
     * @type {number}
     * @memberof HomeRunDerbyRound
     */
    numBatters?: number;
    /**
     *
     * @type {Array<object>}
     * @memberof HomeRunDerbyRound
     */
    matchups?: Array<object>;
}

export declare function HomeRunDerbyRoundFromJSON(json: any): HomeRunDerbyRound;

export declare function HomeRunDerbyRoundFromJSONTyped(json: any, ignoreDiscriminator: boolean): HomeRunDerbyRound;

export declare function HomeRunDerbyRoundToJSON(json: any): HomeRunDerbyRound;

export declare function HomeRunDerbyRoundToJSONTyped(value?: HomeRunDerbyRound | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface HomeRunDerbyStatus
 */
export declare interface HomeRunDerbyStatus {
    /**
     *
     * @type {string}
     * @memberof HomeRunDerbyStatus
     */
    state?: string;
    /**
     *
     * @type {number}
     * @memberof HomeRunDerbyStatus
     */
    currentRound?: number;
    /**
     *
     * @type {string}
     * @memberof HomeRunDerbyStatus
     */
    currentRoundTimeRemaining?: string;
    /**
     *
     * @type {boolean}
     * @memberof HomeRunDerbyStatus
     */
    inProgress?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof HomeRunDerbyStatus
     */
    isComplete?: boolean;
}

export declare function HomeRunDerbyStatusFromJSON(json: any): HomeRunDerbyStatus;

export declare function HomeRunDerbyStatusFromJSONTyped(json: any, ignoreDiscriminator: boolean): HomeRunDerbyStatus;

export declare function HomeRunDerbyStatusToJSON(json: any): HomeRunDerbyStatus;

export declare function HomeRunDerbyStatusToJSONTyped(value?: HomeRunDerbyStatus | null, ignoreDiscriminator?: boolean): any;

export declare function HomeRunDerbyToJSON(json: any): HomeRunDerby;

export declare function HomeRunDerbyToJSONTyped(value?: HomeRunDerby | null, ignoreDiscriminator?: boolean): any;

export declare type HTTPBody = Json | FormData | URLSearchParams;

export declare type HTTPHeaders = {
    [key: string]: string;
};

export declare type HTTPMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS' | 'HEAD';

export declare type HTTPQuery = {
    [key: string]: string | number | null | boolean | Array<string | number | null | boolean> | Set<string | number | null | boolean> | HTTPQuery;
};

export declare type HTTPRequestInit = {
    headers?: HTTPHeaders;
    method: HTTPMethod;
    credentials?: RequestCredentials;
    body?: HTTPBody;
};

export declare type InitOverrideFunction = (requestContext: {
    init: HTTPRequestInit;
    context: RequestOpts;
}) => Promise<RequestInit>;

/**
 * Inning
 *
 * @export
 * @interface Inning
 */
export declare interface Inning {
    /**
     *
     * @type {number}
     * @memberof Inning
     */
    num: number;
    /**
     *
     * @type {string}
     * @memberof Inning
     */
    ordinalNum: string;
    /**
     *
     * @type {LinescoreTeam}
     * @memberof Inning
     */
    home: LinescoreTeam;
    /**
     *
     * @type {LinescoreTeam}
     * @memberof Inning
     */
    away: LinescoreTeam;
}

export declare function InningFromJSON(json: any): Inning;

export declare function InningFromJSONTyped(json: any, ignoreDiscriminator: boolean): Inning;

export declare function InningToJSON(json: any): Inning;

export declare function InningToJSONTyped(value?: Inning | null, ignoreDiscriminator?: boolean): any;

/**
 * Check if a given object implements the Attendance interface.
 */
export declare function instanceOfAttendance(value: object): value is Attendance;

/**
 * Check if a given object implements the AttendanceGameType interface.
 */
export declare function instanceOfAttendanceGameType(value: object): value is AttendanceGameType;

/**
 * Check if a given object implements the AttendanceRecord interface.
 */
export declare function instanceOfAttendanceRecord(value: object): value is AttendanceRecord;

/**
 * Check if a given object implements the AttendanceRecordAttendanceHighGame interface.
 */
export declare function instanceOfAttendanceRecordAttendanceHighGame(value: object): value is AttendanceRecordAttendanceHighGame;

/**
 * Check if a given object implements the AttendanceTotals interface.
 */
export declare function instanceOfAttendanceTotals(value: object): value is AttendanceTotals;

/**
 * Check if a given object implements the Award interface.
 */
export declare function instanceOfAward(value: object): value is Award;

/**
 * Check if a given object implements the AwardsResponse interface.
 */
export declare function instanceOfAwardsResponse(value: object): value is AwardsResponse;

/**
 * Check if a given object implements the BattingStats interface.
 */
export declare function instanceOfBattingStats(value: object): value is BattingStats;

/**
 * Check if a given object implements the Boxscore interface.
 */
export declare function instanceOfBoxscore(value: object): value is Boxscore;

/**
 * Check if a given object implements the BoxscoreInfoItem interface.
 */
export declare function instanceOfBoxscoreInfoItem(value: object): value is BoxscoreInfoItem;

/**
 * Check if a given object implements the BoxscoreTeam interface.
 */
export declare function instanceOfBoxscoreTeam(value: object): value is BoxscoreTeam;

/**
 * Check if a given object implements the BoxscoreTeamInfoSection interface.
 */
export declare function instanceOfBoxscoreTeamInfoSection(value: object): value is BoxscoreTeamInfoSection;

/**
 * Check if a given object implements the BoxscoreTeamInfoSectionFieldListInner interface.
 */
export declare function instanceOfBoxscoreTeamInfoSectionFieldListInner(value: object): value is BoxscoreTeamInfoSectionFieldListInner;

/**
 * Check if a given object implements the BoxscoreTeams interface.
 */
export declare function instanceOfBoxscoreTeams(value: object): value is BoxscoreTeams;

/**
 * Check if a given object implements the Coach interface.
 */
export declare function instanceOfCoach(value: object): value is Coach;

/**
 * Check if a given object implements the CoachesResponse interface.
 */
export declare function instanceOfCoachesResponse(value: object): value is CoachesResponse;

/**
 * Check if a given object implements the CodeDescription interface.
 */
export declare function instanceOfCodeDescription(value: object): value is CodeDescription;

/**
 * Check if a given object implements the Content interface.
 */
export declare function instanceOfContent(value: object): value is Content;

/**
 * Check if a given object implements the Coordinates interface.
 */
export declare function instanceOfCoordinates(value: object): value is Coordinates;

/**
 * Check if a given object implements the Division interface.
 */
export declare function instanceOfDivision(value: object): value is Division;

/**
 * Check if a given object implements the Divisions interface.
 */
export declare function instanceOfDivisions(value: object): value is Divisions;

/**
 * Check if a given object implements the DivisionStandings interface.
 */
export declare function instanceOfDivisionStandings(value: object): value is DivisionStandings;

/**
 * Check if a given object implements the DivisionStandingsList interface.
 */
export declare function instanceOfDivisionStandingsList(value: object): value is DivisionStandingsList;

/**
 * Check if a given object implements the DraftData interface.
 */
export declare function instanceOfDraftData(value: object): value is DraftData;

/**
 * Check if a given object implements the DraftPick interface.
 */
export declare function instanceOfDraftPick(value: object): value is DraftPick;

/**
 * Check if a given object implements the DraftPickHome interface.
 */
export declare function instanceOfDraftPickHome(value: object): value is DraftPickHome;

/**
 * Check if a given object implements the DraftPickSchool interface.
 */
export declare function instanceOfDraftPickSchool(value: object): value is DraftPickSchool;

/**
 * Check if a given object implements the DraftResponse interface.
 */
export declare function instanceOfDraftResponse(value: object): value is DraftResponse;

/**
 * Check if a given object implements the DraftRound interface.
 */
export declare function instanceOfDraftRound(value: object): value is DraftRound;

/**
 * Check if a given object implements the FieldingStats interface.
 */
export declare function instanceOfFieldingStats(value: object): value is FieldingStats;

/**
 * Check if a given object implements the Game interface.
 */
export declare function instanceOfGame(value: object): value is Game;

/**
 * Check if a given object implements the GameData interface.
 */
export declare function instanceOfGameData(value: object): value is GameData;

/**
 * Check if a given object implements the GameDataFlags interface.
 */
export declare function instanceOfGameDataFlags(value: object): value is GameDataFlags;

/**
 * Check if a given object implements the GameDataGame interface.
 */
export declare function instanceOfGameDataGame(value: object): value is GameDataGame;

/**
 * Check if a given object implements the GameDataMoundVisits interface.
 */
export declare function instanceOfGameDataMoundVisits(value: object): value is GameDataMoundVisits;

/**
 * Check if a given object implements the GameDataMoundVisitsAway interface.
 */
export declare function instanceOfGameDataMoundVisitsAway(value: object): value is GameDataMoundVisitsAway;

/**
 * Check if a given object implements the GameDataReview interface.
 */
export declare function instanceOfGameDataReview(value: object): value is GameDataReview;

/**
 * Check if a given object implements the GameDataTeams interface.
 */
export declare function instanceOfGameDataTeams(value: object): value is GameDataTeams;

/**
 * Check if a given object implements the GameDatetime interface.
 */
export declare function instanceOfGameDatetime(value: object): value is GameDatetime;

/**
 * Check if a given object implements the GameDecisions interface.
 */
export declare function instanceOfGameDecisions(value: object): value is GameDecisions;

/**
 * Check if a given object implements the GameLiveFeed interface.
 */
export declare function instanceOfGameLiveFeed(value: object): value is GameLiveFeed;

/**
 * Check if a given object implements the GameLiveFeedStatus interface.
 */
export declare function instanceOfGameLiveFeedStatus(value: object): value is GameLiveFeedStatus;

/**
 * Check if a given object implements the GameMetaData interface.
 */
export declare function instanceOfGameMetaData(value: object): value is GameMetaData;

/**
 * Check if a given object implements the GameOfficial interface.
 */
export declare function instanceOfGameOfficial(value: object): value is GameOfficial;

/**
 * Check if a given object implements the GamePace interface.
 */
export declare function instanceOfGamePace(value: object): value is GamePace;

/**
 * Check if a given object implements the GamePaceLeagueData interface.
 */
export declare function instanceOfGamePaceLeagueData(value: object): value is GamePaceLeagueData;

/**
 * Check if a given object implements the GamePaceMetrics interface.
 */
export declare function instanceOfGamePaceMetrics(value: object): value is GamePaceMetrics;

/**
 * Check if a given object implements the GamePaceSportData interface.
 */
export declare function instanceOfGamePaceSportData(value: object): value is GamePaceSportData;

/**
 * Check if a given object implements the GamePaceTeamData interface.
 */
export declare function instanceOfGamePaceTeamData(value: object): value is GamePaceTeamData;

/**
 * Check if a given object implements the GameStatus interface.
 */
export declare function instanceOfGameStatus(value: object): value is GameStatus;

export declare function instanceOfGameStatusCode(value: any): boolean;

/**
 * Check if a given object implements the GameTeam interface.
 */
export declare function instanceOfGameTeam(value: object): value is GameTeam;

/**
 * Check if a given object implements the GameTeams interface.
 */
export declare function instanceOfGameTeams(value: object): value is GameTeams;

export declare function instanceOfGameType(value: any): boolean;

/**
 * Check if a given object implements the GameWeather interface.
 */
export declare function instanceOfGameWeather(value: object): value is GameWeather;

/**
 * Check if a given object implements the HomeRunDerby interface.
 */
export declare function instanceOfHomeRunDerby(value: object): value is HomeRunDerby;

/**
 * Check if a given object implements the HomeRunDerbyInfo interface.
 */
export declare function instanceOfHomeRunDerbyInfo(value: object): value is HomeRunDerbyInfo;

/**
 * Check if a given object implements the HomeRunDerbyRound interface.
 */
export declare function instanceOfHomeRunDerbyRound(value: object): value is HomeRunDerbyRound;

/**
 * Check if a given object implements the HomeRunDerbyStatus interface.
 */
export declare function instanceOfHomeRunDerbyStatus(value: object): value is HomeRunDerbyStatus;

/**
 * Check if a given object implements the Inning interface.
 */
export declare function instanceOfInning(value: object): value is Inning;

/**
 * Check if a given object implements the League interface.
 */
export declare function instanceOfLeague(value: object): value is League;

/**
 * Check if a given object implements the LeagueDates interface.
 */
export declare function instanceOfLeagueDates(value: object): value is LeagueDates;

/**
 * Check if a given object implements the LeagueRecord interface.
 */
export declare function instanceOfLeagueRecord(value: object): value is LeagueRecord;

/**
 * Check if a given object implements the Leagues interface.
 */
export declare function instanceOfLeagues(value: object): value is Leagues;

/**
 * Check if a given object implements the Linescore interface.
 */
export declare function instanceOfLinescore(value: object): value is Linescore;

/**
 * Check if a given object implements the LinescoreTeam interface.
 */
export declare function instanceOfLinescoreTeam(value: object): value is LinescoreTeam;

/**
 * Check if a given object implements the LinescoreTeams interface.
 */
export declare function instanceOfLinescoreTeams(value: object): value is LinescoreTeams;

/**
 * Check if a given object implements the LiveData interface.
 */
export declare function instanceOfLiveData(value: object): value is LiveData;

/**
 * Check if a given object implements the ModelRecord interface.
 */
export declare function instanceOfModelRecord(value: object): value is ModelRecord;

/**
 * Check if a given object implements the Official interface.
 */
export declare function instanceOfOfficial(value: object): value is Official;

/**
 * Check if a given object implements the PeopleResponse interface.
 */
export declare function instanceOfPeopleResponse(value: object): value is PeopleResponse;

/**
 * Check if a given object implements the Person interface.
 */
export declare function instanceOfPerson(value: object): value is Person;

/**
 * Check if a given object implements the PersonStatsItem interface.
 */
export declare function instanceOfPersonStatsItem(value: object): value is PersonStatsItem;

/**
 * Check if a given object implements the PersonStatsItemType interface.
 */
export declare function instanceOfPersonStatsItemType(value: object): value is PersonStatsItemType;

/**
 * Check if a given object implements the PersonStatSplit interface.
 */
export declare function instanceOfPersonStatSplit(value: object): value is PersonStatSplit;

/**
 * Check if a given object implements the PersonStatSplitGame interface.
 */
export declare function instanceOfPersonStatSplitGame(value: object): value is PersonStatSplitGame;

/**
 * Check if a given object implements the PersonStatSplitPlayer interface.
 */
export declare function instanceOfPersonStatSplitPlayer(value: object): value is PersonStatSplitPlayer;

/**
 * Check if a given object implements the PersonStatsResponse interface.
 */
export declare function instanceOfPersonStatsResponse(value: object): value is PersonStatsResponse;

/**
 * Check if a given object implements the PitchingStats interface.
 */
export declare function instanceOfPitchingStats(value: object): value is PitchingStats;

/**
 * Check if a given object implements the Play interface.
 */
export declare function instanceOfPlay(value: object): value is Play;

/**
 * Check if a given object implements the PlayAbout interface.
 */
export declare function instanceOfPlayAbout(value: object): value is PlayAbout;

/**
 * Check if a given object implements the PlayCount interface.
 */
export declare function instanceOfPlayCount(value: object): value is PlayCount;

/**
 * Check if a given object implements the Player interface.
 */
export declare function instanceOfPlayer(value: object): value is Player;

/**
 * Check if a given object implements the PlayerGameStats interface.
 */
export declare function instanceOfPlayerGameStats(value: object): value is PlayerGameStats;

/**
 * Check if a given object implements the PlayerGameStatus interface.
 */
export declare function instanceOfPlayerGameStatus(value: object): value is PlayerGameStatus;

/**
 * Check if a given object implements the PlayerSeasonStats interface.
 */
export declare function instanceOfPlayerSeasonStats(value: object): value is PlayerSeasonStats;

/**
 * Check if a given object implements the PlayerStatus interface.
 */
export declare function instanceOfPlayerStatus(value: object): value is PlayerStatus;

/**
 * Check if a given object implements the PlayEvent interface.
 */
export declare function instanceOfPlayEvent(value: object): value is PlayEvent;

/**
 * Check if a given object implements the PlayMatchup interface.
 */
export declare function instanceOfPlayMatchup(value: object): value is PlayMatchup;

/**
 * Check if a given object implements the PlayResult interface.
 */
export declare function instanceOfPlayResult(value: object): value is PlayResult;

/**
 * Check if a given object implements the PlayRunner interface.
 */
export declare function instanceOfPlayRunner(value: object): value is PlayRunner;

/**
 * Check if a given object implements the PlayRunnerDetails interface.
 */
export declare function instanceOfPlayRunnerDetails(value: object): value is PlayRunnerDetails;

/**
 * Check if a given object implements the PlayRunnerMovement interface.
 */
export declare function instanceOfPlayRunnerMovement(value: object): value is PlayRunnerMovement;

/**
 * Check if a given object implements the Plays interface.
 */
export declare function instanceOfPlays(value: object): value is Plays;

/**
 * Check if a given object implements the Position interface.
 */
export declare function instanceOfPosition(value: object): value is Position;

/**
 * Check if a given object implements the ProbablePitchers interface.
 */
export declare function instanceOfProbablePitchers(value: object): value is ProbablePitchers;

/**
 * Check if a given object implements the RosterEntry interface.
 */
export declare function instanceOfRosterEntry(value: object): value is RosterEntry;

/**
 * Check if a given object implements the RosterResponse interface.
 */
export declare function instanceOfRosterResponse(value: object): value is RosterResponse;

/**
 * Check if a given object implements the RosterStatus interface.
 */
export declare function instanceOfRosterStatus(value: object): value is RosterStatus;

/**
 * Check if a given object implements the RoundRobin interface.
 */
export declare function instanceOfRoundRobin(value: object): value is RoundRobin;

/**
 * Check if a given object implements the Schedule interface.
 */
export declare function instanceOfSchedule(value: object): value is Schedule;

/**
 * Check if a given object implements the ScheduleDay interface.
 */
export declare function instanceOfScheduleDay(value: object): value is ScheduleDay;

/**
 * Check if a given object implements the Season interface.
 */
export declare function instanceOfSeason(value: object): value is Season;

/**
 * Check if a given object implements the Seasons interface.
 */
export declare function instanceOfSeasons(value: object): value is Seasons;

/**
 * Check if a given object implements the Sport interface.
 */
export declare function instanceOfSport(value: object): value is Sport;

/**
 * Check if a given object implements the SportsResponse interface.
 */
export declare function instanceOfSportsResponse(value: object): value is SportsResponse;

export declare function instanceOfStatTypes(value: any): boolean;

/**
 * Check if a given object implements the Streak interface.
 */
export declare function instanceOfStreak(value: object): value is Streak;

/**
 * Check if a given object implements the Team interface.
 */
export declare function instanceOfTeam(value: object): value is Team;

/**
 * Check if a given object implements the Teams interface.
 */
export declare function instanceOfTeams(value: object): value is Teams;

/**
 * Check if a given object implements the TeamsResponse interface.
 */
export declare function instanceOfTeamsResponse(value: object): value is TeamsResponse;

/**
 * Check if a given object implements the TeamStats interface.
 */
export declare function instanceOfTeamStats(value: object): value is TeamStats;

/**
 * Check if a given object implements the TeamStatsResponse interface.
 */
export declare function instanceOfTeamStatsResponse(value: object): value is TeamStatsResponse;

/**
 * Check if a given object implements the Transaction interface.
 */
export declare function instanceOfTransaction(value: object): value is Transaction;

/**
 * Check if a given object implements the TransactionsResponse interface.
 */
export declare function instanceOfTransactionsResponse(value: object): value is TransactionsResponse;

export declare function instanceOfTransactionTypeCode(value: any): boolean;

/**
 * Check if a given object implements the Venue interface.
 */
export declare function instanceOfVenue(value: object): value is Venue;

/**
 * Check if a given object implements the VenueFieldInfo interface.
 */
export declare function instanceOfVenueFieldInfo(value: object): value is VenueFieldInfo;

/**
 * Check if a given object implements the VenueLocation interface.
 */
export declare function instanceOfVenueLocation(value: object): value is VenueLocation;

/**
 * Check if a given object implements the VenuesResponse interface.
 */
export declare function instanceOfVenuesResponse(value: object): value is VenuesResponse;

/**
 * Check if a given object implements the VenueTimeZone interface.
 */
export declare function instanceOfVenueTimeZone(value: object): value is VenueTimeZone;

export declare type Json = any;

export declare class JSONApiResponse<T> {
    raw: Response;
    private transformer;
    constructor(raw: Response, transformer?: ResponseTransformer<T>);
    value(): Promise<T>;
}

/**
 * League. When embedded (e.g. in division), may contain only id and link.
 *
 * @export
 * @interface League
 */
export declare interface League {
    /**
     *
     * @type {string}
     * @memberof League
     */
    name?: string;
    /**
     *
     * @type {number}
     * @memberof League
     */
    id: number;
    /**
     *
     * @type {string}
     * @memberof League
     */
    link?: string;
    /**
     *
     * @type {string}
     * @memberof League
     */
    abbreviation?: string;
    /**
     *
     * @type {string}
     * @memberof League
     */
    nameShort?: string;
    /**
     *
     * @type {string}
     * @memberof League
     */
    seasonState?: string;
    /**
     *
     * @type {boolean}
     * @memberof League
     */
    hasWildCard?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof League
     */
    hasSplitSeason?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof League
     */
    hasPlayoffPoints?: boolean;
    /**
     *
     * @type {number}
     * @memberof League
     */
    numGames?: number;
    /**
     *
     * @type {number}
     * @memberof League
     */
    numTeams?: number;
    /**
     *
     * @type {number}
     * @memberof League
     */
    numWildcardTeams?: number;
    /**
     *
     * @type {LeagueDates}
     * @memberof League
     */
    seasonDateInfo?: LeagueDates;
    /**
     *
     * @type {Sport}
     * @memberof League
     */
    sport?: Sport;
    /**
     *
     * @type {string}
     * @memberof League
     */
    season?: string;
    /**
     *
     * @type {string}
     * @memberof League
     */
    orgCode?: string;
    /**
     *
     * @type {boolean}
     * @memberof League
     */
    conferencesInUse?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof League
     */
    divisionsInUse?: boolean;
    /**
     *
     * @type {number}
     * @memberof League
     */
    sortOrder?: number;
    /**
     *
     * @type {boolean}
     * @memberof League
     */
    active?: boolean;
}

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface LeagueDates
 */
export declare interface LeagueDates {
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    seasonId?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    preSeasonStartDate?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    preSeasonEndDate?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    seasonStartDate?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    springStartDate?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    springEndDate?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    regularSeasonStartDate?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    lastDate1stHalf?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    allStarDate?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    firstDate2ndHalf?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    regularSeasonEndDate?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    postSeasonStartDate?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    postSeasonEndDate?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    seasonEndDate?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    offseasonStartDate?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    offSeasonEndDate?: string;
    /**
     *
     * @type {number}
     * @memberof LeagueDates
     */
    qualifierPlateAppearances?: number;
    /**
     *
     * @type {number}
     * @memberof LeagueDates
     */
    qualifierOutsPitched?: number;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    seasonLevelGamedayType?: string;
    /**
     *
     * @type {string}
     * @memberof LeagueDates
     */
    gameLevelGamedayType?: string;
}

export declare function LeagueDatesFromJSON(json: any): LeagueDates;

export declare function LeagueDatesFromJSONTyped(json: any, ignoreDiscriminator: boolean): LeagueDates;

export declare function LeagueDatesToJSON(json: any): LeagueDates;

export declare function LeagueDatesToJSONTyped(value?: LeagueDates | null, ignoreDiscriminator?: boolean): any;

export declare function LeagueFromJSON(json: any): League;

export declare function LeagueFromJSONTyped(json: any, ignoreDiscriminator: boolean): League;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface LeagueRecord
 */
export declare interface LeagueRecord {
    /**
     *
     * @type {number}
     * @memberof LeagueRecord
     */
    wins: number;
    /**
     *
     * @type {number}
     * @memberof LeagueRecord
     */
    losses: number;
    /**
     *
     * @type {number}
     * @memberof LeagueRecord
     */
    ties?: number;
    /**
     *
     * @type {string}
     * @memberof LeagueRecord
     */
    pct: string;
}

export declare function LeagueRecordFromJSON(json: any): LeagueRecord;

export declare function LeagueRecordFromJSONTyped(json: any, ignoreDiscriminator: boolean): LeagueRecord;

export declare function LeagueRecordToJSON(json: any): LeagueRecord;

export declare function LeagueRecordToJSONTyped(value?: LeagueRecord | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface Leagues
 */
export declare interface Leagues {
    /**
     *
     * @type {Array<League>}
     * @memberof Leagues
     */
    leagues: Array<League>;
}

export declare function LeaguesFromJSON(json: any): Leagues;

export declare function LeaguesFromJSONTyped(json: any, ignoreDiscriminator: boolean): Leagues;

export declare function LeaguesToJSON(json: any): Leagues;

export declare function LeaguesToJSONTyped(value?: Leagues | null, ignoreDiscriminator?: boolean): any;

export declare function LeagueToJSON(json: any): League;

export declare function LeagueToJSONTyped(value?: League | null, ignoreDiscriminator?: boolean): any;

/**
 * Linescore
 *
 * @export
 * @interface Linescore
 */
export declare interface Linescore {
    /**
     *
     * @type {number}
     * @memberof Linescore
     */
    currentInning?: number;
    /**
     *
     * @type {string}
     * @memberof Linescore
     */
    currentInningOrdinal?: string;
    /**
     *
     * @type {string}
     * @memberof Linescore
     */
    inningState?: string;
    /**
     *
     * @type {string}
     * @memberof Linescore
     */
    inningHalf?: string;
    /**
     *
     * @type {boolean}
     * @memberof Linescore
     */
    isTopInning?: boolean;
    /**
     *
     * @type {number}
     * @memberof Linescore
     */
    scheduledInnings?: number;
    /**
     *
     * @type {Array<Inning>}
     * @memberof Linescore
     */
    innings?: Array<Inning>;
    /**
     *
     * @type {LinescoreTeams}
     * @memberof Linescore
     */
    teams: LinescoreTeams;
    /**
     * Current defensive positions (batter, pitcher, catcher, etc.).
     * @type {{ [key: string]: any; }}
     * @memberof Linescore
     */
    defense?: {
        [key: string]: any;
    };
    /**
     * Current offensive base runners and batter (batter, onDeck, first, etc.).
     * @type {{ [key: string]: any; }}
     * @memberof Linescore
     */
    offense?: {
        [key: string]: any;
    };
    /**
     *
     * @type {number}
     * @memberof Linescore
     */
    balls: number;
    /**
     *
     * @type {number}
     * @memberof Linescore
     */
    strikes: number;
    /**
     *
     * @type {number}
     * @memberof Linescore
     */
    outs: number;
}

export declare function LinescoreFromJSON(json: any): Linescore;

export declare function LinescoreFromJSONTyped(json: any, ignoreDiscriminator: boolean): Linescore;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 * InningTeam
 *
 * @export
 * @interface LinescoreTeam
 */
export declare interface LinescoreTeam {
    /**
     *
     * @type {number}
     * @memberof LinescoreTeam
     */
    runs: number;
    /**
     *
     * @type {number}
     * @memberof LinescoreTeam
     */
    hits: number;
    /**
     *
     * @type {number}
     * @memberof LinescoreTeam
     */
    errors: number;
    /**
     *
     * @type {number}
     * @memberof LinescoreTeam
     */
    leftOnBase: number;
}

export declare function LinescoreTeamFromJSON(json: any): LinescoreTeam;

export declare function LinescoreTeamFromJSONTyped(json: any, ignoreDiscriminator: boolean): LinescoreTeam;

/**
 *
 * @export
 * @interface LinescoreTeams
 */
export declare interface LinescoreTeams {
    /**
     *
     * @type {LinescoreTeam}
     * @memberof LinescoreTeams
     */
    away: LinescoreTeam;
    /**
     *
     * @type {LinescoreTeam}
     * @memberof LinescoreTeams
     */
    home: LinescoreTeam;
}

export declare function LinescoreTeamsFromJSON(json: any): LinescoreTeams;

export declare function LinescoreTeamsFromJSONTyped(json: any, ignoreDiscriminator: boolean): LinescoreTeams;

export declare function LinescoreTeamsToJSON(json: any): LinescoreTeams;

export declare function LinescoreTeamsToJSONTyped(value?: LinescoreTeams | null, ignoreDiscriminator?: boolean): any;

export declare function LinescoreTeamToJSON(json: any): LinescoreTeam;

export declare function LinescoreTeamToJSONTyped(value?: LinescoreTeam | null, ignoreDiscriminator?: boolean): any;

export declare function LinescoreToJSON(json: any): Linescore;

export declare function LinescoreToJSONTyped(value?: Linescore | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface LiveData
 */
export declare interface LiveData {
    /**
     *
     * @type {Plays}
     * @memberof LiveData
     */
    plays?: Plays;
    /**
     *
     * @type {Linescore}
     * @memberof LiveData
     */
    linescore?: Linescore;
    /**
     *
     * @type {Boxscore}
     * @memberof LiveData
     */
    boxscore?: Boxscore;
    /**
     *
     * @type {{ [key: string]: any; }}
     * @memberof LiveData
     */
    leaders?: {
        [key: string]: any;
    };
    /**
     *
     * @type {GameDecisions}
     * @memberof LiveData
     */
    decisions?: GameDecisions;
}

export declare function LiveDataFromJSON(json: any): LiveData;

export declare function LiveDataFromJSONTyped(json: any, ignoreDiscriminator: boolean): LiveData;

export declare function LiveDataToJSON(json: any): LiveData;

export declare function LiveDataToJSONTyped(value?: LiveData | null, ignoreDiscriminator?: boolean): any;

export declare function mapValues(data: any, fn: (item: any) => any): {
    [key: string]: any;
};

export declare interface Middleware {
    pre?(context: RequestContext): Promise<FetchParams | void>;
    post?(context: ResponseContext): Promise<Response | void>;
    onError?(context: ErrorContext): Promise<Response | void>;
}

export declare type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original';

/**
 * Record
 *
 * @export
 * @interface ModelRecord
 */
export declare interface ModelRecord {
    /**
     *
     * @type {Team}
     * @memberof ModelRecord
     */
    team: Team;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    season: string;
    /**
     *
     * @type {Streak}
     * @memberof ModelRecord
     */
    streak: Streak;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    clinchIndicator?: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    divisionRank: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    leagueRank: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    sportRank?: string;
    /**
     *
     * @type {number}
     * @memberof ModelRecord
     */
    gamesPlayed?: number;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    gamesBack: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    wildCardGamesBack?: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    leagueGamesBack?: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    sportGamesBack?: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    springLeagueGamesBack?: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    divisionGamesBack?: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    conferenceGamesBack?: string;
    /**
     *
     * @type {LeagueRecord}
     * @memberof ModelRecord
     */
    leagueRecord: LeagueRecord;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    lastUpdated?: string;
    /**
     *
     * @type {number}
     * @memberof ModelRecord
     */
    runsAllowed?: number;
    /**
     *
     * @type {number}
     * @memberof ModelRecord
     */
    runsScored?: number;
    /**
     *
     * @type {boolean}
     * @memberof ModelRecord
     */
    divisionChamp?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof ModelRecord
     */
    divisionLeader?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof ModelRecord
     */
    hasWildcard?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof ModelRecord
     */
    clinched?: boolean;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    eliminationNumber?: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    eliminationNumberSport?: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    eliminationNumberLeague?: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    eliminationNumberDivision?: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    eliminationNumberConference?: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    wildCardEliminationNumber?: string;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    magicNumber?: string;
    /**
     *
     * @type {number}
     * @memberof ModelRecord
     */
    wins: number;
    /**
     *
     * @type {number}
     * @memberof ModelRecord
     */
    losses: number;
    /**
     *
     * @type {number}
     * @memberof ModelRecord
     */
    runDifferential?: number;
    /**
     *
     * @type {string}
     * @memberof ModelRecord
     */
    winningPercentage?: string;
}

export declare function ModelRecordFromJSON(json: any): ModelRecord;

export declare function ModelRecordFromJSONTyped(json: any, ignoreDiscriminator: boolean): ModelRecord;

export declare function ModelRecordToJSON(json: any): ModelRecord;

export declare function ModelRecordToJSONTyped(value?: ModelRecord | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface Official
 */
export declare interface Official {
    /**
     *
     * @type {number}
     * @memberof Official
     */
    id?: number;
    /**
     *
     * @type {string}
     * @memberof Official
     */
    fullName?: string;
    /**
     *
     * @type {string}
     * @memberof Official
     */
    link?: string;
}

export declare function OfficialFromJSON(json: any): Official;

export declare function OfficialFromJSONTyped(json: any, ignoreDiscriminator: boolean): Official;

export declare function OfficialToJSON(json: any): Official;

export declare function OfficialToJSONTyped(value?: Official | null, ignoreDiscriminator?: boolean): any;

/**
 *
 */
export declare class PeopleApi extends runtime.BaseAPI {
    /**
     * Creates request options for getPeople without sending the request
     */
    getPeopleRequestOpts(requestParameters: GetPeopleRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns biographical information for one or more players, coaches, or umpires. Use personIds to specify which people to return.
     * Retrieves multiple people by IDs
     */
    getPeopleRaw(requestParameters: GetPeopleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PeopleResponse>>;
    /**
     * Returns biographical information for one or more players, coaches, or umpires. Use personIds to specify which people to return.
     * Retrieves multiple people by IDs
     */
    getPeople(requestParameters?: GetPeopleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PeopleResponse>;
    /**
     * Creates request options for getPerson without sending the request
     */
    getPersonRequestOpts(requestParameters: GetPersonRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns a single person by ID. Use the hydrate query parameter to expand related resources (e.g. hydrate=currentTeam,team,stats(group=[hitting],type=[yearByYear],...) includes currentTeam, team on stats, and hitting stats by year).
     * Retrieves a person (player)
     */
    getPersonRaw(requestParameters: GetPersonRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PeopleResponse>>;
    /**
     * Returns a single person by ID. Use the hydrate query parameter to expand related resources (e.g. hydrate=currentTeam,team,stats(group=[hitting],type=[yearByYear],...) includes currentTeam, team on stats, and hitting stats by year).
     * Retrieves a person (player)
     */
    getPerson(requestParameters: GetPersonRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PeopleResponse>;
    /**
     * Creates request options for getPersonStats without sending the request
     */
    getPersonStatsRequestOpts(requestParameters: GetPersonStatsRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns stats for a person (player) by ID. Use query parameters to request stat types (stats=gameLog,statSplits,statsSingleSeason), group (e.g. group=hitting for batting stats, group=pitching for pitching stats), and season (e.g. season=2022). Splits and stat keys vary by group (hitting vs pitching).
     * Retrieves a person\'s stats
     */
    getPersonStatsRaw(requestParameters: GetPersonStatsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PersonStatsResponse>>;
    /**
     * Returns stats for a person (player) by ID. Use query parameters to request stat types (stats=gameLog,statSplits,statsSingleSeason), group (e.g. group=hitting for batting stats, group=pitching for pitching stats), and season (e.g. season=2022). Splits and stat keys vary by group (hitting vs pitching).
     * Retrieves a person\'s stats
     */
    getPersonStats(requestParameters: GetPersonStatsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PersonStatsResponse>;
    /**
     * Creates request options for getPersonStatsForGame without sending the request
     */
    getPersonStatsForGameRequestOpts(requestParameters: GetPersonStatsForGameRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns fielding, hitting, and pitching gameLog statistics as well as vsPlayer stats for a specific person in a specific game.
     * Retrieves player stats for a specific game
     */
    getPersonStatsForGameRaw(requestParameters: GetPersonStatsForGameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PersonStatsResponse>>;
    /**
     * Returns fielding, hitting, and pitching gameLog statistics as well as vsPlayer stats for a specific person in a specific game.
     * Retrieves player stats for a specific game
     */
    getPersonStatsForGame(requestParameters: GetPersonStatsForGameRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PersonStatsResponse>;
    /**
     * Creates request options for getSportPlayers without sending the request
     */
    getSportPlayersRequestOpts(requestParameters: GetSportPlayersRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns all players for a given sport. Used for player lookups by name.
     * Retrieves all players for a sport
     */
    getSportPlayersRaw(requestParameters: GetSportPlayersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PeopleResponse>>;
    /**
     * Returns all players for a given sport. Used for player lookups by name.
     * Retrieves all players for a sport
     */
    getSportPlayers(requestParameters: GetSportPlayersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PeopleResponse>;
    /**
     * Creates request options for getTeamCoaches without sending the request
     */
    getTeamCoachesRequestOpts(requestParameters: GetTeamCoachesRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns the coaching roster for a team.
     * Retrieves team coaching staff
     */
    getTeamCoachesRaw(requestParameters: GetTeamCoachesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CoachesResponse>>;
    /**
     * Returns the coaching roster for a team.
     * Retrieves team coaching staff
     */
    getTeamCoaches(requestParameters: GetTeamCoachesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CoachesResponse>;
    /**
     * Creates request options for getTeamRoster without sending the request
     */
    getTeamRosterRequestOpts(requestParameters: GetTeamRosterRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns the player roster for a team. Use rosterType to specify which roster to return (40Man, active, fullRoster, etc.).
     * Retrieves team player roster
     */
    getTeamRosterRaw(requestParameters: GetTeamRosterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RosterResponse>>;
    /**
     * Returns the player roster for a team. Use rosterType to specify which roster to return (40Man, active, fullRoster, etc.).
     * Retrieves team player roster
     */
    getTeamRoster(requestParameters: GetTeamRosterRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RosterResponse>;
    /**
     * Creates request options for getTransactions without sending the request
     */
    getTransactionsRequestOpts(requestParameters: GetTransactionsRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns transactions (trades, signings, assignments, status changes, etc.). Must specify at least one of teamId, playerId, date, startDate, or endDate.
     * Retrieves transactions
     */
    getTransactionsRaw(requestParameters: GetTransactionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<TransactionsResponse>>;
    /**
     * Returns transactions (trades, signings, assignments, status changes, etc.). Must specify at least one of teamId, playerId, date, startDate, or endDate.
     * Retrieves transactions
     */
    getTransactions(requestParameters?: GetTransactionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<TransactionsResponse>;
}

/**
 * Response for GET /v1/people/{personId}. Contains a people array (one item when requesting a single person).
 *
 * @export
 * @interface PeopleResponse
 */
export declare interface PeopleResponse {
    /**
     *
     * @type {Array<Person>}
     * @memberof PeopleResponse
     */
    people: Array<Person>;
}

export declare function PeopleResponseFromJSON(json: any): PeopleResponse;

export declare function PeopleResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): PeopleResponse;

export declare function PeopleResponseToJSON(json: any): PeopleResponse;

export declare function PeopleResponseToJSONTyped(value?: PeopleResponse | null, ignoreDiscriminator?: boolean): any;

/**
 * A person (player) from the people API. Use hydrate to expand currentTeam, team, stats, etc.
 *
 * @export
 * @interface Person
 */
export declare interface Person {
    /**
     *
     * @type {number}
     * @memberof Person
     */
    id: number;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    fullName: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    link: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    firstName?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    lastName?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    primaryNumber?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    birthDate?: string;
    /**
     *
     * @type {number}
     * @memberof Person
     */
    currentAge?: number;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    birthCity?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    birthStateProvince?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    birthCountry?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    height?: string;
    /**
     *
     * @type {number}
     * @memberof Person
     */
    weight?: number;
    /**
     *
     * @type {boolean}
     * @memberof Person
     */
    active?: boolean;
    /**
     *
     * @type {Team}
     * @memberof Person
     */
    currentTeam?: Team;
    /**
     *
     * @type {Position}
     * @memberof Person
     */
    primaryPosition?: Position;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    useName?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    useLastName?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    middleName?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    boxscoreName: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    nickName?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    gender?: string;
    /**
     *
     * @type {boolean}
     * @memberof Person
     */
    isPlayer?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof Person
     */
    isVerified?: boolean;
    /**
     *
     * @type {number}
     * @memberof Person
     */
    draftYear?: number;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    pronunciation?: string;
    /**
     *
     * @type {Array<PersonStatsItem>}
     * @memberof Person
     */
    stats?: Array<PersonStatsItem>;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    mlbDebutDate?: string;
    /**
     *
     * @type {CodeDescription}
     * @memberof Person
     */
    batSide?: CodeDescription;
    /**
     *
     * @type {CodeDescription}
     * @memberof Person
     */
    pitchHand?: CodeDescription;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    nameFirstLast?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    nameSlug?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    firstLastName?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    lastFirstName?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    lastInitName?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    initLastName?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    fullFMLName?: string;
    /**
     *
     * @type {string}
     * @memberof Person
     */
    fullLFMName?: string;
    /**
     *
     * @type {number}
     * @memberof Person
     */
    strikeZoneTop?: number;
    /**
     *
     * @type {number}
     * @memberof Person
     */
    strikeZoneBottom?: number;
}

export declare function PersonFromJSON(json: any): Person;

export declare function PersonFromJSONTyped(json: any, ignoreDiscriminator: boolean): Person;

/**
 * One stats block for a person (e.g. yearByYear hitting, careerAdvanced hitting). Contains type, optional group, exemptions, and splits.
 *
 * @export
 * @interface PersonStatsItem
 */
export declare interface PersonStatsItem {
    /**
     *
     * @type {PersonStatsItemType}
     * @memberof PersonStatsItem
     */
    type?: PersonStatsItemType;
    /**
     *
     * @type {PersonStatsItemType}
     * @memberof PersonStatsItem
     */
    group?: PersonStatsItemType;
    /**
     *
     * @type {number}
     * @memberof PersonStatsItem
     */
    totalSplits?: number;
    /**
     *
     * @type {Array<number>}
     * @memberof PersonStatsItem
     */
    splitsTiedWithOffset?: Array<number>;
    /**
     *
     * @type {Array<number>}
     * @memberof PersonStatsItem
     */
    splitsTiedWithLimit?: Array<number>;
    /**
     *
     * @type {string}
     * @memberof PersonStatsItem
     */
    playerPool?: string;
    /**
     *
     * @type {Array<any>}
     * @memberof PersonStatsItem
     */
    exemptions?: Array<any>;
    /**
     *
     * @type {Array<PersonStatSplit>}
     * @memberof PersonStatsItem
     */
    splits?: Array<PersonStatSplit>;
}

export declare function PersonStatsItemFromJSON(json: any): PersonStatsItem;

export declare function PersonStatsItemFromJSONTyped(json: any, ignoreDiscriminator: boolean): PersonStatsItem;

export declare function PersonStatsItemToJSON(json: any): PersonStatsItem;

export declare function PersonStatsItemToJSONTyped(value?: PersonStatsItem | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface PersonStatsItemType
 */
export declare interface PersonStatsItemType {
    /**
     *
     * @type {string}
     * @memberof PersonStatsItemType
     */
    displayName?: string;
}

export declare function PersonStatsItemTypeFromJSON(json: any): PersonStatsItemType;

export declare function PersonStatsItemTypeFromJSONTyped(json: any, ignoreDiscriminator: boolean): PersonStatsItemType;

export declare function PersonStatsItemTypeToJSON(json: any): PersonStatsItemType;

export declare function PersonStatsItemTypeToJSONTyped(value?: PersonStatsItemType | null, ignoreDiscriminator?: boolean): any;

/**
 * A single split within person stats (e.g. one season's stats, or career, or a placeholder for available splits). Structure varies by stats type; season/stat/team/player/league/sport/gameType/type/group are optional.
 *
 * @export
 * @interface PersonStatSplit
 */
export declare interface PersonStatSplit {
    /**
     *
     * @type {string}
     * @memberof PersonStatSplit
     */
    season?: string;
    /**
     * Stat keys vary by group/type (e.g. hitting avg, gamesPlayed, plateAppearances).
     * @type {{ [key: string]: any; }}
     * @memberof PersonStatSplit
     */
    stat?: {
        [key: string]: any;
    };
    /**
     *
     * @type {Team}
     * @memberof PersonStatSplit
     */
    team?: Team;
    /**
     *
     * @type {PersonStatSplitPlayer}
     * @memberof PersonStatSplit
     */
    player?: PersonStatSplitPlayer;
    /**
     *
     * @type {League}
     * @memberof PersonStatSplit
     */
    league?: League;
    /**
     *
     * @type {Sport}
     * @memberof PersonStatSplit
     */
    sport?: Sport;
    /**
     *
     * @type {string}
     * @memberof PersonStatSplit
     */
    gameType?: string;
    /**
     * e.g. gameLog, statSplits
     * @type {string}
     * @memberof PersonStatSplit
     */
    type?: string;
    /**
     * e.g. fielding, hitting
     * @type {string}
     * @memberof PersonStatSplit
     */
    group?: string;
    /**
     * Opponent team (e.g. in gameLog splits)
     * @type {Team}
     * @memberof PersonStatSplit
     */
    opponent?: Team;
    /**
     * Game date (e.g. in gameLog splits)
     * @type {string}
     * @memberof PersonStatSplit
     */
    date?: string;
    /**
     *
     * @type {boolean}
     * @memberof PersonStatSplit
     */
    isHome?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof PersonStatSplit
     */
    isWin?: boolean;
    /**
     *
     * @type {Array<Position>}
     * @memberof PersonStatSplit
     */
    positionsPlayed?: Array<Position>;
    /**
     *
     * @type {PersonStatSplitGame}
     * @memberof PersonStatSplit
     */
    game?: PersonStatSplitGame;
    /**
     *
     * @type {number}
     * @memberof PersonStatSplit
     */
    rank?: number;
    /**
     *
     * @type {Position}
     * @memberof PersonStatSplit
     */
    position?: Position;
    /**
     *
     * @type {Person}
     * @memberof PersonStatSplit
     */
    batter?: Person;
    /**
     *
     * @type {Person}
     * @memberof PersonStatSplit
     */
    pitcher?: Person;
    /**
     *
     * @type {number}
     * @memberof PersonStatSplit
     */
    numTeams?: number;
    /**
     *
     * @type {number}
     * @memberof PersonStatSplit
     */
    numLeagues?: number;
}

export declare function PersonStatSplitFromJSON(json: any): PersonStatSplit;

export declare function PersonStatSplitFromJSONTyped(json: any, ignoreDiscriminator: boolean): PersonStatSplit;

/**
 * Game summary (e.g. in gameLog splits)
 * @export
 * @interface PersonStatSplitGame
 */
export declare interface PersonStatSplitGame {
    /**
     *
     * @type {number}
     * @memberof PersonStatSplitGame
     */
    gamePk?: number;
    /**
     *
     * @type {string}
     * @memberof PersonStatSplitGame
     */
    link?: string;
    /**
     *
     * @type {Content}
     * @memberof PersonStatSplitGame
     */
    content?: Content;
    /**
     *
     * @type {number}
     * @memberof PersonStatSplitGame
     */
    gameNumber?: number;
    /**
     *
     * @type {string}
     * @memberof PersonStatSplitGame
     */
    dayNight?: string;
}

export declare function PersonStatSplitGameFromJSON(json: any): PersonStatSplitGame;

export declare function PersonStatSplitGameFromJSONTyped(json: any, ignoreDiscriminator: boolean): PersonStatSplitGame;

export declare function PersonStatSplitGameToJSON(json: any): PersonStatSplitGame;

export declare function PersonStatSplitGameToJSONTyped(value?: PersonStatSplitGame | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface PersonStatSplitPlayer
 */
export declare interface PersonStatSplitPlayer {
    /**
     *
     * @type {number}
     * @memberof PersonStatSplitPlayer
     */
    id?: number;
    /**
     *
     * @type {string}
     * @memberof PersonStatSplitPlayer
     */
    fullName?: string;
    /**
     *
     * @type {string}
     * @memberof PersonStatSplitPlayer
     */
    link?: string;
}

export declare function PersonStatSplitPlayerFromJSON(json: any): PersonStatSplitPlayer;

export declare function PersonStatSplitPlayerFromJSONTyped(json: any, ignoreDiscriminator: boolean): PersonStatSplitPlayer;

export declare function PersonStatSplitPlayerToJSON(json: any): PersonStatSplitPlayer;

export declare function PersonStatSplitPlayerToJSONTyped(value?: PersonStatSplitPlayer | null, ignoreDiscriminator?: boolean): any;

export declare function PersonStatSplitToJSON(json: any): PersonStatSplit;

export declare function PersonStatSplitToJSONTyped(value?: PersonStatSplit | null, ignoreDiscriminator?: boolean): any;

/**
 * Response for GET /v1/people/{personId}/stats. Contains a stats array (type/group/splits per requested stat type, e.g. gameLog, statsSingleSeason).
 *
 * @export
 * @interface PersonStatsResponse
 */
export declare interface PersonStatsResponse {
    /**
     *
     * @type {string}
     * @memberof PersonStatsResponse
     */
    copyright?: string;
    /**
     *
     * @type {Array<PersonStatsItem>}
     * @memberof PersonStatsResponse
     */
    stats: Array<PersonStatsItem>;
}

export declare function PersonStatsResponseFromJSON(json: any): PersonStatsResponse;

export declare function PersonStatsResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): PersonStatsResponse;

export declare function PersonStatsResponseToJSON(json: any): PersonStatsResponse;

export declare function PersonStatsResponseToJSONTyped(value?: PersonStatsResponse | null, ignoreDiscriminator?: boolean): any;

export declare function PersonToJSON(json: any): Person;

export declare function PersonToJSONTyped(value?: Person | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 * Pitching Stats
 *
 * @export
 * @interface PitchingStats
 */
export declare interface PitchingStats {
    /**
     *
     * @type {string}
     * @memberof PitchingStats
     */
    summary?: string;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    gamesPlayed?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    gamesStarted?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    flyOuts?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    groundOuts?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    airOuts?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    runs?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    doubles?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    triples?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    homeRuns?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    strikeOuts?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    baseOnBalls?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    intentionalWalks?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    hits?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    hitByPitch?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    atBats?: number;
    /**
     *
     * @type {string}
     * @memberof PitchingStats
     */
    obp?: string;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    caughtStealing?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    stolenBases?: number;
    /**
     *
     * @type {string}
     * @memberof PitchingStats
     */
    stolenBasePercentage?: string;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    numberOfPitches?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    wins?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    losses?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    saves?: number;
    /**
     *
     * @type {string}
     * @memberof PitchingStats
     */
    era?: string;
    /**
     *
     * @type {string}
     * @memberof PitchingStats
     */
    inningsPitched?: string;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    saveOpportunities?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    earnedRuns?: number;
    /**
     *
     * @type {string}
     * @memberof PitchingStats
     */
    whip?: string;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    battersFaced?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    outs?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    completeGames?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    shutouts?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    pitchesThrown?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    balls?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    strikes?: number;
    /**
     *
     * @type {string}
     * @memberof PitchingStats
     */
    strikePercentage?: string;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    hitBatsmen?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    balks?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    wildPitches?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    pickoffs?: number;
    /**
     *
     * @type {string}
     * @memberof PitchingStats
     */
    groundOutsToAirouts?: string;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    rbi?: number;
    /**
     *
     * @type {string}
     * @memberof PitchingStats
     */
    pitchesPerInning?: string;
    /**
     *
     * @type {string}
     * @memberof PitchingStats
     */
    runsScoredPer9?: string;
    /**
     *
     * @type {string}
     * @memberof PitchingStats
     */
    homeRunsPer9?: string;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    inheritedRunners?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    inheritedRunnersScored?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    catchersInterference?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    gamesPitched?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    sacBunts?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    sacFlies?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    passedBall?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    popOuts?: number;
    /**
     *
     * @type {number}
     * @memberof PitchingStats
     */
    lineOuts?: number;
    /**
     *
     * @type {string}
     * @memberof PitchingStats
     */
    strikeoutsPer9Inn?: string;
    /**
     *
     * @type {string}
     * @memberof PitchingStats
     */
    walksPer9Inn?: string;
    /**
     *
     * @type {string}
     * @memberof PitchingStats
     */
    hitsPer9Inn?: string;
}

export declare function PitchingStatsFromJSON(json: any): PitchingStats;

export declare function PitchingStatsFromJSONTyped(json: any, ignoreDiscriminator: boolean): PitchingStats;

export declare function PitchingStatsToJSON(json: any): PitchingStats;

export declare function PitchingStatsToJSONTyped(value?: PitchingStats | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface Play
 */
export declare interface Play {
    /**
     *
     * @type {PlayResult}
     * @memberof Play
     */
    result?: PlayResult;
    /**
     *
     * @type {PlayAbout}
     * @memberof Play
     */
    about?: PlayAbout;
    /**
     *
     * @type {PlayCount}
     * @memberof Play
     */
    count?: PlayCount;
    /**
     *
     * @type {PlayMatchup}
     * @memberof Play
     */
    matchup?: PlayMatchup;
    /**
     *
     * @type {number}
     * @memberof Play
     */
    atBatIndex?: number;
    /**
     *
     * @type {string}
     * @memberof Play
     */
    playEndTime?: string;
    /**
     *
     * @type {Array<number>}
     * @memberof Play
     */
    pitchIndex?: Array<number>;
    /**
     *
     * @type {Array<number>}
     * @memberof Play
     */
    actionIndex?: Array<number>;
    /**
     *
     * @type {Array<number>}
     * @memberof Play
     */
    runnerIndex?: Array<number>;
    /**
     *
     * @type {Array<PlayRunner>}
     * @memberof Play
     */
    runners?: Array<PlayRunner>;
    /**
     *
     * @type {Array<PlayEvent>}
     * @memberof Play
     */
    playEvents?: Array<PlayEvent>;
}

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface PlayAbout
 */
export declare interface PlayAbout {
    /**
     *
     * @type {number}
     * @memberof PlayAbout
     */
    atBatIndex?: number;
    /**
     *
     * @type {string}
     * @memberof PlayAbout
     */
    halfInning?: string;
    /**
     *
     * @type {boolean}
     * @memberof PlayAbout
     */
    isTopInning?: boolean;
    /**
     *
     * @type {number}
     * @memberof PlayAbout
     */
    inning?: number;
    /**
     *
     * @type {string}
     * @memberof PlayAbout
     */
    startTime?: string;
    /**
     *
     * @type {string}
     * @memberof PlayAbout
     */
    endTime?: string;
    /**
     *
     * @type {boolean}
     * @memberof PlayAbout
     */
    isComplete?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof PlayAbout
     */
    isScoringPlay?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof PlayAbout
     */
    hasReview?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof PlayAbout
     */
    hasOut?: boolean;
    /**
     *
     * @type {number}
     * @memberof PlayAbout
     */
    captivatingIndex?: number;
}

export declare function PlayAboutFromJSON(json: any): PlayAbout;

export declare function PlayAboutFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlayAbout;

export declare function PlayAboutToJSON(json: any): PlayAbout;

export declare function PlayAboutToJSONTyped(value?: PlayAbout | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface PlayCount
 */
export declare interface PlayCount {
    /**
     *
     * @type {number}
     * @memberof PlayCount
     */
    balls?: number;
    /**
     *
     * @type {number}
     * @memberof PlayCount
     */
    strikes?: number;
    /**
     *
     * @type {number}
     * @memberof PlayCount
     */
    outs?: number;
}

export declare function PlayCountFromJSON(json: any): PlayCount;

export declare function PlayCountFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlayCount;

export declare function PlayCountToJSON(json: any): PlayCount;

export declare function PlayCountToJSONTyped(value?: PlayCount | null, ignoreDiscriminator?: boolean): any;

/**
 * A player entry in a boxscore or roster context. Contains a person sub-object plus roster/game-specific fields.
 *
 * @export
 * @interface Player
 */
export declare interface Player {
    /**
     *
     * @type {Person}
     * @memberof Player
     */
    person: Person;
    /**
     *
     * @type {string}
     * @memberof Player
     */
    jerseyNumber?: string;
    /**
     *
     * @type {Position}
     * @memberof Player
     */
    position: Position;
    /**
     *
     * @type {PlayerStatus}
     * @memberof Player
     */
    status?: PlayerStatus;
    /**
     *
     * @type {number}
     * @memberof Player
     */
    parentTeamId?: number;
    /**
     *
     * @type {string}
     * @memberof Player
     */
    battingOrder?: string;
    /**
     *
     * @type {string}
     * @memberof Player
     */
    note?: string;
    /**
     *
     * @type {PlayerGameStatus}
     * @memberof Player
     */
    gameStatus?: PlayerGameStatus;
    /**
     *
     * @type {PlayerGameStats}
     * @memberof Player
     */
    stats: PlayerGameStats;
    /**
     *
     * @type {PlayerSeasonStats}
     * @memberof Player
     */
    seasonStats: PlayerSeasonStats;
}

export declare function PlayerFromJSON(json: any): Player;

export declare function PlayerFromJSONTyped(json: any, ignoreDiscriminator: boolean): Player;

/**
 *
 * @export
 * @interface PlayerGameStats
 */
export declare interface PlayerGameStats {
    /**
     *
     * @type {BattingStats}
     * @memberof PlayerGameStats
     */
    batting: BattingStats;
    /**
     *
     * @type {PitchingStats}
     * @memberof PlayerGameStats
     */
    pitching: PitchingStats;
    /**
     *
     * @type {FieldingStats}
     * @memberof PlayerGameStats
     */
    fielding: FieldingStats;
}

export declare function PlayerGameStatsFromJSON(json: any): PlayerGameStats;

export declare function PlayerGameStatsFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlayerGameStats;

export declare function PlayerGameStatsToJSON(json: any): PlayerGameStats;

export declare function PlayerGameStatsToJSONTyped(value?: PlayerGameStats | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface PlayerGameStatus
 */
export declare interface PlayerGameStatus {
    /**
     *
     * @type {boolean}
     * @memberof PlayerGameStatus
     */
    isCurrentBatter?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof PlayerGameStatus
     */
    isCurrentPitcher?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof PlayerGameStatus
     */
    isOnBench?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof PlayerGameStatus
     */
    isSubstitute?: boolean;
}

export declare function PlayerGameStatusFromJSON(json: any): PlayerGameStatus;

export declare function PlayerGameStatusFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlayerGameStatus;

export declare function PlayerGameStatusToJSON(json: any): PlayerGameStatus;

export declare function PlayerGameStatusToJSONTyped(value?: PlayerGameStatus | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface PlayerSeasonStats
 */
export declare interface PlayerSeasonStats {
    /**
     *
     * @type {BattingStats}
     * @memberof PlayerSeasonStats
     */
    batting: BattingStats;
    /**
     *
     * @type {PitchingStats}
     * @memberof PlayerSeasonStats
     */
    pitching: PitchingStats;
    /**
     *
     * @type {FieldingStats}
     * @memberof PlayerSeasonStats
     */
    fielding: FieldingStats;
}

export declare function PlayerSeasonStatsFromJSON(json: any): PlayerSeasonStats;

export declare function PlayerSeasonStatsFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlayerSeasonStats;

export declare function PlayerSeasonStatsToJSON(json: any): PlayerSeasonStats;

export declare function PlayerSeasonStatsToJSONTyped(value?: PlayerSeasonStats | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface PlayerStatus
 */
export declare interface PlayerStatus {
    /**
     *
     * @type {string}
     * @memberof PlayerStatus
     */
    code?: string;
    /**
     *
     * @type {string}
     * @memberof PlayerStatus
     */
    description?: string;
}

export declare function PlayerStatusFromJSON(json: any): PlayerStatus;

export declare function PlayerStatusFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlayerStatus;

export declare function PlayerStatusToJSON(json: any): PlayerStatus;

export declare function PlayerStatusToJSONTyped(value?: PlayerStatus | null, ignoreDiscriminator?: boolean): any;

export declare function PlayerToJSON(json: any): Player;

export declare function PlayerToJSONTyped(value?: Player | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface PlayEvent
 */
export declare interface PlayEvent {
    /**
     *
     * @type {object}
     * @memberof PlayEvent
     */
    details?: object;
    /**
     *
     * @type {object}
     * @memberof PlayEvent
     */
    count?: object;
    /**
     *
     * @type {number}
     * @memberof PlayEvent
     */
    index?: number;
    /**
     *
     * @type {string}
     * @memberof PlayEvent
     */
    startTime?: string;
    /**
     *
     * @type {string}
     * @memberof PlayEvent
     */
    endTime?: string;
    /**
     *
     * @type {boolean}
     * @memberof PlayEvent
     */
    isPitch?: boolean;
    /**
     *
     * @type {string}
     * @memberof PlayEvent
     */
    type?: string;
}

export declare function PlayEventFromJSON(json: any): PlayEvent;

export declare function PlayEventFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlayEvent;

export declare function PlayEventToJSON(json: any): PlayEvent;

export declare function PlayEventToJSONTyped(value?: PlayEvent | null, ignoreDiscriminator?: boolean): any;

export declare function PlayFromJSON(json: any): Play;

export declare function PlayFromJSONTyped(json: any, ignoreDiscriminator: boolean): Play;

/**
 *
 * @export
 * @interface PlayMatchup
 */
export declare interface PlayMatchup {
    /**
     *
     * @type {Person}
     * @memberof PlayMatchup
     */
    batter?: Person;
    /**
     *
     * @type {CodeDescription}
     * @memberof PlayMatchup
     */
    batSide?: CodeDescription;
    /**
     *
     * @type {Person}
     * @memberof PlayMatchup
     */
    pitcher?: Person;
    /**
     *
     * @type {CodeDescription}
     * @memberof PlayMatchup
     */
    pitchHand?: CodeDescription;
}

export declare function PlayMatchupFromJSON(json: any): PlayMatchup;

export declare function PlayMatchupFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlayMatchup;

export declare function PlayMatchupToJSON(json: any): PlayMatchup;

export declare function PlayMatchupToJSONTyped(value?: PlayMatchup | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface PlayResult
 */
export declare interface PlayResult {
    /**
     *
     * @type {string}
     * @memberof PlayResult
     */
    type?: string;
    /**
     *
     * @type {string}
     * @memberof PlayResult
     */
    event?: string;
    /**
     *
     * @type {string}
     * @memberof PlayResult
     */
    eventType?: string;
    /**
     *
     * @type {string}
     * @memberof PlayResult
     */
    description?: string;
    /**
     *
     * @type {number}
     * @memberof PlayResult
     */
    rbi?: number;
    /**
     *
     * @type {number}
     * @memberof PlayResult
     */
    awayScore?: number;
    /**
     *
     * @type {number}
     * @memberof PlayResult
     */
    homeScore?: number;
    /**
     *
     * @type {boolean}
     * @memberof PlayResult
     */
    isOut?: boolean;
}

export declare function PlayResultFromJSON(json: any): PlayResult;

export declare function PlayResultFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlayResult;

export declare function PlayResultToJSON(json: any): PlayResult;

export declare function PlayResultToJSONTyped(value?: PlayResult | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface PlayRunner
 */
export declare interface PlayRunner {
    /**
     *
     * @type {PlayRunnerMovement}
     * @memberof PlayRunner
     */
    movement?: PlayRunnerMovement;
    /**
     *
     * @type {PlayRunnerDetails}
     * @memberof PlayRunner
     */
    details?: PlayRunnerDetails;
}

/**
 *
 * @export
 * @interface PlayRunnerDetails
 */
export declare interface PlayRunnerDetails {
    /**
     *
     * @type {string}
     * @memberof PlayRunnerDetails
     */
    event?: string;
    /**
     *
     * @type {string}
     * @memberof PlayRunnerDetails
     */
    eventType?: string;
    /**
     *
     * @type {Person}
     * @memberof PlayRunnerDetails
     */
    runner?: Person;
    /**
     *
     * @type {boolean}
     * @memberof PlayRunnerDetails
     */
    isScoringEvent?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof PlayRunnerDetails
     */
    rbi?: boolean;
    /**
     *
     * @type {boolean}
     * @memberof PlayRunnerDetails
     */
    earned?: boolean;
}

export declare function PlayRunnerDetailsFromJSON(json: any): PlayRunnerDetails;

export declare function PlayRunnerDetailsFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlayRunnerDetails;

export declare function PlayRunnerDetailsToJSON(json: any): PlayRunnerDetails;

export declare function PlayRunnerDetailsToJSONTyped(value?: PlayRunnerDetails | null, ignoreDiscriminator?: boolean): any;

export declare function PlayRunnerFromJSON(json: any): PlayRunner;

export declare function PlayRunnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlayRunner;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface PlayRunnerMovement
 */
export declare interface PlayRunnerMovement {
    /**
     *
     * @type {string}
     * @memberof PlayRunnerMovement
     */
    originBase?: string;
    /**
     *
     * @type {string}
     * @memberof PlayRunnerMovement
     */
    start?: string;
    /**
     *
     * @type {string}
     * @memberof PlayRunnerMovement
     */
    end?: string;
    /**
     *
     * @type {string}
     * @memberof PlayRunnerMovement
     */
    outBase?: string;
    /**
     *
     * @type {boolean}
     * @memberof PlayRunnerMovement
     */
    isOut?: boolean;
    /**
     *
     * @type {number}
     * @memberof PlayRunnerMovement
     */
    outNumber?: number;
}

export declare function PlayRunnerMovementFromJSON(json: any): PlayRunnerMovement;

export declare function PlayRunnerMovementFromJSONTyped(json: any, ignoreDiscriminator: boolean): PlayRunnerMovement;

export declare function PlayRunnerMovementToJSON(json: any): PlayRunnerMovement;

export declare function PlayRunnerMovementToJSONTyped(value?: PlayRunnerMovement | null, ignoreDiscriminator?: boolean): any;

export declare function PlayRunnerToJSON(json: any): PlayRunner;

export declare function PlayRunnerToJSONTyped(value?: PlayRunner | null, ignoreDiscriminator?: boolean): any;

/**
 * Play-by-play data for a game.
 *
 * @export
 * @interface Plays
 */
export declare interface Plays {
    /**
     *
     * @type {Array<Play>}
     * @memberof Plays
     */
    allPlays?: Array<Play>;
    /**
     *
     * @type {object}
     * @memberof Plays
     */
    currentPlay?: object;
    /**
     *
     * @type {Array<number>}
     * @memberof Plays
     */
    scoringPlays?: Array<number>;
    /**
     *
     * @type {Array<object>}
     * @memberof Plays
     */
    playsByInning?: Array<object>;
}

export declare function PlaysFromJSON(json: any): Plays;

export declare function PlaysFromJSONTyped(json: any, ignoreDiscriminator: boolean): Plays;

export declare function PlaysToJSON(json: any): Plays;

export declare function PlaysToJSONTyped(value?: Plays | null, ignoreDiscriminator?: boolean): any;

export declare function PlayToJSON(json: any): Play;

export declare function PlayToJSONTyped(value?: Play | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 * Position (e.g. primaryPosition on a person).
 *
 * @export
 * @interface Position
 */
export declare interface Position {
    /**
     *
     * @type {string}
     * @memberof Position
     */
    code?: string;
    /**
     *
     * @type {string}
     * @memberof Position
     */
    name?: string;
    /**
     *
     * @type {string}
     * @memberof Position
     */
    type?: string;
    /**
     *
     * @type {string}
     * @memberof Position
     */
    abbreviation?: string;
}

export declare function PositionFromJSON(json: any): Position;

export declare function PositionFromJSONTyped(json: any, ignoreDiscriminator: boolean): Position;

export declare function PositionToJSON(json: any): Position;

export declare function PositionToJSONTyped(value?: Position | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface ProbablePitchers
 */
export declare interface ProbablePitchers {
    /**
     *
     * @type {Person}
     * @memberof ProbablePitchers
     */
    away?: Person;
    /**
     *
     * @type {Person}
     * @memberof ProbablePitchers
     */
    home?: Person;
}

export declare function ProbablePitchersFromJSON(json: any): ProbablePitchers;

export declare function ProbablePitchersFromJSONTyped(json: any, ignoreDiscriminator: boolean): ProbablePitchers;

export declare function ProbablePitchersToJSON(json: any): ProbablePitchers;

export declare function ProbablePitchersToJSONTyped(value?: ProbablePitchers | null, ignoreDiscriminator?: boolean): any;

export declare function querystring(params: HTTPQuery, prefix?: string): string;

/**
 *
 */
export declare class ReferenceApi extends runtime.BaseAPI {
    /**
     * Creates request options for getAllSeasons without sending the request
     */
    getAllSeasonsRequestOpts(requestParameters: GetAllSeasonsRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns All Seasons
     * Retrieves All Seasons over time
     */
    getAllSeasonsRaw(requestParameters: GetAllSeasonsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Seasons>>;
    /**
     * Returns All Seasons
     * Retrieves All Seasons over time
     */
    getAllSeasons(requestParameters?: GetAllSeasonsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Seasons>;
    /**
     * Creates request options for getAttendance without sending the request
     */
    getAttendanceRequestOpts(requestParameters: GetAttendanceRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns attendance data based on teamId, leagueId, or leagueListId. At least one of teamId, leagueId, or leagueListId is required.
     * Retrieves attendance data
     */
    getAttendanceRaw(requestParameters: GetAttendanceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Attendance>>;
    /**
     * Returns attendance data based on teamId, leagueId, or leagueListId. At least one of teamId, leagueId, or leagueListId is required.
     * Retrieves attendance data
     */
    getAttendance(requestParameters: GetAttendanceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Attendance>;
    /**
     * Creates request options for getAwardRecipients without sending the request
     */
    getAwardRecipientsRequestOpts(requestParameters: GetAwardRecipientsRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns a list of recipients for a given award.
     * Retrieves award recipients
     */
    getAwardRecipientsRaw(requestParameters: GetAwardRecipientsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<AwardsResponse>>;
    /**
     * Returns a list of recipients for a given award.
     * Retrieves award recipients
     */
    getAwardRecipients(requestParameters: GetAwardRecipientsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<AwardsResponse>;
    /**
     * Creates request options for getDivisions without sending the request
     */
    getDivisionsRequestOpts(requestParameters: GetDivisionsRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns Divisions
     * Retrieves Divisions
     */
    getDivisionsRaw(requestParameters: GetDivisionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Divisions>>;
    /**
     * Returns Divisions
     * Retrieves Divisions
     */
    getDivisions(requestParameters: GetDivisionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Divisions>;
    /**
     * Creates request options for getDraft without sending the request
     */
    getDraftRequestOpts(requestParameters: GetDraftRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns draft round and pick information for a given year.
     * Retrieves draft data for a year
     */
    getDraftRaw(requestParameters: GetDraftRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DraftResponse>>;
    /**
     * Returns draft round and pick information for a given year.
     * Retrieves draft data for a year
     */
    getDraft(requestParameters: GetDraftRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DraftResponse>;
    /**
     * Creates request options for getGamePace without sending the request
     */
    getGamePaceRequestOpts(requestParameters: GetGamePaceRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns pace of game metrics for a given season, sport, league, or team.
     * Retrieves pace of game metrics
     */
    getGamePaceRaw(requestParameters: GetGamePaceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GamePace>>;
    /**
     * Returns pace of game metrics for a given season, sport, league, or team.
     * Retrieves pace of game metrics
     */
    getGamePace(requestParameters: GetGamePaceRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GamePace>;
    /**
     * Creates request options for getLeagues without sending the request
     */
    getLeaguesRequestOpts(requestParameters: GetLeaguesRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns Leagues
     * Retrieves Leagues
     */
    getLeaguesRaw(requestParameters: GetLeaguesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Leagues>>;
    /**
     * Returns Leagues
     * Retrieves Leagues
     */
    getLeagues(requestParameters: GetLeaguesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Leagues>;
    /**
     * Creates request options for getSeason without sending the request
     */
    getSeasonRequestOpts(requestParameters: GetSeasonRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns Season
     * Retrieves season
     */
    getSeasonRaw(requestParameters: GetSeasonRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Seasons>>;
    /**
     * Returns Season
     * Retrieves season
     */
    getSeason(requestParameters: GetSeasonRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Seasons>;
    /**
     * Creates request options for getSeasonById without sending the request
     */
    getSeasonByIdRequestOpts(requestParameters: GetSeasonByIdRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns season date information for a specific season year.
     * Retrieves a specific season by ID
     */
    getSeasonByIdRaw(requestParameters: GetSeasonByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Seasons>>;
    /**
     * Returns season date information for a specific season year.
     * Retrieves a specific season by ID
     */
    getSeasonById(requestParameters: GetSeasonByIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Seasons>;
    /**
     * Creates request options for getSport without sending the request
     */
    getSportRequestOpts(requestParameters: GetSportRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns sport information for a specific sportId.
     * Retrieves a single sport by ID
     */
    getSportRaw(requestParameters: GetSportRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SportsResponse>>;
    /**
     * Returns sport information for a specific sportId.
     * Retrieves a single sport by ID
     */
    getSport(requestParameters: GetSportRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SportsResponse>;
    /**
     * Creates request options for getSports without sending the request
     */
    getSportsRequestOpts(requestParameters: GetSportsRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns a list of all sports.
     * Retrieves all sports
     */
    getSportsRaw(requestParameters: GetSportsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SportsResponse>>;
    /**
     * Returns a list of all sports.
     * Retrieves all sports
     */
    getSports(requestParameters?: GetSportsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SportsResponse>;
    /**
     * Creates request options for getStats without sending the request
     */
    getStatsRequestOpts(requestParameters: GetStatsRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns stats by stat type and group. Can be filtered by team, league, game type, sport, and season.
     * Retrieves league-level stats
     */
    getStatsRaw(requestParameters: GetStatsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PersonStatsResponse>>;
    /**
     * Returns stats by stat type and group. Can be filtered by team, league, game type, sport, and season.
     * Retrieves league-level stats
     */
    getStats(requestParameters: GetStatsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PersonStatsResponse>;
    /**
     * Creates request options for getTeam without sending the request
     */
    getTeamRequestOpts(requestParameters: GetTeamRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns detailed team information for a specific teamId.
     * Retrieves a single team by ID
     */
    getTeamRaw(requestParameters: GetTeamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<TeamsResponse>>;
    /**
     * Returns detailed team information for a specific teamId.
     * Retrieves a single team by ID
     */
    getTeam(requestParameters: GetTeamRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<TeamsResponse>;
    /**
     * Creates request options for getTeamStats without sending the request
     */
    getTeamStatsRequestOpts(requestParameters: GetTeamStatsRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns stats for a team by stat type and group.
     * Retrieves team stats
     */
    getTeamStatsRaw(requestParameters: GetTeamStatsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<TeamStatsResponse>>;
    /**
     * Returns stats for a team by stat type and group.
     * Retrieves team stats
     */
    getTeamStats(requestParameters: GetTeamStatsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<TeamStatsResponse>;
    /**
     * Creates request options for getTeams without sending the request
     */
    getTeamsRequestOpts(requestParameters: GetTeamsRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns teams for the given sport and season. Use the hydrate query parameter to expand related resources (e.g. hydrate=division includes full division, league, and sport objects on each team).
     * Retrieves Teams
     */
    getTeamsRaw(requestParameters: GetTeamsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Teams>>;
    /**
     * Returns teams for the given sport and season. Use the hydrate query parameter to expand related resources (e.g. hydrate=division includes full division, league, and sport objects on each team).
     * Retrieves Teams
     */
    getTeams(requestParameters: GetTeamsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Teams>;
    /**
     * Creates request options for getVenue without sending the request
     */
    getVenueRequestOpts(requestParameters: GetVenueRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns venue information for a specific venueId. Automatically hydrates location, fieldInfo, and timezone.
     * Retrieves a single venue by ID
     */
    getVenueRaw(requestParameters: GetVenueRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<VenuesResponse>>;
    /**
     * Returns venue information for a specific venueId. Automatically hydrates location, fieldInfo, and timezone.
     * Retrieves a single venue by ID
     */
    getVenue(requestParameters: GetVenueRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<VenuesResponse>;
    /**
     * Creates request options for getVenues without sending the request
     */
    getVenuesRequestOpts(requestParameters: GetVenuesRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns a list of all venues. Use hydrate for location, fieldInfo, timezone.
     * Retrieves all venues
     */
    getVenuesRaw(requestParameters: GetVenuesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<VenuesResponse>>;
    /**
     * Returns a list of all venues. Use hydrate for location, fieldInfo, timezone.
     * Retrieves all venues
     */
    getVenues(requestParameters: GetVenuesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<VenuesResponse>;
}

export declare interface RequestContext {
    fetch: FetchAPI;
    url: string;
    init: RequestInit;
}

export declare interface RequestOpts {
    path: string;
    method: HTTPMethod;
    headers: HTTPHeaders;
    query?: HTTPQuery;
    body?: HTTPBody;
}

export declare class RequiredError extends Error {
    field: string;
    name: "RequiredError";
    constructor(field: string, msg?: string);
}

export declare interface ResponseContext {
    fetch: FetchAPI;
    url: string;
    init: RequestInit;
    response: Response;
}

export declare class ResponseError extends Error {
    response: Response;
    name: "ResponseError";
    constructor(response: Response, msg?: string);
}

export declare interface ResponseTransformer<T> {
    (json: any): T;
}

/**
 *
 * @export
 * @interface RosterEntry
 */
export declare interface RosterEntry {
    /**
     *
     * @type {Person}
     * @memberof RosterEntry
     */
    person?: Person;
    /**
     *
     * @type {string}
     * @memberof RosterEntry
     */
    jerseyNumber?: string;
    /**
     *
     * @type {Position}
     * @memberof RosterEntry
     */
    position?: Position;
    /**
     *
     * @type {RosterStatus}
     * @memberof RosterEntry
     */
    status?: RosterStatus;
    /**
     *
     * @type {number}
     * @memberof RosterEntry
     */
    parentTeamId?: number;
}

export declare function RosterEntryFromJSON(json: any): RosterEntry;

export declare function RosterEntryFromJSONTyped(json: any, ignoreDiscriminator: boolean): RosterEntry;

export declare function RosterEntryToJSON(json: any): RosterEntry;

export declare function RosterEntryToJSONTyped(value?: RosterEntry | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface RosterResponse
 */
export declare interface RosterResponse {
    /**
     *
     * @type {Array<RosterEntry>}
     * @memberof RosterResponse
     */
    roster: Array<RosterEntry>;
    /**
     *
     * @type {string}
     * @memberof RosterResponse
     */
    link?: string;
    /**
     *
     * @type {number}
     * @memberof RosterResponse
     */
    teamId?: number;
    /**
     *
     * @type {string}
     * @memberof RosterResponse
     */
    rosterType?: string;
}

export declare function RosterResponseFromJSON(json: any): RosterResponse;

export declare function RosterResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): RosterResponse;

export declare function RosterResponseToJSON(json: any): RosterResponse;

export declare function RosterResponseToJSONTyped(value?: RosterResponse | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface RosterStatus
 */
export declare interface RosterStatus {
    /**
     *
     * @type {string}
     * @memberof RosterStatus
     */
    code?: string;
    /**
     *
     * @type {string}
     * @memberof RosterStatus
     */
    description?: string;
}

export declare function RosterStatusFromJSON(json: any): RosterStatus;

export declare function RosterStatusFromJSONTyped(json: any, ignoreDiscriminator: boolean): RosterStatus;

export declare function RosterStatusToJSON(json: any): RosterStatus;

export declare function RosterStatusToJSONTyped(value?: RosterStatus | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface RoundRobin
 */
export declare interface RoundRobin {
    /**
     *
     * @type {string}
     * @memberof RoundRobin
     */
    status?: string;
}

export declare function RoundRobinFromJSON(json: any): RoundRobin;

export declare function RoundRobinFromJSONTyped(json: any, ignoreDiscriminator: boolean): RoundRobin;

export declare function RoundRobinToJSON(json: any): RoundRobin;

export declare function RoundRobinToJSONTyped(value?: RoundRobin | null, ignoreDiscriminator?: boolean): any;

declare namespace runtime {
    export {
        querystring,
        exists,
        mapValues,
        canConsumeForm,
        BASE_PATH,
        ConfigurationParameters,
        Configuration,
        DefaultConfig,
        BaseAPI,
        ResponseError,
        FetchError,
        RequiredError,
        COLLECTION_FORMATS,
        FetchAPI,
        Json,
        HTTPMethod,
        HTTPHeaders,
        HTTPQuery,
        HTTPBody,
        HTTPRequestInit,
        ModelPropertyNaming,
        InitOverrideFunction,
        FetchParams,
        RequestOpts,
        Consume,
        RequestContext,
        ResponseContext,
        ErrorContext,
        Middleware,
        ApiResponse,
        ResponseTransformer,
        JSONApiResponse,
        VoidApiResponse,
        BlobApiResponse,
        TextApiResponse
    }
}

/**
 * Schedule
 *
 * @export
 * @interface Schedule
 */
export declare interface Schedule {
    /**
     *
     * @type {number}
     * @memberof Schedule
     */
    totalItems: number;
    /**
     *
     * @type {number}
     * @memberof Schedule
     */
    totalEvents: number;
    /**
     *
     * @type {number}
     * @memberof Schedule
     */
    totalGames: number;
    /**
     *
     * @type {number}
     * @memberof Schedule
     */
    totalGamesInProgress: number;
    /**
     *
     * @type {Array<ScheduleDay>}
     * @memberof Schedule
     */
    dates: Array<ScheduleDay>;
}

/**
 *
 */
export declare class ScheduleApi extends runtime.BaseAPI {
    /**
     * Creates request options for getSchedule without sending the request
     */
    getScheduleRequestOpts(requestParameters: GetScheduleRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns Schedule
     * Retrieves schedule
     */
    getScheduleRaw(requestParameters: GetScheduleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Schedule>>;
    /**
     * Returns Schedule
     * Retrieves schedule
     */
    getSchedule(requestParameters?: GetScheduleRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Schedule>;
}

/**
 *
 * @export
 * @interface ScheduleDay
 */
export declare interface ScheduleDay {
    /**
     *
     * @type {string}
     * @memberof ScheduleDay
     */
    date: string;
    /**
     *
     * @type {number}
     * @memberof ScheduleDay
     */
    totalItems?: number;
    /**
     *
     * @type {number}
     * @memberof ScheduleDay
     */
    totalEvents?: number;
    /**
     *
     * @type {number}
     * @memberof ScheduleDay
     */
    totalGames?: number;
    /**
     *
     * @type {number}
     * @memberof ScheduleDay
     */
    totalGamesInProgress?: number;
    /**
     *
     * @type {Array<Game>}
     * @memberof ScheduleDay
     */
    games: Array<Game>;
}

export declare function ScheduleDayFromJSON(json: any): ScheduleDay;

export declare function ScheduleDayFromJSONTyped(json: any, ignoreDiscriminator: boolean): ScheduleDay;

export declare function ScheduleDayToJSON(json: any): ScheduleDay;

export declare function ScheduleDayToJSONTyped(value?: ScheduleDay | null, ignoreDiscriminator?: boolean): any;

export declare function ScheduleFromJSON(json: any): Schedule;

export declare function ScheduleFromJSONTyped(json: any, ignoreDiscriminator: boolean): Schedule;

export declare function ScheduleToJSON(json: any): Schedule;

export declare function ScheduleToJSONTyped(value?: Schedule | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 * Season
 *
 * @export
 * @interface Season
 */
export declare interface Season {
    /**
     *
     * @type {string}
     * @memberof Season
     */
    seasonId: string;
    /**
     *
     * @type {boolean}
     * @memberof Season
     */
    hasWildcard?: boolean;
    /**
     *
     * @type {string}
     * @memberof Season
     */
    preSeasonStartDate?: string;
    /**
     *
     * @type {string}
     * @memberof Season
     */
    preSeasonEndDate?: string;
    /**
     *
     * @type {string}
     * @memberof Season
     */
    seasonStartDate: string;
    /**
     *
     * @type {string}
     * @memberof Season
     */
    seasonEndDate: string;
    /**
     *
     * @type {string}
     * @memberof Season
     */
    springStartDate?: string;
    /**
     *
     * @type {string}
     * @memberof Season
     */
    springEndDate?: string;
    /**
     *
     * @type {string}
     * @memberof Season
     */
    regularSeasonStartDate: string;
    /**
     *
     * @type {string}
     * @memberof Season
     */
    lastDate1stHalf?: string;
    /**
     * All-Star Game date
     * @type {string}
     * @memberof Season
     */
    allStarDate?: string;
    /**
     *
     * @type {string}
     * @memberof Season
     */
    firstDate2ndHalf?: string;
    /**
     *
     * @type {string}
     * @memberof Season
     */
    regularSeasonEndDate: string;
    /**
     *
     * @type {string}
     * @memberof Season
     */
    postSeasonStartDate?: string;
    /**
     *
     * @type {string}
     * @memberof Season
     */
    postSeasonEndDate?: string;
    /**
     * Alternative spelling returned by API (offseason, one word, lowercase)
     * @type {string}
     * @memberof Season
     */
    offseasonStartDate?: string;
    /**
     * Alternative spelling returned by API (offSeason, one word, camelCase)
     * @type {string}
     * @memberof Season
     */
    offSeasonEndDate?: string;
    /**
     *
     * @type {string}
     * @memberof Season
     */
    seasonLevelGamedayType?: string;
    /**
     *
     * @type {string}
     * @memberof Season
     */
    gameLevelGamedayType?: string;
    /**
     *
     * @type {number}
     * @memberof Season
     */
    qualifierPlateAppearances?: number;
    /**
     *
     * @type {number}
     * @memberof Season
     */
    qualifierOutsPitched?: number;
}

export declare function SeasonFromJSON(json: any): Season;

export declare function SeasonFromJSONTyped(json: any, ignoreDiscriminator: boolean): Season;

/**
 *
 * @export
 * @interface Seasons
 */
export declare interface Seasons {
    /**
     *
     * @type {Array<Season>}
     * @memberof Seasons
     */
    seasons: Array<Season>;
}

export declare function SeasonsFromJSON(json: any): Seasons;

export declare function SeasonsFromJSONTyped(json: any, ignoreDiscriminator: boolean): Seasons;

export declare function SeasonsToJSON(json: any): Seasons;

export declare function SeasonsToJSONTyped(value?: Seasons | null, ignoreDiscriminator?: boolean): any;

export declare function SeasonToJSON(json: any): Season;

export declare function SeasonToJSONTyped(value?: Season | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 * Sport
 *
 * @export
 * @interface Sport
 */
export declare interface Sport {
    /**
     *
     * @type {number}
     * @memberof Sport
     */
    id: number;
    /**
     *
     * @type {string}
     * @memberof Sport
     */
    code?: string;
    /**
     *
     * @type {string}
     * @memberof Sport
     */
    link?: string;
    /**
     *
     * @type {string}
     * @memberof Sport
     */
    name?: string;
    /**
     *
     * @type {string}
     * @memberof Sport
     */
    abbreviation?: string;
    /**
     *
     * @type {number}
     * @memberof Sport
     */
    sortOrder?: number;
    /**
     *
     * @type {boolean}
     * @memberof Sport
     */
    activeStatus?: boolean;
}

export declare function SportFromJSON(json: any): Sport;

export declare function SportFromJSONTyped(json: any, ignoreDiscriminator: boolean): Sport;

/**
 *
 * @export
 * @interface SportsResponse
 */
export declare interface SportsResponse {
    /**
     *
     * @type {Array<Sport>}
     * @memberof SportsResponse
     */
    sports: Array<Sport>;
}

export declare function SportsResponseFromJSON(json: any): SportsResponse;

export declare function SportsResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): SportsResponse;

export declare function SportsResponseToJSON(json: any): SportsResponse;

export declare function SportsResponseToJSONTyped(value?: SportsResponse | null, ignoreDiscriminator?: boolean): any;

export declare function SportToJSON(json: any): Sport;

export declare function SportToJSONTyped(value?: Sport | null, ignoreDiscriminator?: boolean): any;

/**
 *
 */
export declare class StandingsApi extends runtime.BaseAPI {
    /**
     * Creates request options for getStandings without sending the request
     */
    getStandingsRequestOpts(requestParameters: GetStandingsRequest): Promise<runtime.RequestOpts>;
    /**
     * Returns Standing
     * Retrieves Standings
     */
    getStandingsRaw(requestParameters: GetStandingsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<DivisionStandingsList>>;
    /**
     * Returns Standing
     * Retrieves Standings
     */
    getStandings(requestParameters: GetStandingsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<DivisionStandingsList>;
}

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 * Stat Types:
 *   * `projected` - Projected stats for the current season
 *   * `projectedRos` - Projected stats for the rest of the current season
 *   * `yearByYear` - Year-by-year stats for all seasons
 *   * `yearByYearAdvanced` - Year-by-year advanced stats for all seasons
 *   * `yearByYearPlayoffs` - Year-by-year stats for playoff seasons
 *   * `standard` - Standard stats for the current season
 *   * `advanced` - Advanced stats for the current season
 *   * `career` - Career stats across all seasons
 *   * `careerRegularSeason` - Career regular season stats
 *   * `careerAdvanced` - Career advanced stats across all seasons
 *   * `seasonAdvanced` - Advanced stats for a single season (requires season parameter)
 *   * `careerStatSplits` - Career stats split by various factors (e.g. home/away, vs left/right, etc.)
 *   * `careerPlayoffs` - Career playoff stats across all seasons
 *   * `gameLog` - Game log for a single season (requires season parameter)
 *   * `playLog` - Play log for a single season (requires season parameter)
 *   * `pitchLog` - Pitch log for a single season (requires season parameter)
 *   * `metricLog` - Log of advanced metrics for a single season (requires season parameter)
 *   * `metricAverages` - Averages of advanced metrics for a single season (requires season parameter)
 *   * `pitchArsenal` - Pitch arsenal information for a single season (requires season parameter)
 *   * `outsAboveAverage` - Outs above average information for a single season (requires season parameter)
 *   * `expectedStatistics` - Expected statistics based on batted ball data for a single season (requires season parameter)
 *   * `sabermetrics` - Various sabermetric statistics for a single season (requires season parameter)
 *   * `sprayChart` - Spray chart data for a single season (requires season parameter)
 *   * `tracking` - Tracking data (e.g. Statcast) for a single season (requires season parameter)
 *   * `vsPlayer` - Stats against a specific opponent player (requires opponentId parameter)
 *   * `vsPlayerTotal` - Career stats against a specific opponent player (requires opponentId parameter)
 *   * `vsPlayer5Y` - Stats against a specific opponent player over the last 5 years (requires opponentId parameter)
 *   * `vsTeam` - Stats against a specific opponent team (requires opponentId parameter)
 *   * `vsTeam5Y` - Stats against a specific opponent team over the last 5 years (requires opponentId parameter)
 *   * `vsTeamTotal` - Career stats against a specific opponent team (requires opponentId parameter)
 *   * `lastXGames` - Stats for the last X games (requires games parameter)
 *   * `byDateRange` - Stats for a specific date range (requires startDate and endDate parameters)
 *   * `byDateRangeAdvanced` - Advanced stats for a specific date range (requires startDate and endDate parameters)
 *   * `byMonth` - Stats by month for a single season (requires season parameter)
 *   * `byMonthPlayoffs` - Stats by month for playoff seasons (requires season parameter)
 *   * `byDayOfWeek` - Stats by day of the week for a single season (requires season parameter)
 *   * `byDayOfWeekPlayoffs` - Stats by day of the week for playoff seasons (requires season parameter)
 *   * `homeAndAway` - Home and away stats for a single season (requires season parameter)
 *   * `homeAndAwayPlayoffs` - Home and away stats for playoff seasons (requires season parameter)
 *   * `winLoss` - Win/loss stats for a single season (requires season parameter)
 *   * `winLossPlayoffs` - Win/loss stats for playoff seasons (requires season parameter)
 *   * `rankings` - Various rankings for a single season (requires season parameter)
 *   * `rankingsByYear` - Various rankings by year for all seasons
 *   * `statsSingleSeason` - Standard stats for a single season (requires season parameter)
 *   * `statsSingleSeasonAdvanced` - Advanced stats for a single season (requires season parameter)
 *   * `hotColdZones` - Hot/cold zones for a single season (requires season parameter)
 *   * `availableStats` - List of available stat types for a player
 *   * `opponentsFaced` - List of opponents faced by a player along with stats against each opponent
 *   * `gameTypeStats` - Stats split by game type (e.g. regular season vs playoffs) for a single season (requires season parameter)
 *   * `firstYearStats` - Stats for a player's first year in the league
 *   * `lastYearStats` - Stats for a player's most recent year in the league
 *   * `statSplits` - Stats split by various factors (e.g. home/away, vs left/right, etc.) for a single season (requires season parameter)
 *   * `statSplitsAdvanced` - Advanced stats split by various factors (e.g. home/away, vs left/right, etc.) for a single season (requires season parameter)
 *   * `atGameStart` - Stats for a player at the start of each game for a single season (requires season parameter)
 *   * `vsOpponents` - Stats against specific opponents (both players and teams) for a single season (requires season parameter)
 *   * `sabermetricsmultiteam` - Various sabermetric statistics for a single season split by team for players who played on multiple teams in a season (requires season parameter)
 *
 * @export
 * @enum {string}
 */
export declare enum StatTypes {
    Projected = "projected",
    ProjectedRos = "projectedRos",
    YearByYear = "yearByYear",
    YearByYearAdvanced = "yearByYearAdvanced",
    YearByYearPlayoffs = "yearByYearPlayoffs",
    Standard = "standard",
    Advanced = "advanced",
    Career = "career",
    CareerRegularSeason = "careerRegularSeason",
    CareerAdvanced = "careerAdvanced",
    SeasonAdvanced = "seasonAdvanced",
    CareerStatSplits = "careerStatSplits",
    CareerPlayoffs = "careerPlayoffs",
    GameLog = "gameLog",
    PlayLog = "playLog",
    PitchLog = "pitchLog",
    MetricLog = "metricLog",
    MetricAverages = "metricAverages",
    PitchArsenal = "pitchArsenal",
    OutsAboveAverage = "outsAboveAverage",
    ExpectedStatistics = "expectedStatistics",
    Sabermetrics = "sabermetrics",
    SprayChart = "sprayChart",
    Tracking = "tracking",
    VsPlayer = "vsPlayer",
    VsPlayerTotal = "vsPlayerTotal",
    VsPlayer5Y = "vsPlayer5Y",
    VsTeam = "vsTeam",
    VsTeam5Y = "vsTeam5Y",
    VsTeamTotal = "vsTeamTotal",
    LastXGames = "lastXGames",
    ByDateRange = "byDateRange",
    ByDateRangeAdvanced = "byDateRangeAdvanced",
    ByMonth = "byMonth",
    ByMonthPlayoffs = "byMonthPlayoffs",
    ByDayOfWeek = "byDayOfWeek",
    ByDayOfWeekPlayoffs = "byDayOfWeekPlayoffs",
    HomeAndAway = "homeAndAway",
    HomeAndAwayPlayoffs = "homeAndAwayPlayoffs",
    WinLoss = "winLoss",
    WinLossPlayoffs = "winLossPlayoffs",
    Rankings = "rankings",
    RankingsByYear = "rankingsByYear",
    StatsSingleSeason = "statsSingleSeason",
    StatsSingleSeasonAdvanced = "statsSingleSeasonAdvanced",
    HotColdZones = "hotColdZones",
    AvailableStats = "availableStats",
    OpponentsFaced = "opponentsFaced",
    GameTypeStats = "gameTypeStats",
    FirstYearStats = "firstYearStats",
    LastYearStats = "lastYearStats",
    StatSplits = "statSplits",
    StatSplitsAdvanced = "statSplitsAdvanced",
    AtGameStart = "atGameStart",
    VsOpponents = "vsOpponents",
    Sabermetricsmultiteam = "sabermetricsmultiteam"
}

export declare function StatTypesFromJSON(json: any): StatTypes;

export declare function StatTypesFromJSONTyped(json: any, ignoreDiscriminator: boolean): StatTypes;

export declare function StatTypesToJSON(value?: StatTypes | null): any;

export declare function StatTypesToJSONTyped(value: any, ignoreDiscriminator: boolean): StatTypes;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface Streak
 */
export declare interface Streak {
    /**
     * Streak Type:
     *   * Losing Streak
     *   * Winning Streak
     *
     * @type {StreakStreakTypeEnum}
     * @memberof Streak
     */
    streakType?: StreakStreakTypeEnum;
    /**
     *
     * @type {string}
     * @memberof Streak
     */
    streakCode?: string;
    /**
     *
     * @type {number}
     * @memberof Streak
     */
    streakNumber?: number;
}

export declare function StreakFromJSON(json: any): Streak;

export declare function StreakFromJSONTyped(json: any, ignoreDiscriminator: boolean): Streak;

/**
 * @export
 * @enum {string}
 */
export declare enum StreakStreakTypeEnum {
    Losing = "losses",
    Winning = "wins"
}

export declare function StreakToJSON(json: any): Streak;

export declare function StreakToJSONTyped(value?: Streak | null, ignoreDiscriminator?: boolean): any;

/**
 * Team
 *
 * @export
 * @interface Team
 */
export declare interface Team {
    /**
     *
     * @type {number}
     * @memberof Team
     */
    id: number;
    /**
     *
     * @type {string}
     * @memberof Team
     */
    name: string;
    /**
     *
     * @type {string}
     * @memberof Team
     */
    link?: string;
    /**
     *
     * @type {string}
     * @memberof Team
     */
    allStarStatus?: string;
    /**
     *
     * @type {number}
     * @memberof Team
     */
    season?: number;
    /**
     *
     * @type {Venue}
     * @memberof Team
     */
    venue?: Venue;
    /**
     *
     * @type {Venue}
     * @memberof Team
     */
    springVenue?: Venue;
    /**
     *
     * @type {string}
     * @memberof Team
     */
    teamCode?: string;
    /**
     *
     * @type {string}
     * @memberof Team
     */
    fileCode?: string;
    /**
     *
     * @type {string}
     * @memberof Team
     */
    abbreviation?: string;
    /**
     *
     * @type {string}
     * @memberof Team
     */
    teamName?: string;
    /**
     *
     * @type {string}
     * @memberof Team
     */
    locationName?: string;
    /**
     *
     * @type {string}
     * @memberof Team
     */
    firstYearOfPlay?: string;
    /**
     *
     * @type {League}
     * @memberof Team
     */
    league?: League;
    /**
     *
     * @type {League}
     * @memberof Team
     */
    springLeague?: League;
    /**
     *
     * @type {Division}
     * @memberof Team
     */
    division?: Division;
    /**
     *
     * @type {Sport}
     * @memberof Team
     */
    sport?: Sport;
    /**
     *
     * @type {ModelRecord}
     * @memberof Team
     */
    record?: ModelRecord;
    /**
     *
     * @type {string}
     * @memberof Team
     */
    shortName?: string;
    /**
     *
     * @type {string}
     * @memberof Team
     */
    franchiseName?: string;
    /**
     *
     * @type {string}
     * @memberof Team
     */
    clubName?: string;
    /**
     *
     * @type {boolean}
     * @memberof Team
     */
    active?: boolean;
}

export declare function TeamFromJSON(json: any): Team;

export declare function TeamFromJSONTyped(json: any, ignoreDiscriminator: boolean): Team;

/**
 *
 * @export
 * @interface Teams
 */
export declare interface Teams {
    /**
     *
     * @type {Array<Team>}
     * @memberof Teams
     */
    teams: Array<Team>;
}

export declare function TeamsFromJSON(json: any): Teams;

export declare function TeamsFromJSONTyped(json: any, ignoreDiscriminator: boolean): Teams;

/**
 *
 * @export
 * @interface TeamsResponse
 */
export declare interface TeamsResponse {
    /**
     *
     * @type {Array<Team>}
     * @memberof TeamsResponse
     */
    teams: Array<Team>;
}

export declare function TeamsResponseFromJSON(json: any): TeamsResponse;

export declare function TeamsResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): TeamsResponse;

export declare function TeamsResponseToJSON(json: any): TeamsResponse;

export declare function TeamsResponseToJSONTyped(value?: TeamsResponse | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface TeamStats
 */
export declare interface TeamStats {
    /**
     *
     * @type {BattingStats}
     * @memberof TeamStats
     */
    batting: BattingStats;
    /**
     *
     * @type {PitchingStats}
     * @memberof TeamStats
     */
    pitching: PitchingStats;
    /**
     *
     * @type {FieldingStats}
     * @memberof TeamStats
     */
    fielding: FieldingStats;
}

export declare function TeamStatsFromJSON(json: any): TeamStats;

export declare function TeamStatsFromJSONTyped(json: any, ignoreDiscriminator: boolean): TeamStats;

/**
 * Response envelope for team stats endpoint.
 *
 * @export
 * @interface TeamStatsResponse
 */
export declare interface TeamStatsResponse {
    /**
     *
     * @type {Array<PersonStatsItem>}
     * @memberof TeamStatsResponse
     */
    stats?: Array<PersonStatsItem>;
}

export declare function TeamStatsResponseFromJSON(json: any): TeamStatsResponse;

export declare function TeamStatsResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): TeamStatsResponse;

export declare function TeamStatsResponseToJSON(json: any): TeamStatsResponse;

export declare function TeamStatsResponseToJSONTyped(value?: TeamStatsResponse | null, ignoreDiscriminator?: boolean): any;

export declare function TeamStatsToJSON(json: any): TeamStats;

export declare function TeamStatsToJSONTyped(value?: TeamStats | null, ignoreDiscriminator?: boolean): any;

export declare function TeamsToJSON(json: any): Teams;

export declare function TeamsToJSONTyped(value?: Teams | null, ignoreDiscriminator?: boolean): any;

export declare function TeamToJSON(json: any): Team;

export declare function TeamToJSONTyped(value?: Team | null, ignoreDiscriminator?: boolean): any;

export declare class TextApiResponse {
    raw: Response;
    constructor(raw: Response);
    value(): Promise<string>;
}

/**
 * A single transaction (trade, signing, assignment, status change, etc.) from the transactions API.
 *
 * @export
 * @interface Transaction
 */
export declare interface Transaction {
    /**
     * Unique transaction ID.
     * @type {number}
     * @memberof Transaction
     */
    id: number;
    /**
     *
     * @type {Person}
     * @memberof Transaction
     */
    person: Person;
    /**
     *
     * @type {Team}
     * @memberof Transaction
     */
    toTeam: Team;
    /**
     * Present when the transaction involves moving from one team to another.
     * @type {Team}
     * @memberof Transaction
     */
    fromTeam?: Team;
    /**
     * Date of the transaction (YYYY-MM-DD).
     * @type {string}
     * @memberof Transaction
     */
    date: string;
    /**
     * Effective date of the transaction (YYYY-MM-DD).
     * @type {string}
     * @memberof Transaction
     */
    effectiveDate: string;
    /**
     * Resolution date when applicable (YYYY-MM-DD).
     * @type {string}
     * @memberof Transaction
     */
    resolutionDate?: string;
    /**
     *
     * @type {TransactionTypeCode}
     * @memberof Transaction
     */
    typeCode: TransactionTypeCode;
    /**
     * Human-readable transaction type (e.g. Assigned, Signed, Trade, Optioned).
     * @type {string}
     * @memberof Transaction
     */
    typeDesc: string;
    /**
     * Full text description of the transaction.
     * @type {string}
     * @memberof Transaction
     */
    description: string;
}

export declare function TransactionFromJSON(json: any): Transaction;

export declare function TransactionFromJSONTyped(json: any, ignoreDiscriminator: boolean): Transaction;

/**
 * Response for GET /v1/transactions. Contains a list of transactions filtered by team, player, or date range.
 *
 * @export
 * @interface TransactionsResponse
 */
export declare interface TransactionsResponse {
    /**
     * MLB copyright notice.
     * @type {string}
     * @memberof TransactionsResponse
     */
    copyright?: string;
    /**
     *
     * @type {Array<Transaction>}
     * @memberof TransactionsResponse
     */
    transactions: Array<Transaction>;
}

export declare function TransactionsResponseFromJSON(json: any): TransactionsResponse;

export declare function TransactionsResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): TransactionsResponse;

export declare function TransactionsResponseToJSON(json: any): TransactionsResponse;

export declare function TransactionsResponseToJSONTyped(value?: TransactionsResponse | null, ignoreDiscriminator?: boolean): any;

export declare function TransactionToJSON(json: any): Transaction;

export declare function TransactionToJSONTyped(value?: Transaction | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 * Transaction type code:
 *   * `ASG` - Assigned
 *   * `SGN` - Signed
 *   * `SC` - Status Change
 *   * `SE` - Selected
 *   * `OPT` - Optioned
 *   * `CU` - Recalled
 *   * `NUM` - Number Change
 *   * `TR` - Trade
 *   * `DFA` - Declared Free Agency
 *   * `SFA` - Signed as Free Agent
 *
 * @export
 * @enum {string}
 */
export declare enum TransactionTypeCode {
    Assigned = "ASG",
    Signed = "SGN",
    StatusChange = "SC",
    Selected = "SE",
    Optioned = "OPT",
    Recalled = "CU",
    NumberChange = "NUM",
    Trade = "TR",
    DeclaredFreeAgency = "DFA",
    SignedAsFreeAgent = "SFA"
}

export declare function TransactionTypeCodeFromJSON(json: any): TransactionTypeCode;

export declare function TransactionTypeCodeFromJSONTyped(json: any, ignoreDiscriminator: boolean): TransactionTypeCode;

export declare function TransactionTypeCodeToJSON(value?: TransactionTypeCode | null): any;

export declare function TransactionTypeCodeToJSONTyped(value: any, ignoreDiscriminator: boolean): TransactionTypeCode;

/**
 * Venue. When embedded as springVenue, may contain only id and link. Hydrate with location, fieldInfo, timezone for full details.
 *
 * @export
 * @interface Venue
 */
export declare interface Venue {
    /**
     *
     * @type {number}
     * @memberof Venue
     */
    id: number;
    /**
     *
     * @type {string}
     * @memberof Venue
     */
    name?: string;
    /**
     *
     * @type {string}
     * @memberof Venue
     */
    link?: string;
    /**
     *
     * @type {boolean}
     * @memberof Venue
     */
    active?: boolean;
    /**
     *
     * @type {string}
     * @memberof Venue
     */
    season?: string;
    /**
     *
     * @type {VenueLocation}
     * @memberof Venue
     */
    location?: VenueLocation;
    /**
     *
     * @type {VenueTimeZone}
     * @memberof Venue
     */
    timeZone?: VenueTimeZone;
    /**
     *
     * @type {VenueFieldInfo}
     * @memberof Venue
     */
    fieldInfo?: VenueFieldInfo;
}

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface VenueFieldInfo
 */
export declare interface VenueFieldInfo {
    /**
     *
     * @type {number}
     * @memberof VenueFieldInfo
     */
    capacity?: number;
    /**
     *
     * @type {string}
     * @memberof VenueFieldInfo
     */
    turfType?: string;
    /**
     *
     * @type {string}
     * @memberof VenueFieldInfo
     */
    roofType?: string;
    /**
     *
     * @type {number}
     * @memberof VenueFieldInfo
     */
    leftLine?: number;
    /**
     *
     * @type {number}
     * @memberof VenueFieldInfo
     */
    left?: number;
    /**
     *
     * @type {number}
     * @memberof VenueFieldInfo
     */
    leftCenter?: number;
    /**
     *
     * @type {number}
     * @memberof VenueFieldInfo
     */
    center?: number;
    /**
     *
     * @type {number}
     * @memberof VenueFieldInfo
     */
    rightCenter?: number;
    /**
     *
     * @type {number}
     * @memberof VenueFieldInfo
     */
    rightLine?: number;
}

export declare function VenueFieldInfoFromJSON(json: any): VenueFieldInfo;

export declare function VenueFieldInfoFromJSONTyped(json: any, ignoreDiscriminator: boolean): VenueFieldInfo;

export declare function VenueFieldInfoToJSON(json: any): VenueFieldInfo;

export declare function VenueFieldInfoToJSONTyped(value?: VenueFieldInfo | null, ignoreDiscriminator?: boolean): any;

export declare function VenueFromJSON(json: any): Venue;

export declare function VenueFromJSONTyped(json: any, ignoreDiscriminator: boolean): Venue;

/**
 *
 * @export
 * @interface VenueLocation
 */
export declare interface VenueLocation {
    /**
     *
     * @type {string}
     * @memberof VenueLocation
     */
    address1?: string;
    /**
     *
     * @type {string}
     * @memberof VenueLocation
     */
    address2?: string;
    /**
     *
     * @type {string}
     * @memberof VenueLocation
     */
    city?: string;
    /**
     *
     * @type {string}
     * @memberof VenueLocation
     */
    state?: string;
    /**
     *
     * @type {string}
     * @memberof VenueLocation
     */
    stateAbbrev?: string;
    /**
     *
     * @type {string}
     * @memberof VenueLocation
     */
    postalCode?: string;
    /**
     *
     * @type {string}
     * @memberof VenueLocation
     */
    country?: string;
    /**
     *
     * @type {string}
     * @memberof VenueLocation
     */
    phone?: string;
    /**
     *
     * @type {Coordinates}
     * @memberof VenueLocation
     */
    defaultCoordinates?: Coordinates;
    /**
     *
     * @type {number}
     * @memberof VenueLocation
     */
    azimuthAngle?: number;
    /**
     *
     * @type {number}
     * @memberof VenueLocation
     */
    elevation?: number;
}

export declare function VenueLocationFromJSON(json: any): VenueLocation;

export declare function VenueLocationFromJSONTyped(json: any, ignoreDiscriminator: boolean): VenueLocation;

export declare function VenueLocationToJSON(json: any): VenueLocation;

export declare function VenueLocationToJSONTyped(value?: VenueLocation | null, ignoreDiscriminator?: boolean): any;

/**
 *
 * @export
 * @interface VenuesResponse
 */
export declare interface VenuesResponse {
    /**
     *
     * @type {Array<Venue>}
     * @memberof VenuesResponse
     */
    venues: Array<Venue>;
}

export declare function VenuesResponseFromJSON(json: any): VenuesResponse;

export declare function VenuesResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): VenuesResponse;

export declare function VenuesResponseToJSON(json: any): VenuesResponse;

export declare function VenuesResponseToJSONTyped(value?: VenuesResponse | null, ignoreDiscriminator?: boolean): any;

/**
 * MLB StatAPI
 * OpenAPI spec for the MLB Stats API (upstream API is undocumented). Derived from the python-mlb-statsapi library by zero-sum-seattle.
 *
 * The version of the OpenAPI document: 0.9.1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
/**
 *
 * @export
 * @interface VenueTimeZone
 */
export declare interface VenueTimeZone {
    /**
     *
     * @type {string}
     * @memberof VenueTimeZone
     */
    id?: string;
    /**
     *
     * @type {number}
     * @memberof VenueTimeZone
     */
    offset?: number;
    /**
     *
     * @type {number}
     * @memberof VenueTimeZone
     */
    offsetAtGameTime?: number;
    /**
     *
     * @type {string}
     * @memberof VenueTimeZone
     */
    tz?: string;
}

export declare function VenueTimeZoneFromJSON(json: any): VenueTimeZone;

export declare function VenueTimeZoneFromJSONTyped(json: any, ignoreDiscriminator: boolean): VenueTimeZone;

export declare function VenueTimeZoneToJSON(json: any): VenueTimeZone;

export declare function VenueTimeZoneToJSONTyped(value?: VenueTimeZone | null, ignoreDiscriminator?: boolean): any;

export declare function VenueToJSON(json: any): Venue;

export declare function VenueToJSONTyped(value?: Venue | null, ignoreDiscriminator?: boolean): any;

export declare class VoidApiResponse {
    raw: Response;
    constructor(raw: Response);
    value(): Promise<void>;
}

export { }
