from dagster_pandas import create_dagster_pandas_dataframe_type, PandasColumn

CountryCodeDataFrame = create_dagster_pandas_dataframe_type(
    name="CountryCodeDataFrame",
    columns=[
        PandasColumn.datetime_column(
            "partition_key",
            is_required=True,
        ),
        PandasColumn.string_column(
            "fifa",
        ),
        PandasColumn.string_column(
            "dial",
        ),
        PandasColumn.string_column(
            "iso3166_1_alpha_3",
        ),
        PandasColumn.string_column(
            "marc",
        ),
        PandasColumn.string_column(
            "is_independent",
        ),
        PandasColumn.string_column(
            "iso3166_1_numeric",
        ),
        PandasColumn.string_column(
            "gaul",
        ),
        PandasColumn.string_column(
            "fips",
        ),
        PandasColumn.string_column(
            "wmo",
        ),
        PandasColumn.string_column(
            "iso3166_1_alpha_2",
        ),
        PandasColumn.string_column(
            "itu",
        ),
        PandasColumn.string_column(
            "ioc",
        ),
        PandasColumn.string_column(
            "ds",
        ),
        PandasColumn.string_column(
            "unterm_spanish_formal",
        ),
        PandasColumn.string_column(
            "global_code",
        ),
        PandasColumn.string_column(
            "intermediate_region_code",
        ),
        PandasColumn.string_column(
            "official_name_fr",
        ),
        PandasColumn.string_column(
            "unterm_french_short",
        ),
        PandasColumn.string_column(
            "iso4217_currency_name",
        ),
        PandasColumn.string_column(
            "developed_developing_countries",
        ),
        PandasColumn.string_column(
            "unterm_russian_formal",
        ),
        PandasColumn.string_column(
            "unterm_english_short",
        ),
        PandasColumn.string_column(
            "iso4217_currency_alphabetic_code",
        ),
        PandasColumn.string_column(
            "small_island_developing_states",
        ),
        PandasColumn.string_column(
            "unterm_spanish_short",
        ),
        PandasColumn.string_column(
            "iso4217_currency_numeric_code",
        ),
        PandasColumn.string_column(
            "unterm_chinese_formal",
        ),
        PandasColumn.string_column(
            "unterm_french_formal",
        ),
        PandasColumn.string_column(
            "unterm_russian_short",
        ),
        PandasColumn.string_column(
            "m49",
        ),
        PandasColumn.string_column(
            "sub_region_code",
        ),
        PandasColumn.string_column(
            "region_code",
        ),
        PandasColumn.string_column(
            "official_name_ar",
        ),
        PandasColumn.string_column(
            "iso4217_currency_minor_unit",
        ),
        PandasColumn.string_column(
            "unterm_arabic_formal",
        ),
        PandasColumn.string_column(
            "unterm_chinese_short",
        ),
        PandasColumn.string_column(
            "land_locked_developing_countries",
        ),
        PandasColumn.string_column(
            "intermediate_region_name",
        ),
        PandasColumn.string_column(
            "official_name_es",
        ),
        PandasColumn.string_column(
            "unterm_english_formal",
        ),
        PandasColumn.string_column(
            "official_name_cn",
        ),
        PandasColumn.string_column(
            "official_name_en",
        ),
        PandasColumn.string_column(
            "iso4217_currency_country_name",
        ),
        PandasColumn.string_column(
            "least_developed_countries",
        ),
        PandasColumn.string_column(
            "region_name",
        ),
        PandasColumn.string_column(
            "unterm_arabic_short",
        ),
        PandasColumn.string_column(
            "sub_region_name",
        ),
        PandasColumn.string_column(
            "official_name_ru",
        ),
        PandasColumn.string_column(
            "global_name",
        ),
        PandasColumn.string_column(
            "capital",
        ),
        PandasColumn.string_column(
            "continent",
        ),
        PandasColumn.string_column(
            "tld",
        ),
        PandasColumn.string_column(
            "languages",
        ),
        PandasColumn.string_column(
            "geoname_id",
        ),
        PandasColumn.string_column(
            "cldr_display_name",
        ),
        PandasColumn.string_column(
            "edgar",
        ),
    ],
)
