/**
 * Sleeper API
 * The Sleeper API is a read-only HTTP API that is free to use and allows             access to a users leagues, drafts, and rosters. No API Token is necessary, as you cannot modify contents via this API. Be mindful of the frequency of calls. A general rule is to stay under 1000 API calls per minute, otherwise, you risk being IP-blocked.
 *
 * OpenAPI spec version: 1.0.0
 * 
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

import { LeagueSettings } from './LeagueSettings';
import { ScoreingSettings } from './ScoreingSettings';
import { HttpFile } from '../http/http';

export class League {
    'totalRosters': number;
    /**
    * can also be \"drafting\", \"in_season\", or \"complete\";
    */
    'status': string;
    'sport': string;
    'settings': LeagueSettings;
    'seasonType': string;
    'season': string;
    'scoringSettings': ScoreingSettings;
    'rosterPositions': Array<string>;
    'previousLeagueId': string;
    'name': string;
    'leagueId': string;
    'draftId': string;
    'avatar': string;

    static readonly discriminator: string | undefined = undefined;

    static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [
        {
            "name": "totalRosters",
            "baseName": "total_rosters",
            "type": "number",
            "format": ""
        },
        {
            "name": "status",
            "baseName": "status",
            "type": "string",
            "format": ""
        },
        {
            "name": "sport",
            "baseName": "sport",
            "type": "string",
            "format": ""
        },
        {
            "name": "settings",
            "baseName": "settings",
            "type": "LeagueSettings",
            "format": ""
        },
        {
            "name": "seasonType",
            "baseName": "season_type",
            "type": "string",
            "format": ""
        },
        {
            "name": "season",
            "baseName": "season",
            "type": "string",
            "format": ""
        },
        {
            "name": "scoringSettings",
            "baseName": "scoring_settings",
            "type": "ScoreingSettings",
            "format": ""
        },
        {
            "name": "rosterPositions",
            "baseName": "roster_positions",
            "type": "Array<string>",
            "format": ""
        },
        {
            "name": "previousLeagueId",
            "baseName": "previous_league_id",
            "type": "string",
            "format": ""
        },
        {
            "name": "name",
            "baseName": "name",
            "type": "string",
            "format": ""
        },
        {
            "name": "leagueId",
            "baseName": "league_id",
            "type": "string",
            "format": ""
        },
        {
            "name": "draftId",
            "baseName": "draft_id",
            "type": "string",
            "format": ""
        },
        {
            "name": "avatar",
            "baseName": "avatar",
            "type": "string",
            "format": ""
        }    ];

    static getAttributeTypeMap() {
        return League.attributeTypeMap;
    }
    
    public constructor() {
    }
}

