# Generated by the protocol buffer compiler.  DO NOT EDIT!
# sources: steammessages_clientserver_lbs.proto
# plugin: python-betterproto
# Last updated 09/09/2021

from dataclasses import dataclass
from typing import List

import betterproto


@dataclass(eq=False, repr=False)
class CMsgClientLbsSetScore(betterproto.Message):
    app_id: int = betterproto.uint32_field(1)
    leaderboard_id: int = betterproto.int32_field(2)
    score: int = betterproto.int32_field(3)
    details: bytes = betterproto.bytes_field(4)
    upload_score_method: int = betterproto.int32_field(5)


@dataclass(eq=False, repr=False)
class CMsgClientLbsSetScoreResponse(betterproto.Message):
    eresult: int = betterproto.int32_field(1)
    leaderboard_entry_count: int = betterproto.int32_field(2)
    score_changed: bool = betterproto.bool_field(3)
    global_rank_previous: int = betterproto.int32_field(4)
    global_rank_new: int = betterproto.int32_field(5)


@dataclass(eq=False, repr=False)
class CMsgClientLbsSetUgc(betterproto.Message):
    app_id: int = betterproto.uint32_field(1)
    leaderboard_id: int = betterproto.int32_field(2)
    ugc_id: int = betterproto.fixed64_field(3)


@dataclass(eq=False, repr=False)
class CMsgClientLbsSetUgcResponse(betterproto.Message):
    eresult: int = betterproto.int32_field(1)


@dataclass(eq=False, repr=False)
class CMsgClientLbsFindOrCreateLb(betterproto.Message):
    app_id: int = betterproto.uint32_field(1)
    leaderboard_sort_method: int = betterproto.int32_field(2)
    leaderboard_display_type: int = betterproto.int32_field(3)
    create_if_not_found: bool = betterproto.bool_field(4)
    leaderboard_name: str = betterproto.string_field(5)


@dataclass(eq=False, repr=False)
class CMsgClientLbsFindOrCreateLbResponse(betterproto.Message):
    eresult: int = betterproto.int32_field(1)
    leaderboard_id: int = betterproto.int32_field(2)
    leaderboard_entry_count: int = betterproto.int32_field(3)
    leaderboard_sort_method: int = betterproto.int32_field(4)
    leaderboard_display_type: int = betterproto.int32_field(5)
    leaderboard_name: str = betterproto.string_field(6)


@dataclass(eq=False, repr=False)
class CMsgClientLbsGetLbEntries(betterproto.Message):
    app_id: int = betterproto.int32_field(1)
    leaderboard_id: int = betterproto.int32_field(2)
    range_start: int = betterproto.int32_field(3)
    range_end: int = betterproto.int32_field(4)
    leaderboard_data_request: int = betterproto.int32_field(5)
    steamids: List[int] = betterproto.fixed64_field(6)


@dataclass(eq=False, repr=False)
class CMsgClientLbsGetLbEntriesResponse(betterproto.Message):
    eresult: int = betterproto.int32_field(1)
    leaderboard_entry_count: int = betterproto.int32_field(2)
    entries: List["CMsgClientLbsGetLbEntriesResponseEntry"] = betterproto.message_field(3)


@dataclass(eq=False, repr=False)
class CMsgClientLbsGetLbEntriesResponseEntry(betterproto.Message):
    steam_id_user: int = betterproto.fixed64_field(1)
    global_rank: int = betterproto.int32_field(2)
    score: int = betterproto.int32_field(3)
    details: bytes = betterproto.bytes_field(4)
    ugc_id: int = betterproto.fixed64_field(5)
